// // Copyright 2010-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. // // Licensed under the Apache License, Version 2.0 (the "License"). // You may not use this file except in compliance with the License. // A copy of the License is located at // // http://aws.amazon.com/apache2.0 // // or in the "license" file accompanying this file. This file is distributed // on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either // express or implied. See the License for the specific language governing // permissions and limitations under the License. // #import #import #import NS_ASSUME_NONNULL_BEGIN FOUNDATION_EXPORT NSString *const AWSEC2ErrorDomain; typedef NS_ENUM(NSInteger, AWSEC2ErrorType) { AWSEC2ErrorUnknown, }; typedef NS_ENUM(NSInteger, AWSEC2AcceleratorManufacturer) { AWSEC2AcceleratorManufacturerUnknown, AWSEC2AcceleratorManufacturerNvidia, AWSEC2AcceleratorManufacturerAmd, AWSEC2AcceleratorManufacturerAmazonWebServices, AWSEC2AcceleratorManufacturerXilinx, }; typedef NS_ENUM(NSInteger, AWSEC2AcceleratorName) { AWSEC2AcceleratorNameUnknown, AWSEC2AcceleratorNameA100, AWSEC2AcceleratorNameV100, AWSEC2AcceleratorNameK80, AWSEC2AcceleratorNameT4, AWSEC2AcceleratorNameM60, AWSEC2AcceleratorNameRadeonProV520, AWSEC2AcceleratorNameVu9p, AWSEC2AcceleratorNameInferentia, AWSEC2AcceleratorNameK520, }; typedef NS_ENUM(NSInteger, AWSEC2AcceleratorType) { AWSEC2AcceleratorTypeUnknown, AWSEC2AcceleratorTypeGpu, AWSEC2AcceleratorTypeFpga, AWSEC2AcceleratorTypeInference, }; typedef NS_ENUM(NSInteger, AWSEC2AccountAttributeName) { AWSEC2AccountAttributeNameUnknown, AWSEC2AccountAttributeNameSupportedPlatforms, AWSEC2AccountAttributeNameDefaultVPC, }; typedef NS_ENUM(NSInteger, AWSEC2ActivityStatus) { AWSEC2ActivityStatusUnknown, AWSEC2ActivityStatusError, AWSEC2ActivityStatusPendingFulfillment, AWSEC2ActivityStatusPendingTermination, AWSEC2ActivityStatusFulfilled, }; typedef NS_ENUM(NSInteger, AWSEC2AddressAttributeName) { AWSEC2AddressAttributeNameUnknown, AWSEC2AddressAttributeNameDomainName, }; typedef NS_ENUM(NSInteger, AWSEC2AddressFamily) { AWSEC2AddressFamilyUnknown, AWSEC2AddressFamilyIpv4, AWSEC2AddressFamilyIpv6, }; typedef NS_ENUM(NSInteger, AWSEC2AddressTransferStatus) { AWSEC2AddressTransferStatusUnknown, AWSEC2AddressTransferStatusPending, AWSEC2AddressTransferStatusDisabled, AWSEC2AddressTransferStatusAccepted, }; typedef NS_ENUM(NSInteger, AWSEC2Affinity) { AWSEC2AffinityUnknown, AWSEC2AffinityDefault, AWSEC2AffinityHost, }; typedef NS_ENUM(NSInteger, AWSEC2AllocationState) { AWSEC2AllocationStateUnknown, AWSEC2AllocationStateAvailable, AWSEC2AllocationStateUnderAssessment, AWSEC2AllocationStatePermanentFailure, AWSEC2AllocationStateReleased, AWSEC2AllocationStateReleasedPermanentFailure, AWSEC2AllocationStatePending, }; typedef NS_ENUM(NSInteger, AWSEC2AllocationStrategy) { AWSEC2AllocationStrategyUnknown, AWSEC2AllocationStrategyLowestPrice, AWSEC2AllocationStrategyDiversified, AWSEC2AllocationStrategyCapacityOptimized, AWSEC2AllocationStrategyCapacityOptimizedPrioritized, AWSEC2AllocationStrategyPriceCapacityOptimized, }; typedef NS_ENUM(NSInteger, AWSEC2AllocationType) { AWSEC2AllocationTypeUnknown, AWSEC2AllocationTypeUsed, }; typedef NS_ENUM(NSInteger, AWSEC2AllowsMultipleInstanceTypes) { AWSEC2AllowsMultipleInstanceTypesUnknown, AWSEC2AllowsMultipleInstanceTypesOn, AWSEC2AllowsMultipleInstanceTypesOff, }; typedef NS_ENUM(NSInteger, AWSEC2AmdSevSnpSpecification) { AWSEC2AmdSevSnpSpecificationUnknown, AWSEC2AmdSevSnpSpecificationEnabled, AWSEC2AmdSevSnpSpecificationDisabled, }; typedef NS_ENUM(NSInteger, AWSEC2AnalysisStatus) { AWSEC2AnalysisStatusUnknown, AWSEC2AnalysisStatusRunning, AWSEC2AnalysisStatusSucceeded, AWSEC2AnalysisStatusFailed, }; typedef NS_ENUM(NSInteger, AWSEC2ApplianceModeSupportValue) { AWSEC2ApplianceModeSupportValueUnknown, AWSEC2ApplianceModeSupportValueEnable, AWSEC2ApplianceModeSupportValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2ArchitectureType) { AWSEC2ArchitectureTypeUnknown, AWSEC2ArchitectureTypeI386, AWSEC2ArchitectureTypeX86_64, AWSEC2ArchitectureTypeArm64, AWSEC2ArchitectureTypeX8664Mac, AWSEC2ArchitectureTypeArm64Mac, }; typedef NS_ENUM(NSInteger, AWSEC2ArchitectureValues) { AWSEC2ArchitectureValuesUnknown, AWSEC2ArchitectureValuesI386, AWSEC2ArchitectureValuesX86_64, AWSEC2ArchitectureValuesArm64, AWSEC2ArchitectureValuesX8664Mac, AWSEC2ArchitectureValuesArm64Mac, }; typedef NS_ENUM(NSInteger, AWSEC2AssociatedNetworkType) { AWSEC2AssociatedNetworkTypeUnknown, AWSEC2AssociatedNetworkTypeVPC, }; typedef NS_ENUM(NSInteger, AWSEC2AssociationStatusCode) { AWSEC2AssociationStatusCodeUnknown, AWSEC2AssociationStatusCodeAssociating, AWSEC2AssociationStatusCodeAssociated, AWSEC2AssociationStatusCodeAssociationFailed, AWSEC2AssociationStatusCodeDisassociating, AWSEC2AssociationStatusCodeDisassociated, }; typedef NS_ENUM(NSInteger, AWSEC2AttachmentStatus) { AWSEC2AttachmentStatusUnknown, AWSEC2AttachmentStatusAttaching, AWSEC2AttachmentStatusAttached, AWSEC2AttachmentStatusDetaching, AWSEC2AttachmentStatusDetached, }; typedef NS_ENUM(NSInteger, AWSEC2AutoAcceptSharedAssociationsValue) { AWSEC2AutoAcceptSharedAssociationsValueUnknown, AWSEC2AutoAcceptSharedAssociationsValueEnable, AWSEC2AutoAcceptSharedAssociationsValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2AutoAcceptSharedAttachmentsValue) { AWSEC2AutoAcceptSharedAttachmentsValueUnknown, AWSEC2AutoAcceptSharedAttachmentsValueEnable, AWSEC2AutoAcceptSharedAttachmentsValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2AutoPlacement) { AWSEC2AutoPlacementUnknown, AWSEC2AutoPlacementOn, AWSEC2AutoPlacementOff, }; typedef NS_ENUM(NSInteger, AWSEC2AvailabilityZoneOptInStatus) { AWSEC2AvailabilityZoneOptInStatusUnknown, AWSEC2AvailabilityZoneOptInStatusOptInNotRequired, AWSEC2AvailabilityZoneOptInStatusOptedIn, AWSEC2AvailabilityZoneOptInStatusNotOptedIn, }; typedef NS_ENUM(NSInteger, AWSEC2AvailabilityZoneState) { AWSEC2AvailabilityZoneStateUnknown, AWSEC2AvailabilityZoneStateAvailable, AWSEC2AvailabilityZoneStateInformation, AWSEC2AvailabilityZoneStateImpaired, AWSEC2AvailabilityZoneStateUnavailable, }; typedef NS_ENUM(NSInteger, AWSEC2BareMetal) { AWSEC2BareMetalUnknown, AWSEC2BareMetalIncluded, AWSEC2BareMetalRequired, AWSEC2BareMetalExcluded, }; typedef NS_ENUM(NSInteger, AWSEC2BatchState) { AWSEC2BatchStateUnknown, AWSEC2BatchStateSubmitted, AWSEC2BatchStateActive, AWSEC2BatchStateCancelled, AWSEC2BatchStateFailed, AWSEC2BatchStateCancelledRunning, AWSEC2BatchStateCancelledTerminating, AWSEC2BatchStateModifying, }; typedef NS_ENUM(NSInteger, AWSEC2BgpStatus) { AWSEC2BgpStatusUnknown, AWSEC2BgpStatusUp, AWSEC2BgpStatusDown, }; typedef NS_ENUM(NSInteger, AWSEC2BootModeType) { AWSEC2BootModeTypeUnknown, AWSEC2BootModeTypeLegacyBios, AWSEC2BootModeTypeUefi, }; typedef NS_ENUM(NSInteger, AWSEC2BootModeValues) { AWSEC2BootModeValuesUnknown, AWSEC2BootModeValuesLegacyBios, AWSEC2BootModeValuesUefi, AWSEC2BootModeValuesUefiPreferred, }; typedef NS_ENUM(NSInteger, AWSEC2BundleTaskState) { AWSEC2BundleTaskStateUnknown, AWSEC2BundleTaskStatePending, AWSEC2BundleTaskStateWaitingForShutdown, AWSEC2BundleTaskStateBundling, AWSEC2BundleTaskStateStoring, AWSEC2BundleTaskStateCancelling, AWSEC2BundleTaskStateComplete, AWSEC2BundleTaskStateFailed, }; typedef NS_ENUM(NSInteger, AWSEC2BurstablePerformance) { AWSEC2BurstablePerformanceUnknown, AWSEC2BurstablePerformanceIncluded, AWSEC2BurstablePerformanceRequired, AWSEC2BurstablePerformanceExcluded, }; typedef NS_ENUM(NSInteger, AWSEC2ByoipCidrState) { AWSEC2ByoipCidrStateUnknown, AWSEC2ByoipCidrStateAdvertised, AWSEC2ByoipCidrStateDeprovisioned, AWSEC2ByoipCidrStateFailedDeprovision, AWSEC2ByoipCidrStateFailedProvision, AWSEC2ByoipCidrStatePendingDeprovision, AWSEC2ByoipCidrStatePendingProvision, AWSEC2ByoipCidrStateProvisioned, AWSEC2ByoipCidrStateProvisionedNotPubliclyAdvertisable, }; typedef NS_ENUM(NSInteger, AWSEC2CancelBatchErrorCode) { AWSEC2CancelBatchErrorCodeUnknown, AWSEC2CancelBatchErrorCodeFleetRequestIdDoesNotExist, AWSEC2CancelBatchErrorCodeFleetRequestIdMalformed, AWSEC2CancelBatchErrorCodeFleetRequestNotInCancellableState, AWSEC2CancelBatchErrorCodeUnexpectedError, }; typedef NS_ENUM(NSInteger, AWSEC2CancelSpotInstanceRequestState) { AWSEC2CancelSpotInstanceRequestStateUnknown, AWSEC2CancelSpotInstanceRequestStateActive, AWSEC2CancelSpotInstanceRequestStateOpen, AWSEC2CancelSpotInstanceRequestStateClosed, AWSEC2CancelSpotInstanceRequestStateCancelled, AWSEC2CancelSpotInstanceRequestStateCompleted, }; typedef NS_ENUM(NSInteger, AWSEC2CapacityReservationFleetState) { AWSEC2CapacityReservationFleetStateUnknown, AWSEC2CapacityReservationFleetStateSubmitted, AWSEC2CapacityReservationFleetStateModifying, AWSEC2CapacityReservationFleetStateActive, AWSEC2CapacityReservationFleetStatePartiallyFulfilled, AWSEC2CapacityReservationFleetStateExpiring, AWSEC2CapacityReservationFleetStateExpired, AWSEC2CapacityReservationFleetStateCancelling, AWSEC2CapacityReservationFleetStateCancelled, AWSEC2CapacityReservationFleetStateFailed, }; typedef NS_ENUM(NSInteger, AWSEC2CapacityReservationInstancePlatform) { AWSEC2CapacityReservationInstancePlatformUnknown, AWSEC2CapacityReservationInstancePlatformLinuxUNIX, AWSEC2CapacityReservationInstancePlatformRedHatEnterpriseLinux, AWSEC2CapacityReservationInstancePlatformSUSELinux, AWSEC2CapacityReservationInstancePlatformWindows, AWSEC2CapacityReservationInstancePlatformWindowsWithSQLServer, AWSEC2CapacityReservationInstancePlatformWindowsWithSQLServerEnterprise, AWSEC2CapacityReservationInstancePlatformWindowsWithSQLServerStandard, AWSEC2CapacityReservationInstancePlatformWindowsWithSQLServerWeb, AWSEC2CapacityReservationInstancePlatformLinuxWithSQLServerStandard, AWSEC2CapacityReservationInstancePlatformLinuxWithSQLServerWeb, AWSEC2CapacityReservationInstancePlatformLinuxWithSQLServerEnterprise, AWSEC2CapacityReservationInstancePlatformRHELWithSQLServerStandard, AWSEC2CapacityReservationInstancePlatformRHELWithSQLServerEnterprise, AWSEC2CapacityReservationInstancePlatformRHELWithSQLServerWeb, AWSEC2CapacityReservationInstancePlatformRHELWithHA, AWSEC2CapacityReservationInstancePlatformRHELWithHAAndSQLServerStandard, AWSEC2CapacityReservationInstancePlatformRHELWithHAAndSQLServerEnterprise, }; typedef NS_ENUM(NSInteger, AWSEC2CapacityReservationPreference) { AWSEC2CapacityReservationPreferenceUnknown, AWSEC2CapacityReservationPreferenceOpen, AWSEC2CapacityReservationPreferenceNone, }; typedef NS_ENUM(NSInteger, AWSEC2CapacityReservationState) { AWSEC2CapacityReservationStateUnknown, AWSEC2CapacityReservationStateActive, AWSEC2CapacityReservationStateExpired, AWSEC2CapacityReservationStateCancelled, AWSEC2CapacityReservationStatePending, AWSEC2CapacityReservationStateFailed, }; typedef NS_ENUM(NSInteger, AWSEC2CapacityReservationTenancy) { AWSEC2CapacityReservationTenancyUnknown, AWSEC2CapacityReservationTenancyDefault, AWSEC2CapacityReservationTenancyDedicated, }; typedef NS_ENUM(NSInteger, AWSEC2CarrierGatewayState) { AWSEC2CarrierGatewayStateUnknown, AWSEC2CarrierGatewayStatePending, AWSEC2CarrierGatewayStateAvailable, AWSEC2CarrierGatewayStateDeleting, AWSEC2CarrierGatewayStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2ClientCertificateRevocationListStatusCode) { AWSEC2ClientCertificateRevocationListStatusCodeUnknown, AWSEC2ClientCertificateRevocationListStatusCodePending, AWSEC2ClientCertificateRevocationListStatusCodeActive, }; typedef NS_ENUM(NSInteger, AWSEC2ClientVpnAuthenticationType) { AWSEC2ClientVpnAuthenticationTypeUnknown, AWSEC2ClientVpnAuthenticationTypeCertificateAuthentication, AWSEC2ClientVpnAuthenticationTypeDirectoryServiceAuthentication, AWSEC2ClientVpnAuthenticationTypeFederatedAuthentication, }; typedef NS_ENUM(NSInteger, AWSEC2ClientVpnAuthorizationRuleStatusCode) { AWSEC2ClientVpnAuthorizationRuleStatusCodeUnknown, AWSEC2ClientVpnAuthorizationRuleStatusCodeAuthorizing, AWSEC2ClientVpnAuthorizationRuleStatusCodeActive, AWSEC2ClientVpnAuthorizationRuleStatusCodeFailed, AWSEC2ClientVpnAuthorizationRuleStatusCodeRevoking, }; typedef NS_ENUM(NSInteger, AWSEC2ClientVpnConnectionStatusCode) { AWSEC2ClientVpnConnectionStatusCodeUnknown, AWSEC2ClientVpnConnectionStatusCodeActive, AWSEC2ClientVpnConnectionStatusCodeFailedToTerminate, AWSEC2ClientVpnConnectionStatusCodeTerminating, AWSEC2ClientVpnConnectionStatusCodeTerminated, }; typedef NS_ENUM(NSInteger, AWSEC2ClientVpnEndpointAttributeStatusCode) { AWSEC2ClientVpnEndpointAttributeStatusCodeUnknown, AWSEC2ClientVpnEndpointAttributeStatusCodeApplying, AWSEC2ClientVpnEndpointAttributeStatusCodeApplied, }; typedef NS_ENUM(NSInteger, AWSEC2ClientVpnEndpointStatusCode) { AWSEC2ClientVpnEndpointStatusCodeUnknown, AWSEC2ClientVpnEndpointStatusCodePendingAssociate, AWSEC2ClientVpnEndpointStatusCodeAvailable, AWSEC2ClientVpnEndpointStatusCodeDeleting, AWSEC2ClientVpnEndpointStatusCodeDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2ClientVpnRouteStatusCode) { AWSEC2ClientVpnRouteStatusCodeUnknown, AWSEC2ClientVpnRouteStatusCodeCreating, AWSEC2ClientVpnRouteStatusCodeActive, AWSEC2ClientVpnRouteStatusCodeFailed, AWSEC2ClientVpnRouteStatusCodeDeleting, }; typedef NS_ENUM(NSInteger, AWSEC2ConnectionNotificationState) { AWSEC2ConnectionNotificationStateUnknown, AWSEC2ConnectionNotificationStateEnabled, AWSEC2ConnectionNotificationStateDisabled, }; typedef NS_ENUM(NSInteger, AWSEC2ConnectionNotificationType) { AWSEC2ConnectionNotificationTypeUnknown, AWSEC2ConnectionNotificationTypeTopic, }; typedef NS_ENUM(NSInteger, AWSEC2ConnectivityType) { AWSEC2ConnectivityTypeUnknown, AWSEC2ConnectivityTypePrivate, AWSEC2ConnectivityTypePublic, }; typedef NS_ENUM(NSInteger, AWSEC2ContainerFormat) { AWSEC2ContainerFormatUnknown, AWSEC2ContainerFormatOVA, }; typedef NS_ENUM(NSInteger, AWSEC2ConversionTaskState) { AWSEC2ConversionTaskStateUnknown, AWSEC2ConversionTaskStateActive, AWSEC2ConversionTaskStateCancelling, AWSEC2ConversionTaskStateCancelled, AWSEC2ConversionTaskStateCompleted, }; typedef NS_ENUM(NSInteger, AWSEC2ReplicateTagsFromSource) { AWSEC2ReplicateTagsFromSourceUnknown, AWSEC2ReplicateTagsFromSourceVolume, }; typedef NS_ENUM(NSInteger, AWSEC2CpuManufacturer) { AWSEC2CpuManufacturerUnknown, AWSEC2CpuManufacturerIntel, AWSEC2CpuManufacturerAmd, AWSEC2CpuManufacturerAmazonWebServices, }; typedef NS_ENUM(NSInteger, AWSEC2CurrencyCodeValues) { AWSEC2CurrencyCodeValuesUnknown, AWSEC2CurrencyCodeValuesUSD, }; typedef NS_ENUM(NSInteger, AWSEC2DatafeedSubscriptionState) { AWSEC2DatafeedSubscriptionStateUnknown, AWSEC2DatafeedSubscriptionStateActive, AWSEC2DatafeedSubscriptionStateInactive, }; typedef NS_ENUM(NSInteger, AWSEC2DefaultRouteTableAssociationValue) { AWSEC2DefaultRouteTableAssociationValueUnknown, AWSEC2DefaultRouteTableAssociationValueEnable, AWSEC2DefaultRouteTableAssociationValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2DefaultRouteTablePropagationValue) { AWSEC2DefaultRouteTablePropagationValueUnknown, AWSEC2DefaultRouteTablePropagationValueEnable, AWSEC2DefaultRouteTablePropagationValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2DefaultTargetCapacityType) { AWSEC2DefaultTargetCapacityTypeUnknown, AWSEC2DefaultTargetCapacityTypeSpot, AWSEC2DefaultTargetCapacityTypeOnDemand, }; typedef NS_ENUM(NSInteger, AWSEC2DeleteFleetErrorCode) { AWSEC2DeleteFleetErrorCodeUnknown, AWSEC2DeleteFleetErrorCodeFleetIdDoesNotExist, AWSEC2DeleteFleetErrorCodeFleetIdMalformed, AWSEC2DeleteFleetErrorCodeFleetNotInDeletableState, AWSEC2DeleteFleetErrorCodeUnexpectedError, }; typedef NS_ENUM(NSInteger, AWSEC2DeleteQueuedReservedInstancesErrorCode) { AWSEC2DeleteQueuedReservedInstancesErrorCodeUnknown, AWSEC2DeleteQueuedReservedInstancesErrorCodeReservedInstancesIdInvalid, AWSEC2DeleteQueuedReservedInstancesErrorCodeReservedInstancesNotInQueuedState, AWSEC2DeleteQueuedReservedInstancesErrorCodeUnexpectedError, }; typedef NS_ENUM(NSInteger, AWSEC2DestinationFileFormat) { AWSEC2DestinationFileFormatUnknown, AWSEC2DestinationFileFormatPlainText, AWSEC2DestinationFileFormatParquet, }; typedef NS_ENUM(NSInteger, AWSEC2DeviceTrustProviderType) { AWSEC2DeviceTrustProviderTypeUnknown, AWSEC2DeviceTrustProviderTypeJamf, AWSEC2DeviceTrustProviderTypeCrowdstrike, }; typedef NS_ENUM(NSInteger, AWSEC2DeviceType) { AWSEC2DeviceTypeUnknown, AWSEC2DeviceTypeEBS, AWSEC2DeviceTypeInstanceStore, }; typedef NS_ENUM(NSInteger, AWSEC2DiskImageFormat) { AWSEC2DiskImageFormatUnknown, AWSEC2DiskImageFormatVMDK, AWSEC2DiskImageFormatRAW, AWSEC2DiskImageFormatVHD, }; typedef NS_ENUM(NSInteger, AWSEC2DiskType) { AWSEC2DiskTypeUnknown, AWSEC2DiskTypeHdd, AWSEC2DiskTypeSsd, }; typedef NS_ENUM(NSInteger, AWSEC2DnsNameState) { AWSEC2DnsNameStateUnknown, AWSEC2DnsNameStatePendingVerification, AWSEC2DnsNameStateVerified, AWSEC2DnsNameStateFailed, }; typedef NS_ENUM(NSInteger, AWSEC2DnsRecordIpType) { AWSEC2DnsRecordIpTypeUnknown, AWSEC2DnsRecordIpTypeIpv4, AWSEC2DnsRecordIpTypeDualstack, AWSEC2DnsRecordIpTypeIpv6, AWSEC2DnsRecordIpTypeServiceDefined, }; typedef NS_ENUM(NSInteger, AWSEC2DnsSupportValue) { AWSEC2DnsSupportValueUnknown, AWSEC2DnsSupportValueEnable, AWSEC2DnsSupportValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2DomainType) { AWSEC2DomainTypeUnknown, AWSEC2DomainTypeVPC, AWSEC2DomainTypeStandard, }; typedef NS_ENUM(NSInteger, AWSEC2DynamicRoutingValue) { AWSEC2DynamicRoutingValueUnknown, AWSEC2DynamicRoutingValueEnable, AWSEC2DynamicRoutingValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2EbsEncryptionSupport) { AWSEC2EbsEncryptionSupportUnknown, AWSEC2EbsEncryptionSupportUnsupported, AWSEC2EbsEncryptionSupportSupported, }; typedef NS_ENUM(NSInteger, AWSEC2EbsNvmeSupport) { AWSEC2EbsNvmeSupportUnknown, AWSEC2EbsNvmeSupportUnsupported, AWSEC2EbsNvmeSupportSupported, AWSEC2EbsNvmeSupportRequired, }; typedef NS_ENUM(NSInteger, AWSEC2EbsOptimizedSupport) { AWSEC2EbsOptimizedSupportUnknown, AWSEC2EbsOptimizedSupportUnsupported, AWSEC2EbsOptimizedSupportSupported, AWSEC2EbsOptimizedSupportDefault, }; typedef NS_ENUM(NSInteger, AWSEC2Ec2InstanceConnectEndpointState) { AWSEC2Ec2InstanceConnectEndpointStateUnknown, AWSEC2Ec2InstanceConnectEndpointStateCreateInProgress, AWSEC2Ec2InstanceConnectEndpointStateCreateComplete, AWSEC2Ec2InstanceConnectEndpointStateCreateFailed, AWSEC2Ec2InstanceConnectEndpointStateDeleteInProgress, AWSEC2Ec2InstanceConnectEndpointStateDeleteComplete, AWSEC2Ec2InstanceConnectEndpointStateDeleteFailed, }; typedef NS_ENUM(NSInteger, AWSEC2ElasticGpuState) { AWSEC2ElasticGpuStateUnknown, AWSEC2ElasticGpuStateAttached, }; typedef NS_ENUM(NSInteger, AWSEC2ElasticGpuStatus) { AWSEC2ElasticGpuStatusUnknown, AWSEC2ElasticGpuStatusOK, AWSEC2ElasticGpuStatusImpaired, }; typedef NS_ENUM(NSInteger, AWSEC2EnaSupport) { AWSEC2EnaSupportUnknown, AWSEC2EnaSupportUnsupported, AWSEC2EnaSupportSupported, AWSEC2EnaSupportRequired, }; typedef NS_ENUM(NSInteger, AWSEC2EndDateType) { AWSEC2EndDateTypeUnknown, AWSEC2EndDateTypeUnlimited, AWSEC2EndDateTypeLimited, }; typedef NS_ENUM(NSInteger, AWSEC2EphemeralNvmeSupport) { AWSEC2EphemeralNvmeSupportUnknown, AWSEC2EphemeralNvmeSupportUnsupported, AWSEC2EphemeralNvmeSupportSupported, AWSEC2EphemeralNvmeSupportRequired, }; typedef NS_ENUM(NSInteger, AWSEC2EventCode) { AWSEC2EventCodeUnknown, AWSEC2EventCodeInstanceReboot, AWSEC2EventCodeSystemReboot, AWSEC2EventCodeSystemMaintenance, AWSEC2EventCodeInstanceRetirement, AWSEC2EventCodeInstanceStop, }; typedef NS_ENUM(NSInteger, AWSEC2EventType) { AWSEC2EventTypeUnknown, AWSEC2EventTypeInstanceChange, AWSEC2EventTypeFleetRequestChange, AWSEC2EventTypeError, AWSEC2EventTypeInformation, }; typedef NS_ENUM(NSInteger, AWSEC2ExcessCapacityTerminationPolicy) { AWSEC2ExcessCapacityTerminationPolicyUnknown, AWSEC2ExcessCapacityTerminationPolicyNoTermination, AWSEC2ExcessCapacityTerminationPolicyDefault, }; typedef NS_ENUM(NSInteger, AWSEC2ExportEnvironment) { AWSEC2ExportEnvironmentUnknown, AWSEC2ExportEnvironmentCitrix, AWSEC2ExportEnvironmentVMware, AWSEC2ExportEnvironmentMicrosoft, }; typedef NS_ENUM(NSInteger, AWSEC2ExportTaskState) { AWSEC2ExportTaskStateUnknown, AWSEC2ExportTaskStateActive, AWSEC2ExportTaskStateCancelling, AWSEC2ExportTaskStateCancelled, AWSEC2ExportTaskStateCompleted, }; typedef NS_ENUM(NSInteger, AWSEC2FastLaunchResourceType) { AWSEC2FastLaunchResourceTypeUnknown, AWSEC2FastLaunchResourceTypeSnapshot, }; typedef NS_ENUM(NSInteger, AWSEC2FastLaunchStateCode) { AWSEC2FastLaunchStateCodeUnknown, AWSEC2FastLaunchStateCodeEnabling, AWSEC2FastLaunchStateCodeEnablingFailed, AWSEC2FastLaunchStateCodeEnabled, AWSEC2FastLaunchStateCodeEnabledFailed, AWSEC2FastLaunchStateCodeDisabling, AWSEC2FastLaunchStateCodeDisablingFailed, }; typedef NS_ENUM(NSInteger, AWSEC2FastSnapshotRestoreStateCode) { AWSEC2FastSnapshotRestoreStateCodeUnknown, AWSEC2FastSnapshotRestoreStateCodeEnabling, AWSEC2FastSnapshotRestoreStateCodeOptimizing, AWSEC2FastSnapshotRestoreStateCodeEnabled, AWSEC2FastSnapshotRestoreStateCodeDisabling, AWSEC2FastSnapshotRestoreStateCodeDisabled, }; typedef NS_ENUM(NSInteger, AWSEC2FindingsFound) { AWSEC2FindingsFoundUnknown, AWSEC2FindingsFoundTrue, AWSEC2FindingsFoundFalse, }; typedef NS_ENUM(NSInteger, AWSEC2FleetActivityStatus) { AWSEC2FleetActivityStatusUnknown, AWSEC2FleetActivityStatusError, AWSEC2FleetActivityStatusPendingFulfillment, AWSEC2FleetActivityStatusPendingTermination, AWSEC2FleetActivityStatusFulfilled, }; typedef NS_ENUM(NSInteger, AWSEC2FleetCapacityReservationTenancy) { AWSEC2FleetCapacityReservationTenancyUnknown, AWSEC2FleetCapacityReservationTenancyDefault, }; typedef NS_ENUM(NSInteger, AWSEC2FleetCapacityReservationUsageStrategy) { AWSEC2FleetCapacityReservationUsageStrategyUnknown, AWSEC2FleetCapacityReservationUsageStrategyUseCapacityReservationsFirst, }; typedef NS_ENUM(NSInteger, AWSEC2FleetEventType) { AWSEC2FleetEventTypeUnknown, AWSEC2FleetEventTypeInstanceChange, AWSEC2FleetEventTypeFleetChange, AWSEC2FleetEventTypeServiceError, }; typedef NS_ENUM(NSInteger, AWSEC2FleetExcessCapacityTerminationPolicy) { AWSEC2FleetExcessCapacityTerminationPolicyUnknown, AWSEC2FleetExcessCapacityTerminationPolicyNoTermination, AWSEC2FleetExcessCapacityTerminationPolicyTermination, }; typedef NS_ENUM(NSInteger, AWSEC2FleetInstanceMatchCriteria) { AWSEC2FleetInstanceMatchCriteriaUnknown, AWSEC2FleetInstanceMatchCriteriaOpen, }; typedef NS_ENUM(NSInteger, AWSEC2FleetOnDemandAllocationStrategy) { AWSEC2FleetOnDemandAllocationStrategyUnknown, AWSEC2FleetOnDemandAllocationStrategyLowestPrice, AWSEC2FleetOnDemandAllocationStrategyPrioritized, }; typedef NS_ENUM(NSInteger, AWSEC2FleetReplacementStrategy) { AWSEC2FleetReplacementStrategyUnknown, AWSEC2FleetReplacementStrategyLaunch, AWSEC2FleetReplacementStrategyLaunchBeforeTerminate, }; typedef NS_ENUM(NSInteger, AWSEC2FleetStateCode) { AWSEC2FleetStateCodeUnknown, AWSEC2FleetStateCodeSubmitted, AWSEC2FleetStateCodeActive, AWSEC2FleetStateCodeDeleted, AWSEC2FleetStateCodeFailed, AWSEC2FleetStateCodeDeletedRunning, AWSEC2FleetStateCodeDeletedTerminating, AWSEC2FleetStateCodeModifying, }; typedef NS_ENUM(NSInteger, AWSEC2FleetType) { AWSEC2FleetTypeUnknown, AWSEC2FleetTypeRequest, AWSEC2FleetTypeMaintain, AWSEC2FleetTypeInstant, }; typedef NS_ENUM(NSInteger, AWSEC2FlowLogsResourceType) { AWSEC2FlowLogsResourceTypeUnknown, AWSEC2FlowLogsResourceTypeVpc, AWSEC2FlowLogsResourceTypeSubnet, AWSEC2FlowLogsResourceTypeNetworkInterface, AWSEC2FlowLogsResourceTypeTransitGateway, AWSEC2FlowLogsResourceTypeTransitGatewayAttachment, }; typedef NS_ENUM(NSInteger, AWSEC2FpgaImageAttributeName) { AWSEC2FpgaImageAttributeNameUnknown, AWSEC2FpgaImageAttributeNameDescription, AWSEC2FpgaImageAttributeNameName, AWSEC2FpgaImageAttributeNameLoadPermission, AWSEC2FpgaImageAttributeNameProductCodes, }; typedef NS_ENUM(NSInteger, AWSEC2FpgaImageStateCode) { AWSEC2FpgaImageStateCodeUnknown, AWSEC2FpgaImageStateCodePending, AWSEC2FpgaImageStateCodeFailed, AWSEC2FpgaImageStateCodeAvailable, AWSEC2FpgaImageStateCodeUnavailable, }; typedef NS_ENUM(NSInteger, AWSEC2GatewayAssociationState) { AWSEC2GatewayAssociationStateUnknown, AWSEC2GatewayAssociationStateAssociated, AWSEC2GatewayAssociationStateNotAssociated, AWSEC2GatewayAssociationStateAssociating, AWSEC2GatewayAssociationStateDisassociating, }; typedef NS_ENUM(NSInteger, AWSEC2GatewayType) { AWSEC2GatewayTypeUnknown, AWSEC2GatewayTypeIpsec1, }; typedef NS_ENUM(NSInteger, AWSEC2HostMaintenance) { AWSEC2HostMaintenanceUnknown, AWSEC2HostMaintenanceOn, AWSEC2HostMaintenanceOff, }; typedef NS_ENUM(NSInteger, AWSEC2HostRecovery) { AWSEC2HostRecoveryUnknown, AWSEC2HostRecoveryOn, AWSEC2HostRecoveryOff, }; typedef NS_ENUM(NSInteger, AWSEC2HostTenancy) { AWSEC2HostTenancyUnknown, AWSEC2HostTenancyDedicated, AWSEC2HostTenancyHost, }; typedef NS_ENUM(NSInteger, AWSEC2HostnameType) { AWSEC2HostnameTypeUnknown, AWSEC2HostnameTypeIpName, AWSEC2HostnameTypeResourceName, }; typedef NS_ENUM(NSInteger, AWSEC2HttpTokensState) { AWSEC2HttpTokensStateUnknown, AWSEC2HttpTokensStateOptional, AWSEC2HttpTokensStateRequired, }; typedef NS_ENUM(NSInteger, AWSEC2HypervisorType) { AWSEC2HypervisorTypeUnknown, AWSEC2HypervisorTypeOvm, AWSEC2HypervisorTypeXen, }; typedef NS_ENUM(NSInteger, AWSEC2IamInstanceProfileAssociationState) { AWSEC2IamInstanceProfileAssociationStateUnknown, AWSEC2IamInstanceProfileAssociationStateAssociating, AWSEC2IamInstanceProfileAssociationStateAssociated, AWSEC2IamInstanceProfileAssociationStateDisassociating, AWSEC2IamInstanceProfileAssociationStateDisassociated, }; typedef NS_ENUM(NSInteger, AWSEC2Igmpv2SupportValue) { AWSEC2Igmpv2SupportValueUnknown, AWSEC2Igmpv2SupportValueEnable, AWSEC2Igmpv2SupportValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2ImageAttributeName) { AWSEC2ImageAttributeNameUnknown, AWSEC2ImageAttributeNameDescription, AWSEC2ImageAttributeNameKernel, AWSEC2ImageAttributeNameRAMDisk, AWSEC2ImageAttributeNameLaunchPermission, AWSEC2ImageAttributeNameProductCodes, AWSEC2ImageAttributeNameBlockDeviceMapping, AWSEC2ImageAttributeNameSriovNetSupport, AWSEC2ImageAttributeNameBootMode, AWSEC2ImageAttributeNameTpmSupport, AWSEC2ImageAttributeNameUefiData, AWSEC2ImageAttributeNameLastLaunchedTime, AWSEC2ImageAttributeNameImdsSupport, }; typedef NS_ENUM(NSInteger, AWSEC2ImageState) { AWSEC2ImageStateUnknown, AWSEC2ImageStatePending, AWSEC2ImageStateAvailable, AWSEC2ImageStateInvalid, AWSEC2ImageStateDeregistered, AWSEC2ImageStateTransient, AWSEC2ImageStateFailed, AWSEC2ImageStateError, }; typedef NS_ENUM(NSInteger, AWSEC2ImageTypeValues) { AWSEC2ImageTypeValuesUnknown, AWSEC2ImageTypeValuesMachine, AWSEC2ImageTypeValuesKernel, AWSEC2ImageTypeValuesRAMDisk, }; typedef NS_ENUM(NSInteger, AWSEC2ImdsSupportValues) { AWSEC2ImdsSupportValuesUnknown, AWSEC2ImdsSupportValuesV20, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceAttributeName) { AWSEC2InstanceAttributeNameUnknown, AWSEC2InstanceAttributeNameInstanceType, AWSEC2InstanceAttributeNameKernel, AWSEC2InstanceAttributeNameRAMDisk, AWSEC2InstanceAttributeNameUserData, AWSEC2InstanceAttributeNameDisableApiTermination, AWSEC2InstanceAttributeNameInstanceInitiatedShutdownBehavior, AWSEC2InstanceAttributeNameRootDeviceName, AWSEC2InstanceAttributeNameBlockDeviceMapping, AWSEC2InstanceAttributeNameProductCodes, AWSEC2InstanceAttributeNameSourceDestCheck, AWSEC2InstanceAttributeNameGroupSet, AWSEC2InstanceAttributeNameEBSOptimized, AWSEC2InstanceAttributeNameSriovNetSupport, AWSEC2InstanceAttributeNameEnaSupport, AWSEC2InstanceAttributeNameEnclaveOptions, AWSEC2InstanceAttributeNameDisableApiStop, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceAutoRecoveryState) { AWSEC2InstanceAutoRecoveryStateUnknown, AWSEC2InstanceAutoRecoveryStateDisabled, AWSEC2InstanceAutoRecoveryStateDefault, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceBootModeValues) { AWSEC2InstanceBootModeValuesUnknown, AWSEC2InstanceBootModeValuesLegacyBios, AWSEC2InstanceBootModeValuesUefi, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceEventWindowState) { AWSEC2InstanceEventWindowStateUnknown, AWSEC2InstanceEventWindowStateCreating, AWSEC2InstanceEventWindowStateDeleting, AWSEC2InstanceEventWindowStateActive, AWSEC2InstanceEventWindowStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceGeneration) { AWSEC2InstanceGenerationUnknown, AWSEC2InstanceGenerationCurrent, AWSEC2InstanceGenerationPrevious, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceHealthStatus) { AWSEC2InstanceHealthStatusUnknown, AWSEC2InstanceHealthStatusHealthy, AWSEC2InstanceHealthStatusUnhealthy, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceInterruptionBehavior) { AWSEC2InstanceInterruptionBehaviorUnknown, AWSEC2InstanceInterruptionBehaviorHibernate, AWSEC2InstanceInterruptionBehaviorStop, AWSEC2InstanceInterruptionBehaviorTerminate, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceLifecycle) { AWSEC2InstanceLifecycleUnknown, AWSEC2InstanceLifecycleSpot, AWSEC2InstanceLifecycleOnDemand, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceLifecycleType) { AWSEC2InstanceLifecycleTypeUnknown, AWSEC2InstanceLifecycleTypeSpot, AWSEC2InstanceLifecycleTypeScheduled, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceMatchCriteria) { AWSEC2InstanceMatchCriteriaUnknown, AWSEC2InstanceMatchCriteriaOpen, AWSEC2InstanceMatchCriteriaTargeted, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceMetadataEndpointState) { AWSEC2InstanceMetadataEndpointStateUnknown, AWSEC2InstanceMetadataEndpointStateDisabled, AWSEC2InstanceMetadataEndpointStateEnabled, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceMetadataOptionsState) { AWSEC2InstanceMetadataOptionsStateUnknown, AWSEC2InstanceMetadataOptionsStatePending, AWSEC2InstanceMetadataOptionsStateApplied, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceMetadataProtocolState) { AWSEC2InstanceMetadataProtocolStateUnknown, AWSEC2InstanceMetadataProtocolStateDisabled, AWSEC2InstanceMetadataProtocolStateEnabled, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceMetadataTagsState) { AWSEC2InstanceMetadataTagsStateUnknown, AWSEC2InstanceMetadataTagsStateDisabled, AWSEC2InstanceMetadataTagsStateEnabled, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceStateName) { AWSEC2InstanceStateNameUnknown, AWSEC2InstanceStateNamePending, AWSEC2InstanceStateNameRunning, AWSEC2InstanceStateNameShuttingDown, AWSEC2InstanceStateNameTerminated, AWSEC2InstanceStateNameStopping, AWSEC2InstanceStateNameStopped, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceStorageEncryptionSupport) { AWSEC2InstanceStorageEncryptionSupportUnknown, AWSEC2InstanceStorageEncryptionSupportUnsupported, AWSEC2InstanceStorageEncryptionSupportRequired, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceType) { AWSEC2InstanceTypeUnknown, AWSEC2InstanceTypeA1_medium, AWSEC2InstanceTypeA1_large, AWSEC2InstanceTypeA1_xlarge, AWSEC2InstanceTypeA1_2xlarge, AWSEC2InstanceTypeA1_4xlarge, AWSEC2InstanceTypeA1_metal, AWSEC2InstanceTypeC1_medium, AWSEC2InstanceTypeC1_xlarge, AWSEC2InstanceTypeC3_large, AWSEC2InstanceTypeC3_xlarge, AWSEC2InstanceTypeC3_2xlarge, AWSEC2InstanceTypeC3_4xlarge, AWSEC2InstanceTypeC3_8xlarge, AWSEC2InstanceTypeC4_large, AWSEC2InstanceTypeC4_xlarge, AWSEC2InstanceTypeC4_2xlarge, AWSEC2InstanceTypeC4_4xlarge, AWSEC2InstanceTypeC4_8xlarge, AWSEC2InstanceTypeC5_large, AWSEC2InstanceTypeC5_xlarge, AWSEC2InstanceTypeC5_2xlarge, AWSEC2InstanceTypeC5_4xlarge, AWSEC2InstanceTypeC5_9xlarge, AWSEC2InstanceTypeC5_12xlarge, AWSEC2InstanceTypeC5_18xlarge, AWSEC2InstanceTypeC5_24xlarge, AWSEC2InstanceTypeC5_metal, AWSEC2InstanceTypeC5A_large, AWSEC2InstanceTypeC5A_xlarge, AWSEC2InstanceTypeC5A_2xlarge, AWSEC2InstanceTypeC5A_4xlarge, AWSEC2InstanceTypeC5A_8xlarge, AWSEC2InstanceTypeC5A_12xlarge, AWSEC2InstanceTypeC5A_16xlarge, AWSEC2InstanceTypeC5A_24xlarge, AWSEC2InstanceTypeC5Ad_large, AWSEC2InstanceTypeC5Ad_xlarge, AWSEC2InstanceTypeC5Ad_2xlarge, AWSEC2InstanceTypeC5Ad_4xlarge, AWSEC2InstanceTypeC5Ad_8xlarge, AWSEC2InstanceTypeC5Ad_12xlarge, AWSEC2InstanceTypeC5Ad_16xlarge, AWSEC2InstanceTypeC5Ad_24xlarge, AWSEC2InstanceTypeC5D_large, AWSEC2InstanceTypeC5D_xlarge, AWSEC2InstanceTypeC5D_2xlarge, AWSEC2InstanceTypeC5D_4xlarge, AWSEC2InstanceTypeC5D_9xlarge, AWSEC2InstanceTypeC5D_12xlarge, AWSEC2InstanceTypeC5D_18xlarge, AWSEC2InstanceTypeC5D_24xlarge, AWSEC2InstanceTypeC5D_metal, AWSEC2InstanceTypeC5N_large, AWSEC2InstanceTypeC5N_xlarge, AWSEC2InstanceTypeC5N_2xlarge, AWSEC2InstanceTypeC5N_4xlarge, AWSEC2InstanceTypeC5N_9xlarge, AWSEC2InstanceTypeC5N_18xlarge, AWSEC2InstanceTypeC5N_metal, AWSEC2InstanceTypeC6G_medium, AWSEC2InstanceTypeC6G_large, AWSEC2InstanceTypeC6G_xlarge, AWSEC2InstanceTypeC6G_2xlarge, AWSEC2InstanceTypeC6G_4xlarge, AWSEC2InstanceTypeC6G_8xlarge, AWSEC2InstanceTypeC6G_12xlarge, AWSEC2InstanceTypeC6G_16xlarge, AWSEC2InstanceTypeC6G_metal, AWSEC2InstanceTypeC6Gd_medium, AWSEC2InstanceTypeC6Gd_large, AWSEC2InstanceTypeC6Gd_xlarge, AWSEC2InstanceTypeC6Gd_2xlarge, AWSEC2InstanceTypeC6Gd_4xlarge, AWSEC2InstanceTypeC6Gd_8xlarge, AWSEC2InstanceTypeC6Gd_12xlarge, AWSEC2InstanceTypeC6Gd_16xlarge, AWSEC2InstanceTypeC6Gd_metal, AWSEC2InstanceTypeC6Gn_medium, AWSEC2InstanceTypeC6Gn_large, AWSEC2InstanceTypeC6Gn_xlarge, AWSEC2InstanceTypeC6Gn_2xlarge, AWSEC2InstanceTypeC6Gn_4xlarge, AWSEC2InstanceTypeC6Gn_8xlarge, AWSEC2InstanceTypeC6Gn_12xlarge, AWSEC2InstanceTypeC6Gn_16xlarge, AWSEC2InstanceTypeC6I_large, AWSEC2InstanceTypeC6I_xlarge, AWSEC2InstanceTypeC6I_2xlarge, AWSEC2InstanceTypeC6I_4xlarge, AWSEC2InstanceTypeC6I_8xlarge, AWSEC2InstanceTypeC6I_12xlarge, AWSEC2InstanceTypeC6I_16xlarge, AWSEC2InstanceTypeC6I_24xlarge, AWSEC2InstanceTypeC6I_32xlarge, AWSEC2InstanceTypeC6I_metal, AWSEC2InstanceTypeCC1_4xlarge, AWSEC2InstanceTypeCC2_8xlarge, AWSEC2InstanceTypeCG1_4xlarge, AWSEC2InstanceTypeCR1_8xlarge, AWSEC2InstanceTypeD2_xlarge, AWSEC2InstanceTypeD2_2xlarge, AWSEC2InstanceTypeD2_4xlarge, AWSEC2InstanceTypeD2_8xlarge, AWSEC2InstanceTypeD3_xlarge, AWSEC2InstanceTypeD3_2xlarge, AWSEC2InstanceTypeD3_4xlarge, AWSEC2InstanceTypeD3_8xlarge, AWSEC2InstanceTypeD3En_xlarge, AWSEC2InstanceTypeD3En_2xlarge, AWSEC2InstanceTypeD3En_4xlarge, AWSEC2InstanceTypeD3En_6xlarge, AWSEC2InstanceTypeD3En_8xlarge, AWSEC2InstanceTypeD3En_12xlarge, AWSEC2InstanceTypeDL1_24xlarge, AWSEC2InstanceTypeF1_2xlarge, AWSEC2InstanceTypeF1_4xlarge, AWSEC2InstanceTypeF1_16xlarge, AWSEC2InstanceTypeG2_2xlarge, AWSEC2InstanceTypeG2_8xlarge, AWSEC2InstanceTypeG3_4xlarge, AWSEC2InstanceTypeG3_8xlarge, AWSEC2InstanceTypeG3_16xlarge, AWSEC2InstanceTypeG3S_xlarge, AWSEC2InstanceTypeG4Ad_xlarge, AWSEC2InstanceTypeG4Ad_2xlarge, AWSEC2InstanceTypeG4Ad_4xlarge, AWSEC2InstanceTypeG4Ad_8xlarge, AWSEC2InstanceTypeG4Ad_16xlarge, AWSEC2InstanceTypeG4Dn_xlarge, AWSEC2InstanceTypeG4Dn_2xlarge, AWSEC2InstanceTypeG4Dn_4xlarge, AWSEC2InstanceTypeG4Dn_8xlarge, AWSEC2InstanceTypeG4Dn_12xlarge, AWSEC2InstanceTypeG4Dn_16xlarge, AWSEC2InstanceTypeG4Dn_metal, AWSEC2InstanceTypeG5_xlarge, AWSEC2InstanceTypeG5_2xlarge, AWSEC2InstanceTypeG5_4xlarge, AWSEC2InstanceTypeG5_8xlarge, AWSEC2InstanceTypeG5_12xlarge, AWSEC2InstanceTypeG5_16xlarge, AWSEC2InstanceTypeG5_24xlarge, AWSEC2InstanceTypeG5_48xlarge, AWSEC2InstanceTypeG5G_xlarge, AWSEC2InstanceTypeG5G_2xlarge, AWSEC2InstanceTypeG5G_4xlarge, AWSEC2InstanceTypeG5G_8xlarge, AWSEC2InstanceTypeG5G_16xlarge, AWSEC2InstanceTypeG5G_metal, AWSEC2InstanceTypeHI1_4xlarge, AWSEC2InstanceTypeHPC6a_48xlarge, AWSEC2InstanceTypeHS1_8xlarge, AWSEC2InstanceTypeH1_2xlarge, AWSEC2InstanceTypeH1_4xlarge, AWSEC2InstanceTypeH1_8xlarge, AWSEC2InstanceTypeH1_16xlarge, AWSEC2InstanceTypeI2_xlarge, AWSEC2InstanceTypeI2_2xlarge, AWSEC2InstanceTypeI2_4xlarge, AWSEC2InstanceTypeI2_8xlarge, AWSEC2InstanceTypeI3_large, AWSEC2InstanceTypeI3_xlarge, AWSEC2InstanceTypeI3_2xlarge, AWSEC2InstanceTypeI3_4xlarge, AWSEC2InstanceTypeI3_8xlarge, AWSEC2InstanceTypeI3_16xlarge, AWSEC2InstanceTypeI3_metal, AWSEC2InstanceTypeI3En_large, AWSEC2InstanceTypeI3En_xlarge, AWSEC2InstanceTypeI3En_2xlarge, AWSEC2InstanceTypeI3En_3xlarge, AWSEC2InstanceTypeI3En_6xlarge, AWSEC2InstanceTypeI3En_12xlarge, AWSEC2InstanceTypeI3En_24xlarge, AWSEC2InstanceTypeI3En_metal, AWSEC2InstanceTypeIM4gn_large, AWSEC2InstanceTypeIM4gn_xlarge, AWSEC2InstanceTypeIM4gn_2xlarge, AWSEC2InstanceTypeIM4gn_4xlarge, AWSEC2InstanceTypeIM4gn_8xlarge, AWSEC2InstanceTypeIM4gn_16xlarge, AWSEC2InstanceTypeINF1_xlarge, AWSEC2InstanceTypeINF1_2xlarge, AWSEC2InstanceTypeINF1_6xlarge, AWSEC2InstanceTypeINF1_24xlarge, AWSEC2InstanceTypeIS4gen_medium, AWSEC2InstanceTypeIS4gen_large, AWSEC2InstanceTypeIS4gen_xlarge, AWSEC2InstanceTypeIS4gen_2xlarge, AWSEC2InstanceTypeIS4gen_4xlarge, AWSEC2InstanceTypeIS4gen_8xlarge, AWSEC2InstanceTypeM1_small, AWSEC2InstanceTypeM1_medium, AWSEC2InstanceTypeM1_large, AWSEC2InstanceTypeM1_xlarge, AWSEC2InstanceTypeM2_xlarge, AWSEC2InstanceTypeM2_2xlarge, AWSEC2InstanceTypeM2_4xlarge, AWSEC2InstanceTypeM3_medium, AWSEC2InstanceTypeM3_large, AWSEC2InstanceTypeM3_xlarge, AWSEC2InstanceTypeM3_2xlarge, AWSEC2InstanceTypeM4_large, AWSEC2InstanceTypeM4_xlarge, AWSEC2InstanceTypeM4_2xlarge, AWSEC2InstanceTypeM4_4xlarge, AWSEC2InstanceTypeM4_10xlarge, AWSEC2InstanceTypeM4_16xlarge, AWSEC2InstanceTypeM5_large, AWSEC2InstanceTypeM5_xlarge, AWSEC2InstanceTypeM5_2xlarge, AWSEC2InstanceTypeM5_4xlarge, AWSEC2InstanceTypeM5_8xlarge, AWSEC2InstanceTypeM5_12xlarge, AWSEC2InstanceTypeM5_16xlarge, AWSEC2InstanceTypeM5_24xlarge, AWSEC2InstanceTypeM5_metal, AWSEC2InstanceTypeM5A_large, AWSEC2InstanceTypeM5A_xlarge, AWSEC2InstanceTypeM5A_2xlarge, AWSEC2InstanceTypeM5A_4xlarge, AWSEC2InstanceTypeM5A_8xlarge, AWSEC2InstanceTypeM5A_12xlarge, AWSEC2InstanceTypeM5A_16xlarge, AWSEC2InstanceTypeM5A_24xlarge, AWSEC2InstanceTypeM5Ad_large, AWSEC2InstanceTypeM5Ad_xlarge, AWSEC2InstanceTypeM5Ad_2xlarge, AWSEC2InstanceTypeM5Ad_4xlarge, AWSEC2InstanceTypeM5Ad_8xlarge, AWSEC2InstanceTypeM5Ad_12xlarge, AWSEC2InstanceTypeM5Ad_16xlarge, AWSEC2InstanceTypeM5Ad_24xlarge, AWSEC2InstanceTypeM5D_large, AWSEC2InstanceTypeM5D_xlarge, AWSEC2InstanceTypeM5D_2xlarge, AWSEC2InstanceTypeM5D_4xlarge, AWSEC2InstanceTypeM5D_8xlarge, AWSEC2InstanceTypeM5D_12xlarge, AWSEC2InstanceTypeM5D_16xlarge, AWSEC2InstanceTypeM5D_24xlarge, AWSEC2InstanceTypeM5D_metal, AWSEC2InstanceTypeM5Dn_large, AWSEC2InstanceTypeM5Dn_xlarge, AWSEC2InstanceTypeM5Dn_2xlarge, AWSEC2InstanceTypeM5Dn_4xlarge, AWSEC2InstanceTypeM5Dn_8xlarge, AWSEC2InstanceTypeM5Dn_12xlarge, AWSEC2InstanceTypeM5Dn_16xlarge, AWSEC2InstanceTypeM5Dn_24xlarge, AWSEC2InstanceTypeM5Dn_metal, AWSEC2InstanceTypeM5N_large, AWSEC2InstanceTypeM5N_xlarge, AWSEC2InstanceTypeM5N_2xlarge, AWSEC2InstanceTypeM5N_4xlarge, AWSEC2InstanceTypeM5N_8xlarge, AWSEC2InstanceTypeM5N_12xlarge, AWSEC2InstanceTypeM5N_16xlarge, AWSEC2InstanceTypeM5N_24xlarge, AWSEC2InstanceTypeM5N_metal, AWSEC2InstanceTypeM5Zn_large, AWSEC2InstanceTypeM5Zn_xlarge, AWSEC2InstanceTypeM5Zn_2xlarge, AWSEC2InstanceTypeM5Zn_3xlarge, AWSEC2InstanceTypeM5Zn_6xlarge, AWSEC2InstanceTypeM5Zn_12xlarge, AWSEC2InstanceTypeM5Zn_metal, AWSEC2InstanceTypeM6A_large, AWSEC2InstanceTypeM6A_xlarge, AWSEC2InstanceTypeM6A_2xlarge, AWSEC2InstanceTypeM6A_4xlarge, AWSEC2InstanceTypeM6A_8xlarge, AWSEC2InstanceTypeM6A_12xlarge, AWSEC2InstanceTypeM6A_16xlarge, AWSEC2InstanceTypeM6A_24xlarge, AWSEC2InstanceTypeM6A_32xlarge, AWSEC2InstanceTypeM6A_48xlarge, AWSEC2InstanceTypeM6G_metal, AWSEC2InstanceTypeM6G_medium, AWSEC2InstanceTypeM6G_large, AWSEC2InstanceTypeM6G_xlarge, AWSEC2InstanceTypeM6G_2xlarge, AWSEC2InstanceTypeM6G_4xlarge, AWSEC2InstanceTypeM6G_8xlarge, AWSEC2InstanceTypeM6G_12xlarge, AWSEC2InstanceTypeM6G_16xlarge, AWSEC2InstanceTypeM6Gd_metal, AWSEC2InstanceTypeM6Gd_medium, AWSEC2InstanceTypeM6Gd_large, AWSEC2InstanceTypeM6Gd_xlarge, AWSEC2InstanceTypeM6Gd_2xlarge, AWSEC2InstanceTypeM6Gd_4xlarge, AWSEC2InstanceTypeM6Gd_8xlarge, AWSEC2InstanceTypeM6Gd_12xlarge, AWSEC2InstanceTypeM6Gd_16xlarge, AWSEC2InstanceTypeM6I_large, AWSEC2InstanceTypeM6I_xlarge, AWSEC2InstanceTypeM6I_2xlarge, AWSEC2InstanceTypeM6I_4xlarge, AWSEC2InstanceTypeM6I_8xlarge, AWSEC2InstanceTypeM6I_12xlarge, AWSEC2InstanceTypeM6I_16xlarge, AWSEC2InstanceTypeM6I_24xlarge, AWSEC2InstanceTypeM6I_32xlarge, AWSEC2InstanceTypeM6I_metal, AWSEC2InstanceTypeMAC1_metal, AWSEC2InstanceTypeP2_xlarge, AWSEC2InstanceTypeP2_8xlarge, AWSEC2InstanceTypeP2_16xlarge, AWSEC2InstanceTypeP3_2xlarge, AWSEC2InstanceTypeP3_8xlarge, AWSEC2InstanceTypeP3_16xlarge, AWSEC2InstanceTypeP3Dn_24xlarge, AWSEC2InstanceTypeP4D_24xlarge, AWSEC2InstanceTypeR3_large, AWSEC2InstanceTypeR3_xlarge, AWSEC2InstanceTypeR3_2xlarge, AWSEC2InstanceTypeR3_4xlarge, AWSEC2InstanceTypeR3_8xlarge, AWSEC2InstanceTypeR4_large, AWSEC2InstanceTypeR4_xlarge, AWSEC2InstanceTypeR4_2xlarge, AWSEC2InstanceTypeR4_4xlarge, AWSEC2InstanceTypeR4_8xlarge, AWSEC2InstanceTypeR4_16xlarge, AWSEC2InstanceTypeR5_large, AWSEC2InstanceTypeR5_xlarge, AWSEC2InstanceTypeR5_2xlarge, AWSEC2InstanceTypeR5_4xlarge, AWSEC2InstanceTypeR5_8xlarge, AWSEC2InstanceTypeR5_12xlarge, AWSEC2InstanceTypeR5_16xlarge, AWSEC2InstanceTypeR5_24xlarge, AWSEC2InstanceTypeR5_metal, AWSEC2InstanceTypeR5A_large, AWSEC2InstanceTypeR5A_xlarge, AWSEC2InstanceTypeR5A_2xlarge, AWSEC2InstanceTypeR5A_4xlarge, AWSEC2InstanceTypeR5A_8xlarge, AWSEC2InstanceTypeR5A_12xlarge, AWSEC2InstanceTypeR5A_16xlarge, AWSEC2InstanceTypeR5A_24xlarge, AWSEC2InstanceTypeR5Ad_large, AWSEC2InstanceTypeR5Ad_xlarge, AWSEC2InstanceTypeR5Ad_2xlarge, AWSEC2InstanceTypeR5Ad_4xlarge, AWSEC2InstanceTypeR5Ad_8xlarge, AWSEC2InstanceTypeR5Ad_12xlarge, AWSEC2InstanceTypeR5Ad_16xlarge, AWSEC2InstanceTypeR5Ad_24xlarge, AWSEC2InstanceTypeR5B_large, AWSEC2InstanceTypeR5B_xlarge, AWSEC2InstanceTypeR5B_2xlarge, AWSEC2InstanceTypeR5B_4xlarge, AWSEC2InstanceTypeR5B_8xlarge, AWSEC2InstanceTypeR5B_12xlarge, AWSEC2InstanceTypeR5B_16xlarge, AWSEC2InstanceTypeR5B_24xlarge, AWSEC2InstanceTypeR5B_metal, AWSEC2InstanceTypeR5D_large, AWSEC2InstanceTypeR5D_xlarge, AWSEC2InstanceTypeR5D_2xlarge, AWSEC2InstanceTypeR5D_4xlarge, AWSEC2InstanceTypeR5D_8xlarge, AWSEC2InstanceTypeR5D_12xlarge, AWSEC2InstanceTypeR5D_16xlarge, AWSEC2InstanceTypeR5D_24xlarge, AWSEC2InstanceTypeR5D_metal, AWSEC2InstanceTypeR5Dn_large, AWSEC2InstanceTypeR5Dn_xlarge, AWSEC2InstanceTypeR5Dn_2xlarge, AWSEC2InstanceTypeR5Dn_4xlarge, AWSEC2InstanceTypeR5Dn_8xlarge, AWSEC2InstanceTypeR5Dn_12xlarge, AWSEC2InstanceTypeR5Dn_16xlarge, AWSEC2InstanceTypeR5Dn_24xlarge, AWSEC2InstanceTypeR5Dn_metal, AWSEC2InstanceTypeR5N_large, AWSEC2InstanceTypeR5N_xlarge, AWSEC2InstanceTypeR5N_2xlarge, AWSEC2InstanceTypeR5N_4xlarge, AWSEC2InstanceTypeR5N_8xlarge, AWSEC2InstanceTypeR5N_12xlarge, AWSEC2InstanceTypeR5N_16xlarge, AWSEC2InstanceTypeR5N_24xlarge, AWSEC2InstanceTypeR5N_metal, AWSEC2InstanceTypeR6G_medium, AWSEC2InstanceTypeR6G_large, AWSEC2InstanceTypeR6G_xlarge, AWSEC2InstanceTypeR6G_2xlarge, AWSEC2InstanceTypeR6G_4xlarge, AWSEC2InstanceTypeR6G_8xlarge, AWSEC2InstanceTypeR6G_12xlarge, AWSEC2InstanceTypeR6G_16xlarge, AWSEC2InstanceTypeR6G_metal, AWSEC2InstanceTypeR6Gd_medium, AWSEC2InstanceTypeR6Gd_large, AWSEC2InstanceTypeR6Gd_xlarge, AWSEC2InstanceTypeR6Gd_2xlarge, AWSEC2InstanceTypeR6Gd_4xlarge, AWSEC2InstanceTypeR6Gd_8xlarge, AWSEC2InstanceTypeR6Gd_12xlarge, AWSEC2InstanceTypeR6Gd_16xlarge, AWSEC2InstanceTypeR6Gd_metal, AWSEC2InstanceTypeR6I_large, AWSEC2InstanceTypeR6I_xlarge, AWSEC2InstanceTypeR6I_2xlarge, AWSEC2InstanceTypeR6I_4xlarge, AWSEC2InstanceTypeR6I_8xlarge, AWSEC2InstanceTypeR6I_12xlarge, AWSEC2InstanceTypeR6I_16xlarge, AWSEC2InstanceTypeR6I_24xlarge, AWSEC2InstanceTypeR6I_32xlarge, AWSEC2InstanceTypeR6I_metal, AWSEC2InstanceTypeT1_micro, AWSEC2InstanceTypeT2_nano, AWSEC2InstanceTypeT2_micro, AWSEC2InstanceTypeT2_small, AWSEC2InstanceTypeT2_medium, AWSEC2InstanceTypeT2_large, AWSEC2InstanceTypeT2_xlarge, AWSEC2InstanceTypeT2_2xlarge, AWSEC2InstanceTypeT3_nano, AWSEC2InstanceTypeT3_micro, AWSEC2InstanceTypeT3_small, AWSEC2InstanceTypeT3_medium, AWSEC2InstanceTypeT3_large, AWSEC2InstanceTypeT3_xlarge, AWSEC2InstanceTypeT3_2xlarge, AWSEC2InstanceTypeT3A_nano, AWSEC2InstanceTypeT3A_micro, AWSEC2InstanceTypeT3A_small, AWSEC2InstanceTypeT3A_medium, AWSEC2InstanceTypeT3A_large, AWSEC2InstanceTypeT3A_xlarge, AWSEC2InstanceTypeT3A_2xlarge, AWSEC2InstanceTypeT4G_nano, AWSEC2InstanceTypeT4G_micro, AWSEC2InstanceTypeT4G_small, AWSEC2InstanceTypeT4G_medium, AWSEC2InstanceTypeT4G_large, AWSEC2InstanceTypeT4G_xlarge, AWSEC2InstanceTypeT4G_2xlarge, AWSEC2InstanceTypeU_6tb1_56xlarge, AWSEC2InstanceTypeU_6tb1_112xlarge, AWSEC2InstanceTypeU_9tb1_112xlarge, AWSEC2InstanceTypeU_12tb1_112xlarge, AWSEC2InstanceTypeU_6tb1_metal, AWSEC2InstanceTypeU_9tb1_metal, AWSEC2InstanceTypeU_12tb1_metal, AWSEC2InstanceTypeU_18tb1_metal, AWSEC2InstanceTypeU_24tb1_metal, AWSEC2InstanceTypeVT1_3xlarge, AWSEC2InstanceTypeVT1_6xlarge, AWSEC2InstanceTypeVT1_24xlarge, AWSEC2InstanceTypeX1_16xlarge, AWSEC2InstanceTypeX1_32xlarge, AWSEC2InstanceTypeX1E_xlarge, AWSEC2InstanceTypeX1E_2xlarge, AWSEC2InstanceTypeX1E_4xlarge, AWSEC2InstanceTypeX1E_8xlarge, AWSEC2InstanceTypeX1E_16xlarge, AWSEC2InstanceTypeX1E_32xlarge, AWSEC2InstanceTypeX2Iezn_2xlarge, AWSEC2InstanceTypeX2Iezn_4xlarge, AWSEC2InstanceTypeX2Iezn_6xlarge, AWSEC2InstanceTypeX2Iezn_8xlarge, AWSEC2InstanceTypeX2Iezn_12xlarge, AWSEC2InstanceTypeX2Iezn_metal, AWSEC2InstanceTypeX2Gd_medium, AWSEC2InstanceTypeX2Gd_large, AWSEC2InstanceTypeX2Gd_xlarge, AWSEC2InstanceTypeX2Gd_2xlarge, AWSEC2InstanceTypeX2Gd_4xlarge, AWSEC2InstanceTypeX2Gd_8xlarge, AWSEC2InstanceTypeX2Gd_12xlarge, AWSEC2InstanceTypeX2Gd_16xlarge, AWSEC2InstanceTypeX2Gd_metal, AWSEC2InstanceTypeZ1D_large, AWSEC2InstanceTypeZ1D_xlarge, AWSEC2InstanceTypeZ1D_2xlarge, AWSEC2InstanceTypeZ1D_3xlarge, AWSEC2InstanceTypeZ1D_6xlarge, AWSEC2InstanceTypeZ1D_12xlarge, AWSEC2InstanceTypeZ1D_metal, AWSEC2InstanceTypeX2Idn_16xlarge, AWSEC2InstanceTypeX2Idn_24xlarge, AWSEC2InstanceTypeX2Idn_32xlarge, AWSEC2InstanceTypeX2Iedn_xlarge, AWSEC2InstanceTypeX2Iedn_2xlarge, AWSEC2InstanceTypeX2Iedn_4xlarge, AWSEC2InstanceTypeX2Iedn_8xlarge, AWSEC2InstanceTypeX2Iedn_16xlarge, AWSEC2InstanceTypeX2Iedn_24xlarge, AWSEC2InstanceTypeX2Iedn_32xlarge, AWSEC2InstanceTypeC6A_large, AWSEC2InstanceTypeC6A_xlarge, AWSEC2InstanceTypeC6A_2xlarge, AWSEC2InstanceTypeC6A_4xlarge, AWSEC2InstanceTypeC6A_8xlarge, AWSEC2InstanceTypeC6A_12xlarge, AWSEC2InstanceTypeC6A_16xlarge, AWSEC2InstanceTypeC6A_24xlarge, AWSEC2InstanceTypeC6A_32xlarge, AWSEC2InstanceTypeC6A_48xlarge, AWSEC2InstanceTypeC6A_metal, AWSEC2InstanceTypeM6A_metal, AWSEC2InstanceTypeI4I_large, AWSEC2InstanceTypeI4I_xlarge, AWSEC2InstanceTypeI4I_2xlarge, AWSEC2InstanceTypeI4I_4xlarge, AWSEC2InstanceTypeI4I_8xlarge, AWSEC2InstanceTypeI4I_16xlarge, AWSEC2InstanceTypeI4I_32xlarge, AWSEC2InstanceTypeI4I_metal, AWSEC2InstanceTypeX2Idn_metal, AWSEC2InstanceTypeX2Iedn_metal, AWSEC2InstanceTypeC7G_medium, AWSEC2InstanceTypeC7G_large, AWSEC2InstanceTypeC7G_xlarge, AWSEC2InstanceTypeC7G_2xlarge, AWSEC2InstanceTypeC7G_4xlarge, AWSEC2InstanceTypeC7G_8xlarge, AWSEC2InstanceTypeC7G_12xlarge, AWSEC2InstanceTypeC7G_16xlarge, AWSEC2InstanceTypeMAC2_metal, AWSEC2InstanceTypeC6Id_large, AWSEC2InstanceTypeC6Id_xlarge, AWSEC2InstanceTypeC6Id_2xlarge, AWSEC2InstanceTypeC6Id_4xlarge, AWSEC2InstanceTypeC6Id_8xlarge, AWSEC2InstanceTypeC6Id_12xlarge, AWSEC2InstanceTypeC6Id_16xlarge, AWSEC2InstanceTypeC6Id_24xlarge, AWSEC2InstanceTypeC6Id_32xlarge, AWSEC2InstanceTypeC6Id_metal, AWSEC2InstanceTypeM6Id_large, AWSEC2InstanceTypeM6Id_xlarge, AWSEC2InstanceTypeM6Id_2xlarge, AWSEC2InstanceTypeM6Id_4xlarge, AWSEC2InstanceTypeM6Id_8xlarge, AWSEC2InstanceTypeM6Id_12xlarge, AWSEC2InstanceTypeM6Id_16xlarge, AWSEC2InstanceTypeM6Id_24xlarge, AWSEC2InstanceTypeM6Id_32xlarge, AWSEC2InstanceTypeM6Id_metal, AWSEC2InstanceTypeR6Id_large, AWSEC2InstanceTypeR6Id_xlarge, AWSEC2InstanceTypeR6Id_2xlarge, AWSEC2InstanceTypeR6Id_4xlarge, AWSEC2InstanceTypeR6Id_8xlarge, AWSEC2InstanceTypeR6Id_12xlarge, AWSEC2InstanceTypeR6Id_16xlarge, AWSEC2InstanceTypeR6Id_24xlarge, AWSEC2InstanceTypeR6Id_32xlarge, AWSEC2InstanceTypeR6Id_metal, AWSEC2InstanceTypeR6A_large, AWSEC2InstanceTypeR6A_xlarge, AWSEC2InstanceTypeR6A_2xlarge, AWSEC2InstanceTypeR6A_4xlarge, AWSEC2InstanceTypeR6A_8xlarge, AWSEC2InstanceTypeR6A_12xlarge, AWSEC2InstanceTypeR6A_16xlarge, AWSEC2InstanceTypeR6A_24xlarge, AWSEC2InstanceTypeR6A_32xlarge, AWSEC2InstanceTypeR6A_48xlarge, AWSEC2InstanceTypeR6A_metal, AWSEC2InstanceTypeP4De_24xlarge, AWSEC2InstanceTypeU_3tb1_56xlarge, AWSEC2InstanceTypeU_18tb1_112xlarge, AWSEC2InstanceTypeU_24tb1_112xlarge, AWSEC2InstanceTypeTRN1_2xlarge, AWSEC2InstanceTypeTRN1_32xlarge, AWSEC2InstanceTypeHPC6id_32xlarge, AWSEC2InstanceTypeC6In_large, AWSEC2InstanceTypeC6In_xlarge, AWSEC2InstanceTypeC6In_2xlarge, AWSEC2InstanceTypeC6In_4xlarge, AWSEC2InstanceTypeC6In_8xlarge, AWSEC2InstanceTypeC6In_12xlarge, AWSEC2InstanceTypeC6In_16xlarge, AWSEC2InstanceTypeC6In_24xlarge, AWSEC2InstanceTypeC6In_32xlarge, AWSEC2InstanceTypeM6In_large, AWSEC2InstanceTypeM6In_xlarge, AWSEC2InstanceTypeM6In_2xlarge, AWSEC2InstanceTypeM6In_4xlarge, AWSEC2InstanceTypeM6In_8xlarge, AWSEC2InstanceTypeM6In_12xlarge, AWSEC2InstanceTypeM6In_16xlarge, AWSEC2InstanceTypeM6In_24xlarge, AWSEC2InstanceTypeM6In_32xlarge, AWSEC2InstanceTypeM6Idn_large, AWSEC2InstanceTypeM6Idn_xlarge, AWSEC2InstanceTypeM6Idn_2xlarge, AWSEC2InstanceTypeM6Idn_4xlarge, AWSEC2InstanceTypeM6Idn_8xlarge, AWSEC2InstanceTypeM6Idn_12xlarge, AWSEC2InstanceTypeM6Idn_16xlarge, AWSEC2InstanceTypeM6Idn_24xlarge, AWSEC2InstanceTypeM6Idn_32xlarge, AWSEC2InstanceTypeR6In_large, AWSEC2InstanceTypeR6In_xlarge, AWSEC2InstanceTypeR6In_2xlarge, AWSEC2InstanceTypeR6In_4xlarge, AWSEC2InstanceTypeR6In_8xlarge, AWSEC2InstanceTypeR6In_12xlarge, AWSEC2InstanceTypeR6In_16xlarge, AWSEC2InstanceTypeR6In_24xlarge, AWSEC2InstanceTypeR6In_32xlarge, AWSEC2InstanceTypeR6Idn_large, AWSEC2InstanceTypeR6Idn_xlarge, AWSEC2InstanceTypeR6Idn_2xlarge, AWSEC2InstanceTypeR6Idn_4xlarge, AWSEC2InstanceTypeR6Idn_8xlarge, AWSEC2InstanceTypeR6Idn_12xlarge, AWSEC2InstanceTypeR6Idn_16xlarge, AWSEC2InstanceTypeR6Idn_24xlarge, AWSEC2InstanceTypeR6Idn_32xlarge, AWSEC2InstanceTypeC7G_metal, AWSEC2InstanceTypeM7G_medium, AWSEC2InstanceTypeM7G_large, AWSEC2InstanceTypeM7G_xlarge, AWSEC2InstanceTypeM7G_2xlarge, AWSEC2InstanceTypeM7G_4xlarge, AWSEC2InstanceTypeM7G_8xlarge, AWSEC2InstanceTypeM7G_12xlarge, AWSEC2InstanceTypeM7G_16xlarge, AWSEC2InstanceTypeM7G_metal, AWSEC2InstanceTypeR7G_medium, AWSEC2InstanceTypeR7G_large, AWSEC2InstanceTypeR7G_xlarge, AWSEC2InstanceTypeR7G_2xlarge, AWSEC2InstanceTypeR7G_4xlarge, AWSEC2InstanceTypeR7G_8xlarge, AWSEC2InstanceTypeR7G_12xlarge, AWSEC2InstanceTypeR7G_16xlarge, AWSEC2InstanceTypeR7G_metal, AWSEC2InstanceTypeC6In_metal, AWSEC2InstanceTypeM6In_metal, AWSEC2InstanceTypeM6Idn_metal, AWSEC2InstanceTypeR6In_metal, AWSEC2InstanceTypeR6Idn_metal, AWSEC2InstanceTypeINF2_xlarge, AWSEC2InstanceTypeINF2_8xlarge, AWSEC2InstanceTypeINF2_24xlarge, AWSEC2InstanceTypeINF2_48xlarge, AWSEC2InstanceTypeTRN1n_32xlarge, AWSEC2InstanceTypeI4G_large, AWSEC2InstanceTypeI4G_xlarge, AWSEC2InstanceTypeI4G_2xlarge, AWSEC2InstanceTypeI4G_4xlarge, AWSEC2InstanceTypeI4G_8xlarge, AWSEC2InstanceTypeI4G_16xlarge, AWSEC2InstanceTypeHPC7g_4xlarge, AWSEC2InstanceTypeHPC7g_8xlarge, AWSEC2InstanceTypeHPC7g_16xlarge, AWSEC2InstanceTypeC7Gn_medium, AWSEC2InstanceTypeC7Gn_large, AWSEC2InstanceTypeC7Gn_xlarge, AWSEC2InstanceTypeC7Gn_2xlarge, AWSEC2InstanceTypeC7Gn_4xlarge, AWSEC2InstanceTypeC7Gn_8xlarge, AWSEC2InstanceTypeC7Gn_12xlarge, AWSEC2InstanceTypeC7Gn_16xlarge, }; typedef NS_ENUM(NSInteger, AWSEC2InstanceTypeHypervisor) { AWSEC2InstanceTypeHypervisorUnknown, AWSEC2InstanceTypeHypervisorNitro, AWSEC2InstanceTypeHypervisorXen, }; typedef NS_ENUM(NSInteger, AWSEC2InterfacePermissionType) { AWSEC2InterfacePermissionTypeUnknown, AWSEC2InterfacePermissionTypeInstanceAttach, AWSEC2InterfacePermissionTypeEipAssociate, }; typedef NS_ENUM(NSInteger, AWSEC2InterfaceProtocolType) { AWSEC2InterfaceProtocolTypeUnknown, AWSEC2InterfaceProtocolTypeVlan, AWSEC2InterfaceProtocolTypeGre, }; typedef NS_ENUM(NSInteger, AWSEC2IpAddressType) { AWSEC2IpAddressTypeUnknown, AWSEC2IpAddressTypeIpv4, AWSEC2IpAddressTypeDualstack, AWSEC2IpAddressTypeIpv6, }; typedef NS_ENUM(NSInteger, AWSEC2IpamAddressHistoryResourceType) { AWSEC2IpamAddressHistoryResourceTypeUnknown, AWSEC2IpamAddressHistoryResourceTypeEip, AWSEC2IpamAddressHistoryResourceTypeVPC, AWSEC2IpamAddressHistoryResourceTypeSubnet, AWSEC2IpamAddressHistoryResourceTypeNetworkInterface, AWSEC2IpamAddressHistoryResourceTypeInstance, }; typedef NS_ENUM(NSInteger, AWSEC2IpamAssociatedResourceDiscoveryStatus) { AWSEC2IpamAssociatedResourceDiscoveryStatusUnknown, AWSEC2IpamAssociatedResourceDiscoveryStatusActive, AWSEC2IpamAssociatedResourceDiscoveryStatusNotFound, }; typedef NS_ENUM(NSInteger, AWSEC2IpamComplianceStatus) { AWSEC2IpamComplianceStatusUnknown, AWSEC2IpamComplianceStatusCompliant, AWSEC2IpamComplianceStatusNoncompliant, AWSEC2IpamComplianceStatusUnmanaged, AWSEC2IpamComplianceStatusIgnored, }; typedef NS_ENUM(NSInteger, AWSEC2IpamDiscoveryFailureCode) { AWSEC2IpamDiscoveryFailureCodeUnknown, AWSEC2IpamDiscoveryFailureCodeAssumeRoleFailure, AWSEC2IpamDiscoveryFailureCodeThrottlingFailure, AWSEC2IpamDiscoveryFailureCodeUnauthorizedFailure, }; typedef NS_ENUM(NSInteger, AWSEC2IpamManagementState) { AWSEC2IpamManagementStateUnknown, AWSEC2IpamManagementStateManaged, AWSEC2IpamManagementStateUnmanaged, AWSEC2IpamManagementStateIgnored, }; typedef NS_ENUM(NSInteger, AWSEC2IpamOverlapStatus) { AWSEC2IpamOverlapStatusUnknown, AWSEC2IpamOverlapStatusOverlapping, AWSEC2IpamOverlapStatusNonoverlapping, AWSEC2IpamOverlapStatusIgnored, }; typedef NS_ENUM(NSInteger, AWSEC2IpamPoolAllocationResourceType) { AWSEC2IpamPoolAllocationResourceTypeUnknown, AWSEC2IpamPoolAllocationResourceTypeIpamPool, AWSEC2IpamPoolAllocationResourceTypeVPC, AWSEC2IpamPoolAllocationResourceTypeEc2PublicIpv4Pool, AWSEC2IpamPoolAllocationResourceTypeCustom, }; typedef NS_ENUM(NSInteger, AWSEC2IpamPoolAwsService) { AWSEC2IpamPoolAwsServiceUnknown, AWSEC2IpamPoolAwsServiceEc2, }; typedef NS_ENUM(NSInteger, AWSEC2IpamPoolCidrFailureCode) { AWSEC2IpamPoolCidrFailureCodeUnknown, AWSEC2IpamPoolCidrFailureCodeCidrNotAvailable, AWSEC2IpamPoolCidrFailureCodeLimitExceeded, }; typedef NS_ENUM(NSInteger, AWSEC2IpamPoolCidrState) { AWSEC2IpamPoolCidrStateUnknown, AWSEC2IpamPoolCidrStatePendingProvision, AWSEC2IpamPoolCidrStateProvisioned, AWSEC2IpamPoolCidrStateFailedProvision, AWSEC2IpamPoolCidrStatePendingDeprovision, AWSEC2IpamPoolCidrStateDeprovisioned, AWSEC2IpamPoolCidrStateFailedDeprovision, AWSEC2IpamPoolCidrStatePendingImport, AWSEC2IpamPoolCidrStateFailedImport, }; typedef NS_ENUM(NSInteger, AWSEC2IpamPoolPublicIpSource) { AWSEC2IpamPoolPublicIpSourceUnknown, AWSEC2IpamPoolPublicIpSourceAmazon, AWSEC2IpamPoolPublicIpSourceByoip, }; typedef NS_ENUM(NSInteger, AWSEC2IpamPoolState) { AWSEC2IpamPoolStateUnknown, AWSEC2IpamPoolStateCreateInProgress, AWSEC2IpamPoolStateCreateComplete, AWSEC2IpamPoolStateCreateFailed, AWSEC2IpamPoolStateModifyInProgress, AWSEC2IpamPoolStateModifyComplete, AWSEC2IpamPoolStateModifyFailed, AWSEC2IpamPoolStateDeleteInProgress, AWSEC2IpamPoolStateDeleteComplete, AWSEC2IpamPoolStateDeleteFailed, AWSEC2IpamPoolStateIsolateInProgress, AWSEC2IpamPoolStateIsolateComplete, AWSEC2IpamPoolStateRestoreInProgress, }; typedef NS_ENUM(NSInteger, AWSEC2IpamResourceDiscoveryAssociationState) { AWSEC2IpamResourceDiscoveryAssociationStateUnknown, AWSEC2IpamResourceDiscoveryAssociationStateAssociateInProgress, AWSEC2IpamResourceDiscoveryAssociationStateAssociateComplete, AWSEC2IpamResourceDiscoveryAssociationStateAssociateFailed, AWSEC2IpamResourceDiscoveryAssociationStateDisassociateInProgress, AWSEC2IpamResourceDiscoveryAssociationStateDisassociateComplete, AWSEC2IpamResourceDiscoveryAssociationStateDisassociateFailed, AWSEC2IpamResourceDiscoveryAssociationStateIsolateInProgress, AWSEC2IpamResourceDiscoveryAssociationStateIsolateComplete, AWSEC2IpamResourceDiscoveryAssociationStateRestoreInProgress, }; typedef NS_ENUM(NSInteger, AWSEC2IpamResourceDiscoveryState) { AWSEC2IpamResourceDiscoveryStateUnknown, AWSEC2IpamResourceDiscoveryStateCreateInProgress, AWSEC2IpamResourceDiscoveryStateCreateComplete, AWSEC2IpamResourceDiscoveryStateCreateFailed, AWSEC2IpamResourceDiscoveryStateModifyInProgress, AWSEC2IpamResourceDiscoveryStateModifyComplete, AWSEC2IpamResourceDiscoveryStateModifyFailed, AWSEC2IpamResourceDiscoveryStateDeleteInProgress, AWSEC2IpamResourceDiscoveryStateDeleteComplete, AWSEC2IpamResourceDiscoveryStateDeleteFailed, AWSEC2IpamResourceDiscoveryStateIsolateInProgress, AWSEC2IpamResourceDiscoveryStateIsolateComplete, AWSEC2IpamResourceDiscoveryStateRestoreInProgress, }; typedef NS_ENUM(NSInteger, AWSEC2IpamResourceType) { AWSEC2IpamResourceTypeUnknown, AWSEC2IpamResourceTypeVPC, AWSEC2IpamResourceTypeSubnet, AWSEC2IpamResourceTypeEip, AWSEC2IpamResourceTypePublicIpv4Pool, AWSEC2IpamResourceTypeIpv6Pool, }; typedef NS_ENUM(NSInteger, AWSEC2IpamScopeState) { AWSEC2IpamScopeStateUnknown, AWSEC2IpamScopeStateCreateInProgress, AWSEC2IpamScopeStateCreateComplete, AWSEC2IpamScopeStateCreateFailed, AWSEC2IpamScopeStateModifyInProgress, AWSEC2IpamScopeStateModifyComplete, AWSEC2IpamScopeStateModifyFailed, AWSEC2IpamScopeStateDeleteInProgress, AWSEC2IpamScopeStateDeleteComplete, AWSEC2IpamScopeStateDeleteFailed, AWSEC2IpamScopeStateIsolateInProgress, AWSEC2IpamScopeStateIsolateComplete, AWSEC2IpamScopeStateRestoreInProgress, }; typedef NS_ENUM(NSInteger, AWSEC2IpamScopeType) { AWSEC2IpamScopeTypeUnknown, AWSEC2IpamScopeTypePublic, AWSEC2IpamScopeTypePrivate, }; typedef NS_ENUM(NSInteger, AWSEC2IpamState) { AWSEC2IpamStateUnknown, AWSEC2IpamStateCreateInProgress, AWSEC2IpamStateCreateComplete, AWSEC2IpamStateCreateFailed, AWSEC2IpamStateModifyInProgress, AWSEC2IpamStateModifyComplete, AWSEC2IpamStateModifyFailed, AWSEC2IpamStateDeleteInProgress, AWSEC2IpamStateDeleteComplete, AWSEC2IpamStateDeleteFailed, AWSEC2IpamStateIsolateInProgress, AWSEC2IpamStateIsolateComplete, AWSEC2IpamStateRestoreInProgress, }; typedef NS_ENUM(NSInteger, AWSEC2Ipv6SupportValue) { AWSEC2Ipv6SupportValueUnknown, AWSEC2Ipv6SupportValueEnable, AWSEC2Ipv6SupportValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2KeyFormat) { AWSEC2KeyFormatUnknown, AWSEC2KeyFormatPem, AWSEC2KeyFormatPpk, }; typedef NS_ENUM(NSInteger, AWSEC2KeyType) { AWSEC2KeyTypeUnknown, AWSEC2KeyTypeRsa, AWSEC2KeyTypeEd25519, }; typedef NS_ENUM(NSInteger, AWSEC2LaunchTemplateAutoRecoveryState) { AWSEC2LaunchTemplateAutoRecoveryStateUnknown, AWSEC2LaunchTemplateAutoRecoveryStateDefault, AWSEC2LaunchTemplateAutoRecoveryStateDisabled, }; typedef NS_ENUM(NSInteger, AWSEC2LaunchTemplateErrorCode) { AWSEC2LaunchTemplateErrorCodeUnknown, AWSEC2LaunchTemplateErrorCodeLaunchTemplateIdDoesNotExist, AWSEC2LaunchTemplateErrorCodeLaunchTemplateIdMalformed, AWSEC2LaunchTemplateErrorCodeLaunchTemplateNameDoesNotExist, AWSEC2LaunchTemplateErrorCodeLaunchTemplateNameMalformed, AWSEC2LaunchTemplateErrorCodeLaunchTemplateVersionDoesNotExist, AWSEC2LaunchTemplateErrorCodeUnexpectedError, }; typedef NS_ENUM(NSInteger, AWSEC2LaunchTemplateHttpTokensState) { AWSEC2LaunchTemplateHttpTokensStateUnknown, AWSEC2LaunchTemplateHttpTokensStateOptional, AWSEC2LaunchTemplateHttpTokensStateRequired, }; typedef NS_ENUM(NSInteger, AWSEC2LaunchTemplateInstanceMetadataEndpointState) { AWSEC2LaunchTemplateInstanceMetadataEndpointStateUnknown, AWSEC2LaunchTemplateInstanceMetadataEndpointStateDisabled, AWSEC2LaunchTemplateInstanceMetadataEndpointStateEnabled, }; typedef NS_ENUM(NSInteger, AWSEC2LaunchTemplateInstanceMetadataOptionsState) { AWSEC2LaunchTemplateInstanceMetadataOptionsStateUnknown, AWSEC2LaunchTemplateInstanceMetadataOptionsStatePending, AWSEC2LaunchTemplateInstanceMetadataOptionsStateApplied, }; typedef NS_ENUM(NSInteger, AWSEC2LaunchTemplateInstanceMetadataProtocolIpv6) { AWSEC2LaunchTemplateInstanceMetadataProtocolIpv6Unknown, AWSEC2LaunchTemplateInstanceMetadataProtocolIpv6Disabled, AWSEC2LaunchTemplateInstanceMetadataProtocolIpv6Enabled, }; typedef NS_ENUM(NSInteger, AWSEC2LaunchTemplateInstanceMetadataTagsState) { AWSEC2LaunchTemplateInstanceMetadataTagsStateUnknown, AWSEC2LaunchTemplateInstanceMetadataTagsStateDisabled, AWSEC2LaunchTemplateInstanceMetadataTagsStateEnabled, }; typedef NS_ENUM(NSInteger, AWSEC2ListingState) { AWSEC2ListingStateUnknown, AWSEC2ListingStateAvailable, AWSEC2ListingStateSold, AWSEC2ListingStateCancelled, AWSEC2ListingStatePending, }; typedef NS_ENUM(NSInteger, AWSEC2ListingStatus) { AWSEC2ListingStatusUnknown, AWSEC2ListingStatusActive, AWSEC2ListingStatusPending, AWSEC2ListingStatusCancelled, AWSEC2ListingStatusClosed, }; typedef NS_ENUM(NSInteger, AWSEC2LocalGatewayRouteState) { AWSEC2LocalGatewayRouteStateUnknown, AWSEC2LocalGatewayRouteStatePending, AWSEC2LocalGatewayRouteStateActive, AWSEC2LocalGatewayRouteStateBlackhole, AWSEC2LocalGatewayRouteStateDeleting, AWSEC2LocalGatewayRouteStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2LocalGatewayRouteTableMode) { AWSEC2LocalGatewayRouteTableModeUnknown, AWSEC2LocalGatewayRouteTableModeDirectVpcRouting, AWSEC2LocalGatewayRouteTableModeCoip, }; typedef NS_ENUM(NSInteger, AWSEC2LocalGatewayRouteType) { AWSEC2LocalGatewayRouteTypeUnknown, AWSEC2LocalGatewayRouteTypeStatic, AWSEC2LocalGatewayRouteTypePropagated, }; typedef NS_ENUM(NSInteger, AWSEC2LocalStorage) { AWSEC2LocalStorageUnknown, AWSEC2LocalStorageIncluded, AWSEC2LocalStorageRequired, AWSEC2LocalStorageExcluded, }; typedef NS_ENUM(NSInteger, AWSEC2LocalStorageType) { AWSEC2LocalStorageTypeUnknown, AWSEC2LocalStorageTypeHdd, AWSEC2LocalStorageTypeSsd, }; typedef NS_ENUM(NSInteger, AWSEC2LocationType) { AWSEC2LocationTypeUnknown, AWSEC2LocationTypeRegion, AWSEC2LocationTypeAvailabilityZone, AWSEC2LocationTypeAvailabilityZoneId, }; typedef NS_ENUM(NSInteger, AWSEC2LogDestinationType) { AWSEC2LogDestinationTypeUnknown, AWSEC2LogDestinationTypeCloudWatchLogs, AWSEC2LogDestinationTypeS3, AWSEC2LogDestinationTypeKinesisDataFirehose, }; typedef NS_ENUM(NSInteger, AWSEC2MarketType) { AWSEC2MarketTypeUnknown, AWSEC2MarketTypeSpot, }; typedef NS_ENUM(NSInteger, AWSEC2MembershipType) { AWSEC2MembershipTypeUnknown, AWSEC2MembershipTypeStatic, AWSEC2MembershipTypeIgmp, }; typedef NS_ENUM(NSInteger, AWSEC2MetricType) { AWSEC2MetricTypeUnknown, AWSEC2MetricTypeAggregateLatency, }; typedef NS_ENUM(NSInteger, AWSEC2ModifyAvailabilityZoneOptInStatus) { AWSEC2ModifyAvailabilityZoneOptInStatusUnknown, AWSEC2ModifyAvailabilityZoneOptInStatusOptedIn, AWSEC2ModifyAvailabilityZoneOptInStatusNotOptedIn, }; typedef NS_ENUM(NSInteger, AWSEC2MonitoringState) { AWSEC2MonitoringStateUnknown, AWSEC2MonitoringStateDisabled, AWSEC2MonitoringStateDisabling, AWSEC2MonitoringStateEnabled, AWSEC2MonitoringStatePending, }; typedef NS_ENUM(NSInteger, AWSEC2MoveStatus) { AWSEC2MoveStatusUnknown, AWSEC2MoveStatusMovingToVpc, AWSEC2MoveStatusRestoringToClassic, }; typedef NS_ENUM(NSInteger, AWSEC2MulticastSupportValue) { AWSEC2MulticastSupportValueUnknown, AWSEC2MulticastSupportValueEnable, AWSEC2MulticastSupportValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2NatGatewayAddressStatus) { AWSEC2NatGatewayAddressStatusUnknown, AWSEC2NatGatewayAddressStatusAssigning, AWSEC2NatGatewayAddressStatusUnassigning, AWSEC2NatGatewayAddressStatusAssociating, AWSEC2NatGatewayAddressStatusDisassociating, AWSEC2NatGatewayAddressStatusSucceeded, AWSEC2NatGatewayAddressStatusFailed, }; typedef NS_ENUM(NSInteger, AWSEC2NatGatewayState) { AWSEC2NatGatewayStateUnknown, AWSEC2NatGatewayStatePending, AWSEC2NatGatewayStateFailed, AWSEC2NatGatewayStateAvailable, AWSEC2NatGatewayStateDeleting, AWSEC2NatGatewayStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2NetworkInterfaceAttribute) { AWSEC2NetworkInterfaceAttributeUnknown, AWSEC2NetworkInterfaceAttributeDescription, AWSEC2NetworkInterfaceAttributeGroupSet, AWSEC2NetworkInterfaceAttributeSourceDestCheck, AWSEC2NetworkInterfaceAttributeAttachment, }; typedef NS_ENUM(NSInteger, AWSEC2NetworkInterfaceCreationType) { AWSEC2NetworkInterfaceCreationTypeUnknown, AWSEC2NetworkInterfaceCreationTypeEfa, AWSEC2NetworkInterfaceCreationTypeBranch, AWSEC2NetworkInterfaceCreationTypeTrunk, }; typedef NS_ENUM(NSInteger, AWSEC2NetworkInterfacePermissionStateCode) { AWSEC2NetworkInterfacePermissionStateCodeUnknown, AWSEC2NetworkInterfacePermissionStateCodePending, AWSEC2NetworkInterfacePermissionStateCodeGranted, AWSEC2NetworkInterfacePermissionStateCodeRevoking, AWSEC2NetworkInterfacePermissionStateCodeRevoked, }; typedef NS_ENUM(NSInteger, AWSEC2NetworkInterfaceStatus) { AWSEC2NetworkInterfaceStatusUnknown, AWSEC2NetworkInterfaceStatusAvailable, AWSEC2NetworkInterfaceStatusAssociated, AWSEC2NetworkInterfaceStatusAttaching, AWSEC2NetworkInterfaceStatusInUse, AWSEC2NetworkInterfaceStatusDetaching, }; typedef NS_ENUM(NSInteger, AWSEC2NetworkInterfaceType) { AWSEC2NetworkInterfaceTypeUnknown, AWSEC2NetworkInterfaceTypeInterface, AWSEC2NetworkInterfaceTypeNatGateway, AWSEC2NetworkInterfaceTypeEfa, AWSEC2NetworkInterfaceTypeTrunk, AWSEC2NetworkInterfaceTypeLoadBalancer, AWSEC2NetworkInterfaceTypeNetworkLoadBalancer, AWSEC2NetworkInterfaceTypeVpcEndpoint, AWSEC2NetworkInterfaceTypeBranch, AWSEC2NetworkInterfaceTypeTransitGateway, AWSEC2NetworkInterfaceTypeLambda, AWSEC2NetworkInterfaceTypeQuicksight, AWSEC2NetworkInterfaceTypeGlobalAcceleratorManaged, AWSEC2NetworkInterfaceTypeApiGatewayManaged, AWSEC2NetworkInterfaceTypeGatewayLoadBalancer, AWSEC2NetworkInterfaceTypeGatewayLoadBalancerEndpoint, AWSEC2NetworkInterfaceTypeIotRulesManaged, AWSEC2NetworkInterfaceTypeAwsCodestarConnectionsManaged, }; typedef NS_ENUM(NSInteger, AWSEC2NitroEnclavesSupport) { AWSEC2NitroEnclavesSupportUnknown, AWSEC2NitroEnclavesSupportUnsupported, AWSEC2NitroEnclavesSupportSupported, }; typedef NS_ENUM(NSInteger, AWSEC2NitroTpmSupport) { AWSEC2NitroTpmSupportUnknown, AWSEC2NitroTpmSupportUnsupported, AWSEC2NitroTpmSupportSupported, }; typedef NS_ENUM(NSInteger, AWSEC2OfferingClassType) { AWSEC2OfferingClassTypeUnknown, AWSEC2OfferingClassTypeStandard, AWSEC2OfferingClassTypeConvertible, }; typedef NS_ENUM(NSInteger, AWSEC2OfferingTypeValues) { AWSEC2OfferingTypeValuesUnknown, AWSEC2OfferingTypeValuesHeavyUtilization, AWSEC2OfferingTypeValuesMediumUtilization, AWSEC2OfferingTypeValuesLightUtilization, AWSEC2OfferingTypeValuesNoUpfront, AWSEC2OfferingTypeValuesPartialUpfront, AWSEC2OfferingTypeValuesAllUpfront, }; typedef NS_ENUM(NSInteger, AWSEC2OnDemandAllocationStrategy) { AWSEC2OnDemandAllocationStrategyUnknown, AWSEC2OnDemandAllocationStrategyLowestPrice, AWSEC2OnDemandAllocationStrategyPrioritized, }; typedef NS_ENUM(NSInteger, AWSEC2OperationType) { AWSEC2OperationTypeUnknown, AWSEC2OperationTypeAdd, AWSEC2OperationTypeRemove, }; typedef NS_ENUM(NSInteger, AWSEC2PartitionLoadFrequency) { AWSEC2PartitionLoadFrequencyUnknown, AWSEC2PartitionLoadFrequencyNone, AWSEC2PartitionLoadFrequencyDaily, AWSEC2PartitionLoadFrequencyWeekly, AWSEC2PartitionLoadFrequencyMonthly, }; typedef NS_ENUM(NSInteger, AWSEC2PayerResponsibility) { AWSEC2PayerResponsibilityUnknown, AWSEC2PayerResponsibilityServiceOwner, }; typedef NS_ENUM(NSInteger, AWSEC2PaymentOption) { AWSEC2PaymentOptionUnknown, AWSEC2PaymentOptionAllUpfront, AWSEC2PaymentOptionPartialUpfront, AWSEC2PaymentOptionNoUpfront, }; typedef NS_ENUM(NSInteger, AWSEC2PeriodType) { AWSEC2PeriodTypeUnknown, AWSEC2PeriodTypeFiveMinutes, AWSEC2PeriodTypeFifteenMinutes, AWSEC2PeriodTypeOneHour, AWSEC2PeriodTypeThreeHours, AWSEC2PeriodTypeOneDay, AWSEC2PeriodTypeOneWeek, }; typedef NS_ENUM(NSInteger, AWSEC2PermissionGroup) { AWSEC2PermissionGroupUnknown, AWSEC2PermissionGroupAll, }; typedef NS_ENUM(NSInteger, AWSEC2PlacementGroupState) { AWSEC2PlacementGroupStateUnknown, AWSEC2PlacementGroupStatePending, AWSEC2PlacementGroupStateAvailable, AWSEC2PlacementGroupStateDeleting, AWSEC2PlacementGroupStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2PlacementGroupStrategy) { AWSEC2PlacementGroupStrategyUnknown, AWSEC2PlacementGroupStrategyCluster, AWSEC2PlacementGroupStrategyPartition, AWSEC2PlacementGroupStrategySpread, }; typedef NS_ENUM(NSInteger, AWSEC2PlacementStrategy) { AWSEC2PlacementStrategyUnknown, AWSEC2PlacementStrategyCluster, AWSEC2PlacementStrategySpread, AWSEC2PlacementStrategyPartition, }; typedef NS_ENUM(NSInteger, AWSEC2PlatformValues) { AWSEC2PlatformValuesUnknown, AWSEC2PlatformValuesWindows, }; typedef NS_ENUM(NSInteger, AWSEC2PrefixListState) { AWSEC2PrefixListStateUnknown, AWSEC2PrefixListStateCreateInProgress, AWSEC2PrefixListStateCreateComplete, AWSEC2PrefixListStateCreateFailed, AWSEC2PrefixListStateModifyInProgress, AWSEC2PrefixListStateModifyComplete, AWSEC2PrefixListStateModifyFailed, AWSEC2PrefixListStateRestoreInProgress, AWSEC2PrefixListStateRestoreComplete, AWSEC2PrefixListStateRestoreFailed, AWSEC2PrefixListStateDeleteInProgress, AWSEC2PrefixListStateDeleteComplete, AWSEC2PrefixListStateDeleteFailed, }; typedef NS_ENUM(NSInteger, AWSEC2PrincipalType) { AWSEC2PrincipalTypeUnknown, AWSEC2PrincipalTypeAll, AWSEC2PrincipalTypeService, AWSEC2PrincipalTypeOrganizationUnit, AWSEC2PrincipalTypeAccount, AWSEC2PrincipalTypeUser, AWSEC2PrincipalTypeRole, }; typedef NS_ENUM(NSInteger, AWSEC2ProductCodeValues) { AWSEC2ProductCodeValuesUnknown, AWSEC2ProductCodeValuesDevpay, AWSEC2ProductCodeValuesMarketplace, }; typedef NS_ENUM(NSInteger, AWSEC2Protocols) { AWSEC2ProtocolsUnknown, AWSEC2ProtocolsTcp, AWSEC2ProtocolsUdp, }; typedef NS_ENUM(NSInteger, AWSEC2ProtocolValue) { AWSEC2ProtocolValueUnknown, AWSEC2ProtocolValueGre, }; typedef NS_ENUM(NSInteger, AWSEC2RIProductDescription) { AWSEC2RIProductDescriptionUnknown, AWSEC2RIProductDescriptionLinuxUNIX, AWSEC2RIProductDescriptionLinuxUNIXAmazonVPC, AWSEC2RIProductDescriptionWindows, AWSEC2RIProductDescriptionWindowsAmazonVPC, }; typedef NS_ENUM(NSInteger, AWSEC2RecurringChargeFrequency) { AWSEC2RecurringChargeFrequencyUnknown, AWSEC2RecurringChargeFrequencyHourly, }; typedef NS_ENUM(NSInteger, AWSEC2ReplaceRootVolumeTaskState) { AWSEC2ReplaceRootVolumeTaskStateUnknown, AWSEC2ReplaceRootVolumeTaskStatePending, AWSEC2ReplaceRootVolumeTaskStateInProgress, AWSEC2ReplaceRootVolumeTaskStateFailing, AWSEC2ReplaceRootVolumeTaskStateSucceeded, AWSEC2ReplaceRootVolumeTaskStateFailed, AWSEC2ReplaceRootVolumeTaskStateFailedDetached, }; typedef NS_ENUM(NSInteger, AWSEC2ReplacementStrategy) { AWSEC2ReplacementStrategyUnknown, AWSEC2ReplacementStrategyLaunch, AWSEC2ReplacementStrategyLaunchBeforeTerminate, }; typedef NS_ENUM(NSInteger, AWSEC2ReportInstanceReasonCodes) { AWSEC2ReportInstanceReasonCodesUnknown, AWSEC2ReportInstanceReasonCodesInstanceStuckInState, AWSEC2ReportInstanceReasonCodesUnresponsive, AWSEC2ReportInstanceReasonCodesNotAcceptingCredentials, AWSEC2ReportInstanceReasonCodesPasswordNotAvailable, AWSEC2ReportInstanceReasonCodesPerformanceNetwork, AWSEC2ReportInstanceReasonCodesPerformanceInstanceStore, AWSEC2ReportInstanceReasonCodesPerformanceEBSVolume, AWSEC2ReportInstanceReasonCodesPerformanceOther, AWSEC2ReportInstanceReasonCodesOther, }; typedef NS_ENUM(NSInteger, AWSEC2ReportStatusType) { AWSEC2ReportStatusTypeUnknown, AWSEC2ReportStatusTypeOK, AWSEC2ReportStatusTypeImpaired, }; typedef NS_ENUM(NSInteger, AWSEC2ReservationState) { AWSEC2ReservationStateUnknown, AWSEC2ReservationStatePaymentPending, AWSEC2ReservationStatePaymentFailed, AWSEC2ReservationStateActive, AWSEC2ReservationStateRetired, }; typedef NS_ENUM(NSInteger, AWSEC2ReservedInstanceState) { AWSEC2ReservedInstanceStateUnknown, AWSEC2ReservedInstanceStatePaymentPending, AWSEC2ReservedInstanceStateActive, AWSEC2ReservedInstanceStatePaymentFailed, AWSEC2ReservedInstanceStateRetired, AWSEC2ReservedInstanceStateQueued, AWSEC2ReservedInstanceStateQueuedDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2ResetFpgaImageAttributeName) { AWSEC2ResetFpgaImageAttributeNameUnknown, AWSEC2ResetFpgaImageAttributeNameLoadPermission, }; typedef NS_ENUM(NSInteger, AWSEC2ResetImageAttributeName) { AWSEC2ResetImageAttributeNameUnknown, AWSEC2ResetImageAttributeNameLaunchPermission, }; typedef NS_ENUM(NSInteger, AWSEC2ResourceType) { AWSEC2ResourceTypeUnknown, AWSEC2ResourceTypeCapacityReservation, AWSEC2ResourceTypeClientVpnEndpoint, AWSEC2ResourceTypeCustomerGateway, AWSEC2ResourceTypeCarrierGateway, AWSEC2ResourceTypeCoipPool, AWSEC2ResourceTypeDedicatedHost, AWSEC2ResourceTypeDHCPOptions, AWSEC2ResourceTypeEgressOnlyInternetGateway, AWSEC2ResourceTypeElasticIp, AWSEC2ResourceTypeElasticGpu, AWSEC2ResourceTypeExportImageTask, AWSEC2ResourceTypeExportInstanceTask, AWSEC2ResourceTypeFleet, AWSEC2ResourceTypeFpgaImage, AWSEC2ResourceTypeHostReservation, AWSEC2ResourceTypeImage, AWSEC2ResourceTypeImportImageTask, AWSEC2ResourceTypeImportSnapshotTask, AWSEC2ResourceTypeInstance, AWSEC2ResourceTypeInstanceEventWindow, AWSEC2ResourceTypeInternetGateway, AWSEC2ResourceTypeIpam, AWSEC2ResourceTypeIpamPool, AWSEC2ResourceTypeIpamScope, AWSEC2ResourceTypeIpv4poolEc2, AWSEC2ResourceTypeIpv6poolEc2, AWSEC2ResourceTypeKeyPair, AWSEC2ResourceTypeLaunchTemplate, AWSEC2ResourceTypeLocalGateway, AWSEC2ResourceTypeLocalGatewayRouteTable, AWSEC2ResourceTypeLocalGatewayVirtualInterface, AWSEC2ResourceTypeLocalGatewayVirtualInterfaceGroup, AWSEC2ResourceTypeLocalGatewayRouteTableVpcAssociation, AWSEC2ResourceTypeLocalGatewayRouteTableVirtualInterfaceGroupAssociation, AWSEC2ResourceTypeNatgateway, AWSEC2ResourceTypeNetworkACL, AWSEC2ResourceTypeNetworkInterface, AWSEC2ResourceTypeNetworkInsightsAnalysis, AWSEC2ResourceTypeNetworkInsightsPath, AWSEC2ResourceTypeNetworkInsightsAccessScope, AWSEC2ResourceTypeNetworkInsightsAccessScopeAnalysis, AWSEC2ResourceTypePlacementGroup, AWSEC2ResourceTypePrefixList, AWSEC2ResourceTypeReplaceRootVolumeTask, AWSEC2ResourceTypeReservedInstances, AWSEC2ResourceTypeRouteTable, AWSEC2ResourceTypeSecurityGroup, AWSEC2ResourceTypeSecurityGroupRule, AWSEC2ResourceTypeSnapshot, AWSEC2ResourceTypeSpotFleetRequest, AWSEC2ResourceTypeSpotInstancesRequest, AWSEC2ResourceTypeSubnet, AWSEC2ResourceTypeSubnetCidrReservation, AWSEC2ResourceTypeTrafficMirrorFilter, AWSEC2ResourceTypeTrafficMirrorSession, AWSEC2ResourceTypeTrafficMirrorTarget, AWSEC2ResourceTypeTransitGateway, AWSEC2ResourceTypeTransitGatewayAttachment, AWSEC2ResourceTypeTransitGatewayConnectPeer, AWSEC2ResourceTypeTransitGatewayMulticastDomain, AWSEC2ResourceTypeTransitGatewayPolicyTable, AWSEC2ResourceTypeTransitGatewayRouteTable, AWSEC2ResourceTypeTransitGatewayRouteTableAnnouncement, AWSEC2ResourceTypeVolume, AWSEC2ResourceTypeVPC, AWSEC2ResourceTypeVpcEndpoint, AWSEC2ResourceTypeVpcEndpointConnection, AWSEC2ResourceTypeVpcEndpointService, AWSEC2ResourceTypeVpcEndpointServicePermission, AWSEC2ResourceTypeVpcPeeringConnection, AWSEC2ResourceTypeVpnConnection, AWSEC2ResourceTypeVpnGateway, AWSEC2ResourceTypeVpcFlowLog, AWSEC2ResourceTypeCapacityReservationFleet, AWSEC2ResourceTypeTrafficMirrorFilterRule, AWSEC2ResourceTypeVpcEndpointConnectionDeviceType, AWSEC2ResourceTypeVerifiedAccessInstance, AWSEC2ResourceTypeVerifiedAccessGroup, AWSEC2ResourceTypeVerifiedAccessEndpoint, AWSEC2ResourceTypeVerifiedAccessPolicy, AWSEC2ResourceTypeVerifiedAccessTrustProvider, AWSEC2ResourceTypeVpnConnectionDeviceType, AWSEC2ResourceTypeVpcBlockPublicAccessExclusion, AWSEC2ResourceTypeIpamResourceDiscovery, AWSEC2ResourceTypeIpamResourceDiscoveryAssociation, AWSEC2ResourceTypeInstanceConnectEndpoint, }; typedef NS_ENUM(NSInteger, AWSEC2RootDeviceType) { AWSEC2RootDeviceTypeUnknown, AWSEC2RootDeviceTypeEBS, AWSEC2RootDeviceTypeInstanceStore, }; typedef NS_ENUM(NSInteger, AWSEC2RouteOrigin) { AWSEC2RouteOriginUnknown, AWSEC2RouteOriginCreateRouteTable, AWSEC2RouteOriginCreateRoute, AWSEC2RouteOriginEnableVgwRoutePropagation, }; typedef NS_ENUM(NSInteger, AWSEC2RouteState) { AWSEC2RouteStateUnknown, AWSEC2RouteStateActive, AWSEC2RouteStateBlackhole, }; typedef NS_ENUM(NSInteger, AWSEC2RouteTableAssociationStateCode) { AWSEC2RouteTableAssociationStateCodeUnknown, AWSEC2RouteTableAssociationStateCodeAssociating, AWSEC2RouteTableAssociationStateCodeAssociated, AWSEC2RouteTableAssociationStateCodeDisassociating, AWSEC2RouteTableAssociationStateCodeDisassociated, AWSEC2RouteTableAssociationStateCodeFailed, }; typedef NS_ENUM(NSInteger, AWSEC2RuleAction) { AWSEC2RuleActionUnknown, AWSEC2RuleActionAllow, AWSEC2RuleActionDeny, }; typedef NS_ENUM(NSInteger, AWSEC2SelfServicePortal) { AWSEC2SelfServicePortalUnknown, AWSEC2SelfServicePortalEnabled, AWSEC2SelfServicePortalDisabled, }; typedef NS_ENUM(NSInteger, AWSEC2ServiceConnectivityType) { AWSEC2ServiceConnectivityTypeUnknown, AWSEC2ServiceConnectivityTypeIpv4, AWSEC2ServiceConnectivityTypeIpv6, }; typedef NS_ENUM(NSInteger, AWSEC2ServiceState) { AWSEC2ServiceStateUnknown, AWSEC2ServiceStatePending, AWSEC2ServiceStateAvailable, AWSEC2ServiceStateDeleting, AWSEC2ServiceStateDeleted, AWSEC2ServiceStateFailed, }; typedef NS_ENUM(NSInteger, AWSEC2ServiceType) { AWSEC2ServiceTypeUnknown, AWSEC2ServiceTypeInterface, AWSEC2ServiceTypeGateway, AWSEC2ServiceTypeGatewayLoadBalancer, }; typedef NS_ENUM(NSInteger, AWSEC2ShutdownBehavior) { AWSEC2ShutdownBehaviorUnknown, AWSEC2ShutdownBehaviorStop, AWSEC2ShutdownBehaviorTerminate, }; typedef NS_ENUM(NSInteger, AWSEC2SnapshotAttributeName) { AWSEC2SnapshotAttributeNameUnknown, AWSEC2SnapshotAttributeNameProductCodes, AWSEC2SnapshotAttributeNameCreateVolumePermission, }; typedef NS_ENUM(NSInteger, AWSEC2SnapshotState) { AWSEC2SnapshotStateUnknown, AWSEC2SnapshotStatePending, AWSEC2SnapshotStateCompleted, AWSEC2SnapshotStateError, AWSEC2SnapshotStateRecoverable, AWSEC2SnapshotStateRecovering, }; typedef NS_ENUM(NSInteger, AWSEC2SpotAllocationStrategy) { AWSEC2SpotAllocationStrategyUnknown, AWSEC2SpotAllocationStrategyLowestPrice, AWSEC2SpotAllocationStrategyDiversified, AWSEC2SpotAllocationStrategyCapacityOptimized, AWSEC2SpotAllocationStrategyCapacityOptimizedPrioritized, AWSEC2SpotAllocationStrategyPriceCapacityOptimized, }; typedef NS_ENUM(NSInteger, AWSEC2SpotInstanceInterruptionBehavior) { AWSEC2SpotInstanceInterruptionBehaviorUnknown, AWSEC2SpotInstanceInterruptionBehaviorHibernate, AWSEC2SpotInstanceInterruptionBehaviorStop, AWSEC2SpotInstanceInterruptionBehaviorTerminate, }; typedef NS_ENUM(NSInteger, AWSEC2SpotInstanceState) { AWSEC2SpotInstanceStateUnknown, AWSEC2SpotInstanceStateOpen, AWSEC2SpotInstanceStateActive, AWSEC2SpotInstanceStateClosed, AWSEC2SpotInstanceStateCancelled, AWSEC2SpotInstanceStateFailed, AWSEC2SpotInstanceStateDisabled, }; typedef NS_ENUM(NSInteger, AWSEC2SpotInstanceType) { AWSEC2SpotInstanceTypeUnknown, AWSEC2SpotInstanceTypeOneTime, AWSEC2SpotInstanceTypePersistent, }; typedef NS_ENUM(NSInteger, AWSEC2SpreadLevel) { AWSEC2SpreadLevelUnknown, AWSEC2SpreadLevelHost, AWSEC2SpreadLevelRack, }; typedef NS_ENUM(NSInteger, AWSEC2State) { AWSEC2StateUnknown, AWSEC2StatePendingAcceptance, AWSEC2StatePending, AWSEC2StateAvailable, AWSEC2StateDeleting, AWSEC2StateDeleted, AWSEC2StateRejected, AWSEC2StateFailed, AWSEC2StateExpired, }; typedef NS_ENUM(NSInteger, AWSEC2StaticSourcesSupportValue) { AWSEC2StaticSourcesSupportValueUnknown, AWSEC2StaticSourcesSupportValueEnable, AWSEC2StaticSourcesSupportValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2StatisticType) { AWSEC2StatisticTypeUnknown, AWSEC2StatisticTypeP50, }; typedef NS_ENUM(NSInteger, AWSEC2Status) { AWSEC2StatusUnknown, AWSEC2StatusMoveInProgress, AWSEC2StatusInVpc, AWSEC2StatusInClassic, }; typedef NS_ENUM(NSInteger, AWSEC2StatusName) { AWSEC2StatusNameUnknown, AWSEC2StatusNameReachability, }; typedef NS_ENUM(NSInteger, AWSEC2StatusType) { AWSEC2StatusTypeUnknown, AWSEC2StatusTypePassed, AWSEC2StatusTypeFailed, AWSEC2StatusTypeInsufficientData, AWSEC2StatusTypeInitializing, }; typedef NS_ENUM(NSInteger, AWSEC2StorageTier) { AWSEC2StorageTierUnknown, AWSEC2StorageTierArchive, AWSEC2StorageTierStandard, }; typedef NS_ENUM(NSInteger, AWSEC2SubnetCidrBlockStateCode) { AWSEC2SubnetCidrBlockStateCodeUnknown, AWSEC2SubnetCidrBlockStateCodeAssociating, AWSEC2SubnetCidrBlockStateCodeAssociated, AWSEC2SubnetCidrBlockStateCodeDisassociating, AWSEC2SubnetCidrBlockStateCodeDisassociated, AWSEC2SubnetCidrBlockStateCodeFailing, AWSEC2SubnetCidrBlockStateCodeFailed, }; typedef NS_ENUM(NSInteger, AWSEC2SubnetCidrReservationType) { AWSEC2SubnetCidrReservationTypeUnknown, AWSEC2SubnetCidrReservationTypePrefix, AWSEC2SubnetCidrReservationTypeExplicit, }; typedef NS_ENUM(NSInteger, AWSEC2SubnetState) { AWSEC2SubnetStateUnknown, AWSEC2SubnetStatePending, AWSEC2SubnetStateAvailable, }; typedef NS_ENUM(NSInteger, AWSEC2SummaryStatus) { AWSEC2SummaryStatusUnknown, AWSEC2SummaryStatusOK, AWSEC2SummaryStatusImpaired, AWSEC2SummaryStatusInsufficientData, AWSEC2SummaryStatusNotApplicable, AWSEC2SummaryStatusInitializing, }; typedef NS_ENUM(NSInteger, AWSEC2SupportedAdditionalProcessorFeature) { AWSEC2SupportedAdditionalProcessorFeatureUnknown, AWSEC2SupportedAdditionalProcessorFeatureAmdSevSnp, }; typedef NS_ENUM(NSInteger, AWSEC2TargetCapacityUnitType) { AWSEC2TargetCapacityUnitTypeUnknown, AWSEC2TargetCapacityUnitTypeVcpu, AWSEC2TargetCapacityUnitTypeMemoryMib, AWSEC2TargetCapacityUnitTypeUnits, }; typedef NS_ENUM(NSInteger, AWSEC2TargetStorageTier) { AWSEC2TargetStorageTierUnknown, AWSEC2TargetStorageTierArchive, }; typedef NS_ENUM(NSInteger, AWSEC2TelemetryStatus) { AWSEC2TelemetryStatusUnknown, AWSEC2TelemetryStatusUp, AWSEC2TelemetryStatusDown, }; typedef NS_ENUM(NSInteger, AWSEC2Tenancy) { AWSEC2TenancyUnknown, AWSEC2TenancyDefault, AWSEC2TenancyDedicated, AWSEC2TenancyHost, }; typedef NS_ENUM(NSInteger, AWSEC2TieringOperationStatus) { AWSEC2TieringOperationStatusUnknown, AWSEC2TieringOperationStatusArchivalInProgress, AWSEC2TieringOperationStatusArchivalCompleted, AWSEC2TieringOperationStatusArchivalFailed, AWSEC2TieringOperationStatusTemporaryRestoreInProgress, AWSEC2TieringOperationStatusTemporaryRestoreCompleted, AWSEC2TieringOperationStatusTemporaryRestoreFailed, AWSEC2TieringOperationStatusPermanentRestoreInProgress, AWSEC2TieringOperationStatusPermanentRestoreCompleted, AWSEC2TieringOperationStatusPermanentRestoreFailed, }; typedef NS_ENUM(NSInteger, AWSEC2TpmSupportValues) { AWSEC2TpmSupportValuesUnknown, AWSEC2TpmSupportValuesV20, }; typedef NS_ENUM(NSInteger, AWSEC2TrafficDirection) { AWSEC2TrafficDirectionUnknown, AWSEC2TrafficDirectionIngress, AWSEC2TrafficDirectionEgress, }; typedef NS_ENUM(NSInteger, AWSEC2TrafficMirrorFilterRuleField) { AWSEC2TrafficMirrorFilterRuleFieldUnknown, AWSEC2TrafficMirrorFilterRuleFieldDestinationPortRange, AWSEC2TrafficMirrorFilterRuleFieldSourcePortRange, AWSEC2TrafficMirrorFilterRuleFieldProtocol, AWSEC2TrafficMirrorFilterRuleFieldDescription, }; typedef NS_ENUM(NSInteger, AWSEC2TrafficMirrorNetworkService) { AWSEC2TrafficMirrorNetworkServiceUnknown, AWSEC2TrafficMirrorNetworkServiceAmazonDns, }; typedef NS_ENUM(NSInteger, AWSEC2TrafficMirrorRuleAction) { AWSEC2TrafficMirrorRuleActionUnknown, AWSEC2TrafficMirrorRuleActionAccept, AWSEC2TrafficMirrorRuleActionReject, }; typedef NS_ENUM(NSInteger, AWSEC2TrafficMirrorSessionField) { AWSEC2TrafficMirrorSessionFieldUnknown, AWSEC2TrafficMirrorSessionFieldPacketLength, AWSEC2TrafficMirrorSessionFieldDescription, AWSEC2TrafficMirrorSessionFieldVirtualNetworkId, }; typedef NS_ENUM(NSInteger, AWSEC2TrafficMirrorTargetType) { AWSEC2TrafficMirrorTargetTypeUnknown, AWSEC2TrafficMirrorTargetTypeNetworkInterface, AWSEC2TrafficMirrorTargetTypeNetworkLoadBalancer, AWSEC2TrafficMirrorTargetTypeGatewayLoadBalancerEndpoint, }; typedef NS_ENUM(NSInteger, AWSEC2TrafficType) { AWSEC2TrafficTypeUnknown, AWSEC2TrafficTypeAccept, AWSEC2TrafficTypeReject, AWSEC2TrafficTypeAll, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayAssociationState) { AWSEC2TransitGatewayAssociationStateUnknown, AWSEC2TransitGatewayAssociationStateAssociating, AWSEC2TransitGatewayAssociationStateAssociated, AWSEC2TransitGatewayAssociationStateDisassociating, AWSEC2TransitGatewayAssociationStateDisassociated, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayAttachmentResourceType) { AWSEC2TransitGatewayAttachmentResourceTypeUnknown, AWSEC2TransitGatewayAttachmentResourceTypeVPC, AWSEC2TransitGatewayAttachmentResourceTypeVpn, AWSEC2TransitGatewayAttachmentResourceTypeDirectConnectGateway, AWSEC2TransitGatewayAttachmentResourceTypeConnect, AWSEC2TransitGatewayAttachmentResourceTypePeering, AWSEC2TransitGatewayAttachmentResourceTypeTgwPeering, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayAttachmentState) { AWSEC2TransitGatewayAttachmentStateUnknown, AWSEC2TransitGatewayAttachmentStateInitiating, AWSEC2TransitGatewayAttachmentStateInitiatingRequest, AWSEC2TransitGatewayAttachmentStatePendingAcceptance, AWSEC2TransitGatewayAttachmentStateRollingBack, AWSEC2TransitGatewayAttachmentStatePending, AWSEC2TransitGatewayAttachmentStateAvailable, AWSEC2TransitGatewayAttachmentStateModifying, AWSEC2TransitGatewayAttachmentStateDeleting, AWSEC2TransitGatewayAttachmentStateDeleted, AWSEC2TransitGatewayAttachmentStateFailed, AWSEC2TransitGatewayAttachmentStateRejected, AWSEC2TransitGatewayAttachmentStateRejecting, AWSEC2TransitGatewayAttachmentStateFailing, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayConnectPeerState) { AWSEC2TransitGatewayConnectPeerStateUnknown, AWSEC2TransitGatewayConnectPeerStatePending, AWSEC2TransitGatewayConnectPeerStateAvailable, AWSEC2TransitGatewayConnectPeerStateDeleting, AWSEC2TransitGatewayConnectPeerStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayMulitcastDomainAssociationState) { AWSEC2TransitGatewayMulitcastDomainAssociationStateUnknown, AWSEC2TransitGatewayMulitcastDomainAssociationStatePendingAcceptance, AWSEC2TransitGatewayMulitcastDomainAssociationStateAssociating, AWSEC2TransitGatewayMulitcastDomainAssociationStateAssociated, AWSEC2TransitGatewayMulitcastDomainAssociationStateDisassociating, AWSEC2TransitGatewayMulitcastDomainAssociationStateDisassociated, AWSEC2TransitGatewayMulitcastDomainAssociationStateRejected, AWSEC2TransitGatewayMulitcastDomainAssociationStateFailed, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayMulticastDomainState) { AWSEC2TransitGatewayMulticastDomainStateUnknown, AWSEC2TransitGatewayMulticastDomainStatePending, AWSEC2TransitGatewayMulticastDomainStateAvailable, AWSEC2TransitGatewayMulticastDomainStateDeleting, AWSEC2TransitGatewayMulticastDomainStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayPolicyTableState) { AWSEC2TransitGatewayPolicyTableStateUnknown, AWSEC2TransitGatewayPolicyTableStatePending, AWSEC2TransitGatewayPolicyTableStateAvailable, AWSEC2TransitGatewayPolicyTableStateDeleting, AWSEC2TransitGatewayPolicyTableStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayPrefixListReferenceState) { AWSEC2TransitGatewayPrefixListReferenceStateUnknown, AWSEC2TransitGatewayPrefixListReferenceStatePending, AWSEC2TransitGatewayPrefixListReferenceStateAvailable, AWSEC2TransitGatewayPrefixListReferenceStateModifying, AWSEC2TransitGatewayPrefixListReferenceStateDeleting, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayPropagationState) { AWSEC2TransitGatewayPropagationStateUnknown, AWSEC2TransitGatewayPropagationStateEnabling, AWSEC2TransitGatewayPropagationStateEnabled, AWSEC2TransitGatewayPropagationStateDisabling, AWSEC2TransitGatewayPropagationStateDisabled, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayRouteState) { AWSEC2TransitGatewayRouteStateUnknown, AWSEC2TransitGatewayRouteStatePending, AWSEC2TransitGatewayRouteStateActive, AWSEC2TransitGatewayRouteStateBlackhole, AWSEC2TransitGatewayRouteStateDeleting, AWSEC2TransitGatewayRouteStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayRouteTableAnnouncementDirection) { AWSEC2TransitGatewayRouteTableAnnouncementDirectionUnknown, AWSEC2TransitGatewayRouteTableAnnouncementDirectionOutgoing, AWSEC2TransitGatewayRouteTableAnnouncementDirectionIncoming, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayRouteTableAnnouncementState) { AWSEC2TransitGatewayRouteTableAnnouncementStateUnknown, AWSEC2TransitGatewayRouteTableAnnouncementStateAvailable, AWSEC2TransitGatewayRouteTableAnnouncementStatePending, AWSEC2TransitGatewayRouteTableAnnouncementStateFailing, AWSEC2TransitGatewayRouteTableAnnouncementStateFailed, AWSEC2TransitGatewayRouteTableAnnouncementStateDeleting, AWSEC2TransitGatewayRouteTableAnnouncementStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayRouteTableState) { AWSEC2TransitGatewayRouteTableStateUnknown, AWSEC2TransitGatewayRouteTableStatePending, AWSEC2TransitGatewayRouteTableStateAvailable, AWSEC2TransitGatewayRouteTableStateDeleting, AWSEC2TransitGatewayRouteTableStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayRouteType) { AWSEC2TransitGatewayRouteTypeUnknown, AWSEC2TransitGatewayRouteTypeStatic, AWSEC2TransitGatewayRouteTypePropagated, }; typedef NS_ENUM(NSInteger, AWSEC2TransitGatewayState) { AWSEC2TransitGatewayStateUnknown, AWSEC2TransitGatewayStatePending, AWSEC2TransitGatewayStateAvailable, AWSEC2TransitGatewayStateModifying, AWSEC2TransitGatewayStateDeleting, AWSEC2TransitGatewayStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2TransportProtocol) { AWSEC2TransportProtocolUnknown, AWSEC2TransportProtocolTcp, AWSEC2TransportProtocolUdp, }; typedef NS_ENUM(NSInteger, AWSEC2TrustProviderType) { AWSEC2TrustProviderTypeUnknown, AWSEC2TrustProviderTypeUser, AWSEC2TrustProviderTypeDevice, }; typedef NS_ENUM(NSInteger, AWSEC2TunnelInsideIpVersion) { AWSEC2TunnelInsideIpVersionUnknown, AWSEC2TunnelInsideIpVersionIpv4, AWSEC2TunnelInsideIpVersionIpv6, }; typedef NS_ENUM(NSInteger, AWSEC2UnlimitedSupportedInstanceFamily) { AWSEC2UnlimitedSupportedInstanceFamilyUnknown, AWSEC2UnlimitedSupportedInstanceFamilyT2, AWSEC2UnlimitedSupportedInstanceFamilyT3, AWSEC2UnlimitedSupportedInstanceFamilyT3a, AWSEC2UnlimitedSupportedInstanceFamilyT4g, }; typedef NS_ENUM(NSInteger, AWSEC2UnsuccessfulInstanceCreditSpecificationErrorCode) { AWSEC2UnsuccessfulInstanceCreditSpecificationErrorCodeUnknown, AWSEC2UnsuccessfulInstanceCreditSpecificationErrorCodeInvalidInstanceIDMalformed, AWSEC2UnsuccessfulInstanceCreditSpecificationErrorCodeInvalidInstanceIDNotFound, AWSEC2UnsuccessfulInstanceCreditSpecificationErrorCodeIncorrectInstanceState, AWSEC2UnsuccessfulInstanceCreditSpecificationErrorCodeInstanceCreditSpecificationNotSupported, }; typedef NS_ENUM(NSInteger, AWSEC2UsageClassType) { AWSEC2UsageClassTypeUnknown, AWSEC2UsageClassTypeSpot, AWSEC2UsageClassTypeOnDemand, }; typedef NS_ENUM(NSInteger, AWSEC2UserTrustProviderType) { AWSEC2UserTrustProviderTypeUnknown, AWSEC2UserTrustProviderTypeIamIdentityCenter, AWSEC2UserTrustProviderTypeOidc, }; typedef NS_ENUM(NSInteger, AWSEC2VerifiedAccessEndpointAttachmentType) { AWSEC2VerifiedAccessEndpointAttachmentTypeUnknown, AWSEC2VerifiedAccessEndpointAttachmentTypeVPC, }; typedef NS_ENUM(NSInteger, AWSEC2VerifiedAccessEndpointProtocol) { AWSEC2VerifiedAccessEndpointProtocolUnknown, AWSEC2VerifiedAccessEndpointProtocolHTTP, AWSEC2VerifiedAccessEndpointProtocolHTTPS, }; typedef NS_ENUM(NSInteger, AWSEC2VerifiedAccessEndpointStatusCode) { AWSEC2VerifiedAccessEndpointStatusCodeUnknown, AWSEC2VerifiedAccessEndpointStatusCodePending, AWSEC2VerifiedAccessEndpointStatusCodeActive, AWSEC2VerifiedAccessEndpointStatusCodeUpdating, AWSEC2VerifiedAccessEndpointStatusCodeDeleting, AWSEC2VerifiedAccessEndpointStatusCodeDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2VerifiedAccessEndpointType) { AWSEC2VerifiedAccessEndpointTypeUnknown, AWSEC2VerifiedAccessEndpointTypeLoadBalancer, AWSEC2VerifiedAccessEndpointTypeNetworkInterface, }; typedef NS_ENUM(NSInteger, AWSEC2VerifiedAccessLogDeliveryStatusCode) { AWSEC2VerifiedAccessLogDeliveryStatusCodeUnknown, AWSEC2VerifiedAccessLogDeliveryStatusCodeSuccess, AWSEC2VerifiedAccessLogDeliveryStatusCodeFailed, }; typedef NS_ENUM(NSInteger, AWSEC2VirtualizationType) { AWSEC2VirtualizationTypeUnknown, AWSEC2VirtualizationTypeHVM, AWSEC2VirtualizationTypeParavirtual, }; typedef NS_ENUM(NSInteger, AWSEC2VolumeAttachmentState) { AWSEC2VolumeAttachmentStateUnknown, AWSEC2VolumeAttachmentStateAttaching, AWSEC2VolumeAttachmentStateAttached, AWSEC2VolumeAttachmentStateDetaching, AWSEC2VolumeAttachmentStateDetached, AWSEC2VolumeAttachmentStateBusy, }; typedef NS_ENUM(NSInteger, AWSEC2VolumeAttributeName) { AWSEC2VolumeAttributeNameUnknown, AWSEC2VolumeAttributeNameAutoEnableIO, AWSEC2VolumeAttributeNameProductCodes, }; typedef NS_ENUM(NSInteger, AWSEC2VolumeModificationState) { AWSEC2VolumeModificationStateUnknown, AWSEC2VolumeModificationStateModifying, AWSEC2VolumeModificationStateOptimizing, AWSEC2VolumeModificationStateCompleted, AWSEC2VolumeModificationStateFailed, }; typedef NS_ENUM(NSInteger, AWSEC2VolumeState) { AWSEC2VolumeStateUnknown, AWSEC2VolumeStateCreating, AWSEC2VolumeStateAvailable, AWSEC2VolumeStateInUse, AWSEC2VolumeStateDeleting, AWSEC2VolumeStateDeleted, AWSEC2VolumeStateError, }; typedef NS_ENUM(NSInteger, AWSEC2VolumeStatusInfoStatus) { AWSEC2VolumeStatusInfoStatusUnknown, AWSEC2VolumeStatusInfoStatusOK, AWSEC2VolumeStatusInfoStatusImpaired, AWSEC2VolumeStatusInfoStatusInsufficientData, }; typedef NS_ENUM(NSInteger, AWSEC2VolumeStatusName) { AWSEC2VolumeStatusNameUnknown, AWSEC2VolumeStatusNameIoEnabled, AWSEC2VolumeStatusNameIoPerformance, }; typedef NS_ENUM(NSInteger, AWSEC2VolumeType) { AWSEC2VolumeTypeUnknown, AWSEC2VolumeTypeStandard, AWSEC2VolumeTypeIO1, AWSEC2VolumeTypeIo2, AWSEC2VolumeTypeGp2, AWSEC2VolumeTypeSc1, AWSEC2VolumeTypeSt1, AWSEC2VolumeTypeGp3, }; typedef NS_ENUM(NSInteger, AWSEC2VpcAttributeName) { AWSEC2VpcAttributeNameUnknown, AWSEC2VpcAttributeNameEnableDNSSupport, AWSEC2VpcAttributeNameEnableDNSHostnames, AWSEC2VpcAttributeNameEnableNetworkAddressUsageMetrics, }; typedef NS_ENUM(NSInteger, AWSEC2VpcCidrBlockStateCode) { AWSEC2VpcCidrBlockStateCodeUnknown, AWSEC2VpcCidrBlockStateCodeAssociating, AWSEC2VpcCidrBlockStateCodeAssociated, AWSEC2VpcCidrBlockStateCodeDisassociating, AWSEC2VpcCidrBlockStateCodeDisassociated, AWSEC2VpcCidrBlockStateCodeFailing, AWSEC2VpcCidrBlockStateCodeFailed, }; typedef NS_ENUM(NSInteger, AWSEC2VpcEndpointType) { AWSEC2VpcEndpointTypeUnknown, AWSEC2VpcEndpointTypeInterface, AWSEC2VpcEndpointTypeGateway, AWSEC2VpcEndpointTypeGatewayLoadBalancer, }; typedef NS_ENUM(NSInteger, AWSEC2VpcPeeringConnectionStateReasonCode) { AWSEC2VpcPeeringConnectionStateReasonCodeUnknown, AWSEC2VpcPeeringConnectionStateReasonCodeInitiatingRequest, AWSEC2VpcPeeringConnectionStateReasonCodePendingAcceptance, AWSEC2VpcPeeringConnectionStateReasonCodeActive, AWSEC2VpcPeeringConnectionStateReasonCodeDeleted, AWSEC2VpcPeeringConnectionStateReasonCodeRejected, AWSEC2VpcPeeringConnectionStateReasonCodeFailed, AWSEC2VpcPeeringConnectionStateReasonCodeExpired, AWSEC2VpcPeeringConnectionStateReasonCodeProvisioning, AWSEC2VpcPeeringConnectionStateReasonCodeDeleting, }; typedef NS_ENUM(NSInteger, AWSEC2VpcState) { AWSEC2VpcStateUnknown, AWSEC2VpcStatePending, AWSEC2VpcStateAvailable, }; typedef NS_ENUM(NSInteger, AWSEC2VpcTenancy) { AWSEC2VpcTenancyUnknown, AWSEC2VpcTenancyDefault, }; typedef NS_ENUM(NSInteger, AWSEC2VpnEcmpSupportValue) { AWSEC2VpnEcmpSupportValueUnknown, AWSEC2VpnEcmpSupportValueEnable, AWSEC2VpnEcmpSupportValueDisable, }; typedef NS_ENUM(NSInteger, AWSEC2VpnProtocol) { AWSEC2VpnProtocolUnknown, AWSEC2VpnProtocolOpenvpn, }; typedef NS_ENUM(NSInteger, AWSEC2VpnState) { AWSEC2VpnStateUnknown, AWSEC2VpnStatePending, AWSEC2VpnStateAvailable, AWSEC2VpnStateDeleting, AWSEC2VpnStateDeleted, }; typedef NS_ENUM(NSInteger, AWSEC2VpnStaticRouteSource) { AWSEC2VpnStaticRouteSourceUnknown, AWSEC2VpnStaticRouteSourceStatic, }; typedef NS_ENUM(NSInteger, AWSEC2WeekDay) { AWSEC2WeekDayUnknown, AWSEC2WeekDaySunday, AWSEC2WeekDayMonday, AWSEC2WeekDayTuesday, AWSEC2WeekDayWednesday, AWSEC2WeekDayThursday, AWSEC2WeekDayFriday, AWSEC2WeekDaySaturday, }; typedef NS_ENUM(NSInteger, AWSEC2scope) { AWSEC2scopeUnknown, AWSEC2scopeAvailabilityZone, AWSEC2scopeRegion, }; @class AWSEC2AcceleratorCount; @class AWSEC2AcceleratorCountRequest; @class AWSEC2AcceleratorTotalMemoryMiB; @class AWSEC2AcceleratorTotalMemoryMiBRequest; @class AWSEC2AcceptAddressTransferRequest; @class AWSEC2AcceptAddressTransferResult; @class AWSEC2AcceptReservedInstancesExchangeQuoteRequest; @class AWSEC2AcceptReservedInstancesExchangeQuoteResult; @class AWSEC2AcceptTransitGatewayMulticastDomainAssociationsRequest; @class AWSEC2AcceptTransitGatewayMulticastDomainAssociationsResult; @class AWSEC2AcceptTransitGatewayPeeringAttachmentRequest; @class AWSEC2AcceptTransitGatewayPeeringAttachmentResult; @class AWSEC2AcceptTransitGatewayVpcAttachmentRequest; @class AWSEC2AcceptTransitGatewayVpcAttachmentResult; @class AWSEC2AcceptVpcEndpointConnectionsRequest; @class AWSEC2AcceptVpcEndpointConnectionsResult; @class AWSEC2AcceptVpcPeeringConnectionRequest; @class AWSEC2AcceptVpcPeeringConnectionResult; @class AWSEC2AccessScopeAnalysisFinding; @class AWSEC2AccessScopePath; @class AWSEC2AccessScopePathRequest; @class AWSEC2AccountAttribute; @class AWSEC2AccountAttributeValue; @class AWSEC2ActiveInstance; @class AWSEC2AddIpamOperatingRegion; @class AWSEC2AddPrefixListEntry; @class AWSEC2AddedPrincipal; @class AWSEC2AdditionalDetail; @class AWSEC2Address; @class AWSEC2AddressAttribute; @class AWSEC2AddressTransfer; @class AWSEC2AdvertiseByoipCidrRequest; @class AWSEC2AdvertiseByoipCidrResult; @class AWSEC2AllocateAddressRequest; @class AWSEC2AllocateAddressResult; @class AWSEC2AllocateHostsRequest; @class AWSEC2AllocateHostsResult; @class AWSEC2AllocateIpamPoolCidrRequest; @class AWSEC2AllocateIpamPoolCidrResult; @class AWSEC2AllowedPrincipal; @class AWSEC2AlternatePathHint; @class AWSEC2AnalysisAclRule; @class AWSEC2AnalysisComponent; @class AWSEC2AnalysisLoadBalancerListener; @class AWSEC2AnalysisLoadBalancerTarget; @class AWSEC2AnalysisPacketHeader; @class AWSEC2AnalysisRouteTableRoute; @class AWSEC2AnalysisSecurityGroupRule; @class AWSEC2ApplySecurityGroupsToClientVpnTargetNetworkRequest; @class AWSEC2ApplySecurityGroupsToClientVpnTargetNetworkResult; @class AWSEC2AssignIpv6AddressesRequest; @class AWSEC2AssignIpv6AddressesResult; @class AWSEC2AssignPrivateIpAddressesRequest; @class AWSEC2AssignPrivateIpAddressesResult; @class AWSEC2AssignPrivateNatGatewayAddressRequest; @class AWSEC2AssignPrivateNatGatewayAddressResult; @class AWSEC2AssignedPrivateIpAddress; @class AWSEC2AssociateAddressRequest; @class AWSEC2AssociateAddressResult; @class AWSEC2AssociateClientVpnTargetNetworkRequest; @class AWSEC2AssociateClientVpnTargetNetworkResult; @class AWSEC2AssociateDhcpOptionsRequest; @class AWSEC2AssociateEnclaveCertificateIamRoleRequest; @class AWSEC2AssociateEnclaveCertificateIamRoleResult; @class AWSEC2AssociateIamInstanceProfileRequest; @class AWSEC2AssociateIamInstanceProfileResult; @class AWSEC2AssociateInstanceEventWindowRequest; @class AWSEC2AssociateInstanceEventWindowResult; @class AWSEC2AssociateIpamResourceDiscoveryRequest; @class AWSEC2AssociateIpamResourceDiscoveryResult; @class AWSEC2AssociateNatGatewayAddressRequest; @class AWSEC2AssociateNatGatewayAddressResult; @class AWSEC2AssociateRouteTableRequest; @class AWSEC2AssociateRouteTableResult; @class AWSEC2AssociateSubnetCidrBlockRequest; @class AWSEC2AssociateSubnetCidrBlockResult; @class AWSEC2AssociateTransitGatewayMulticastDomainRequest; @class AWSEC2AssociateTransitGatewayMulticastDomainResult; @class AWSEC2AssociateTransitGatewayPolicyTableRequest; @class AWSEC2AssociateTransitGatewayPolicyTableResult; @class AWSEC2AssociateTransitGatewayRouteTableRequest; @class AWSEC2AssociateTransitGatewayRouteTableResult; @class AWSEC2AssociateTrunkInterfaceRequest; @class AWSEC2AssociateTrunkInterfaceResult; @class AWSEC2AssociateVpcCidrBlockRequest; @class AWSEC2AssociateVpcCidrBlockResult; @class AWSEC2AssociatedRole; @class AWSEC2AssociatedTargetNetwork; @class AWSEC2AssociationStatus; @class AWSEC2AthenaIntegration; @class AWSEC2AttachClassicLinkVpcRequest; @class AWSEC2AttachClassicLinkVpcResult; @class AWSEC2AttachInternetGatewayRequest; @class AWSEC2AttachNetworkInterfaceRequest; @class AWSEC2AttachNetworkInterfaceResult; @class AWSEC2AttachVerifiedAccessTrustProviderRequest; @class AWSEC2AttachVerifiedAccessTrustProviderResult; @class AWSEC2AttachVolumeRequest; @class AWSEC2AttachVpnGatewayRequest; @class AWSEC2AttachVpnGatewayResult; @class AWSEC2AttachmentEnaSrdSpecification; @class AWSEC2AttachmentEnaSrdUdpSpecification; @class AWSEC2AttributeBooleanValue; @class AWSEC2AttributeValue; @class AWSEC2AuthorizationRule; @class AWSEC2AuthorizeClientVpnIngressRequest; @class AWSEC2AuthorizeClientVpnIngressResult; @class AWSEC2AuthorizeSecurityGroupEgressRequest; @class AWSEC2AuthorizeSecurityGroupEgressResult; @class AWSEC2AuthorizeSecurityGroupIngressRequest; @class AWSEC2AuthorizeSecurityGroupIngressResult; @class AWSEC2AvailabilityZone; @class AWSEC2AvailabilityZoneMessage; @class AWSEC2AvailableCapacity; @class AWSEC2BaselineEbsBandwidthMbps; @class AWSEC2BaselineEbsBandwidthMbpsRequest; @class AWSEC2BlobAttributeValue; @class AWSEC2BlockDeviceMapping; @class AWSEC2BundleInstanceRequest; @class AWSEC2BundleInstanceResult; @class AWSEC2BundleTask; @class AWSEC2BundleTaskError; @class AWSEC2ByoipCidr; @class AWSEC2CancelBundleTaskRequest; @class AWSEC2CancelBundleTaskResult; @class AWSEC2CancelCapacityReservationFleetError; @class AWSEC2CancelCapacityReservationFleetsRequest; @class AWSEC2CancelCapacityReservationFleetsResult; @class AWSEC2CancelCapacityReservationRequest; @class AWSEC2CancelCapacityReservationResult; @class AWSEC2CancelConversionRequest; @class AWSEC2CancelExportTaskRequest; @class AWSEC2CancelImageLaunchPermissionRequest; @class AWSEC2CancelImageLaunchPermissionResult; @class AWSEC2CancelImportTaskRequest; @class AWSEC2CancelImportTaskResult; @class AWSEC2CancelReservedInstancesListingRequest; @class AWSEC2CancelReservedInstancesListingResult; @class AWSEC2CancelSpotFleetRequestsError; @class AWSEC2CancelSpotFleetRequestsErrorItem; @class AWSEC2CancelSpotFleetRequestsRequest; @class AWSEC2CancelSpotFleetRequestsResponse; @class AWSEC2CancelSpotFleetRequestsSuccessItem; @class AWSEC2CancelSpotInstanceRequestsRequest; @class AWSEC2CancelSpotInstanceRequestsResult; @class AWSEC2CancelledSpotInstanceRequest; @class AWSEC2CapacityAllocation; @class AWSEC2CapacityReservation; @class AWSEC2CapacityReservationFleet; @class AWSEC2CapacityReservationFleetCancellationState; @class AWSEC2CapacityReservationGroup; @class AWSEC2CapacityReservationOptions; @class AWSEC2CapacityReservationOptionsRequest; @class AWSEC2CapacityReservationSpecification; @class AWSEC2CapacityReservationSpecificationResponse; @class AWSEC2CapacityReservationTarget; @class AWSEC2CapacityReservationTargetResponse; @class AWSEC2CarrierGateway; @class AWSEC2CertificateAuthentication; @class AWSEC2CertificateAuthenticationRequest; @class AWSEC2CidrAuthorizationContext; @class AWSEC2CidrBlock; @class AWSEC2ClassicLinkDnsSupport; @class AWSEC2ClassicLinkInstance; @class AWSEC2ClassicLoadBalancer; @class AWSEC2ClassicLoadBalancersConfig; @class AWSEC2ClientCertificateRevocationListStatus; @class AWSEC2ClientConnectOptions; @class AWSEC2ClientConnectResponseOptions; @class AWSEC2ClientData; @class AWSEC2ClientLoginBannerOptions; @class AWSEC2ClientLoginBannerResponseOptions; @class AWSEC2ClientVpnAuthentication; @class AWSEC2ClientVpnAuthenticationRequest; @class AWSEC2ClientVpnAuthorizationRuleStatus; @class AWSEC2ClientVpnConnection; @class AWSEC2ClientVpnConnectionStatus; @class AWSEC2ClientVpnEndpoint; @class AWSEC2ClientVpnEndpointAttributeStatus; @class AWSEC2ClientVpnEndpointStatus; @class AWSEC2ClientVpnRoute; @class AWSEC2ClientVpnRouteStatus; @class AWSEC2CloudWatchLogOptions; @class AWSEC2CloudWatchLogOptionsSpecification; @class AWSEC2CoipAddressUsage; @class AWSEC2CoipCidr; @class AWSEC2CoipPool; @class AWSEC2ConfirmProductInstanceRequest; @class AWSEC2ConfirmProductInstanceResult; @class AWSEC2ConnectionLogOptions; @class AWSEC2ConnectionLogResponseOptions; @class AWSEC2ConnectionNotification; @class AWSEC2ConversionTask; @class AWSEC2ReplicateFpgaImageRequest; @class AWSEC2ReplicateFpgaImageResult; @class AWSEC2ReplicateImageRequest; @class AWSEC2ReplicateImageResult; @class AWSEC2ReplicateSnapshotRequest; @class AWSEC2ReplicateSnapshotResult; @class AWSEC2CpuOptions; @class AWSEC2CpuOptionsRequest; @class AWSEC2CreateCapacityReservationFleetRequest; @class AWSEC2CreateCapacityReservationFleetResult; @class AWSEC2CreateCapacityReservationRequest; @class AWSEC2CreateCapacityReservationResult; @class AWSEC2CreateCarrierGatewayRequest; @class AWSEC2CreateCarrierGatewayResult; @class AWSEC2CreateClientVpnEndpointRequest; @class AWSEC2CreateClientVpnEndpointResult; @class AWSEC2CreateClientVpnRouteRequest; @class AWSEC2CreateClientVpnRouteResult; @class AWSEC2CreateCoipCidrRequest; @class AWSEC2CreateCoipCidrResult; @class AWSEC2CreateCoipPoolRequest; @class AWSEC2CreateCoipPoolResult; @class AWSEC2CreateCustomerGatewayRequest; @class AWSEC2CreateCustomerGatewayResult; @class AWSEC2CreateDefaultSubnetRequest; @class AWSEC2CreateDefaultSubnetResult; @class AWSEC2CreateDefaultVpcRequest; @class AWSEC2CreateDefaultVpcResult; @class AWSEC2CreateDhcpOptionsRequest; @class AWSEC2CreateDhcpOptionsResult; @class AWSEC2CreateEgressOnlyInternetGatewayRequest; @class AWSEC2CreateEgressOnlyInternetGatewayResult; @class AWSEC2CreateFleetError; @class AWSEC2CreateFleetInstance; @class AWSEC2CreateFleetRequest; @class AWSEC2CreateFleetResult; @class AWSEC2CreateFlowLogsRequest; @class AWSEC2CreateFlowLogsResult; @class AWSEC2CreateFpgaImageRequest; @class AWSEC2CreateFpgaImageResult; @class AWSEC2CreateImageRequest; @class AWSEC2CreateImageResult; @class AWSEC2CreateInstanceConnectEndpointRequest; @class AWSEC2CreateInstanceConnectEndpointResult; @class AWSEC2CreateInstanceEventWindowRequest; @class AWSEC2CreateInstanceEventWindowResult; @class AWSEC2CreateInstanceExportTaskRequest; @class AWSEC2CreateInstanceExportTaskResult; @class AWSEC2CreateInternetGatewayRequest; @class AWSEC2CreateInternetGatewayResult; @class AWSEC2CreateIpamPoolRequest; @class AWSEC2CreateIpamPoolResult; @class AWSEC2CreateIpamRequest; @class AWSEC2CreateIpamResourceDiscoveryRequest; @class AWSEC2CreateIpamResourceDiscoveryResult; @class AWSEC2CreateIpamResult; @class AWSEC2CreateIpamScopeRequest; @class AWSEC2CreateIpamScopeResult; @class AWSEC2CreateKeyPairRequest; @class AWSEC2CreateLaunchTemplateRequest; @class AWSEC2CreateLaunchTemplateResult; @class AWSEC2CreateLaunchTemplateVersionRequest; @class AWSEC2CreateLaunchTemplateVersionResult; @class AWSEC2CreateLocalGatewayRouteRequest; @class AWSEC2CreateLocalGatewayRouteResult; @class AWSEC2CreateLocalGatewayRouteTableRequest; @class AWSEC2CreateLocalGatewayRouteTableResult; @class AWSEC2CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest; @class AWSEC2CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult; @class AWSEC2CreateLocalGatewayRouteTableVpcAssociationRequest; @class AWSEC2CreateLocalGatewayRouteTableVpcAssociationResult; @class AWSEC2CreateManagedPrefixListRequest; @class AWSEC2CreateManagedPrefixListResult; @class AWSEC2CreateNatGatewayRequest; @class AWSEC2CreateNatGatewayResult; @class AWSEC2CreateNetworkAclEntryRequest; @class AWSEC2CreateNetworkAclRequest; @class AWSEC2CreateNetworkAclResult; @class AWSEC2CreateNetworkInsightsAccessScopeRequest; @class AWSEC2CreateNetworkInsightsAccessScopeResult; @class AWSEC2CreateNetworkInsightsPathRequest; @class AWSEC2CreateNetworkInsightsPathResult; @class AWSEC2CreateNetworkInterfacePermissionRequest; @class AWSEC2CreateNetworkInterfacePermissionResult; @class AWSEC2CreateNetworkInterfaceRequest; @class AWSEC2CreateNetworkInterfaceResult; @class AWSEC2CreatePlacementGroupRequest; @class AWSEC2CreatePlacementGroupResult; @class AWSEC2CreatePublicIpv4PoolRequest; @class AWSEC2CreatePublicIpv4PoolResult; @class AWSEC2CreateReplaceRootVolumeTaskRequest; @class AWSEC2CreateReplaceRootVolumeTaskResult; @class AWSEC2CreateReservedInstancesListingRequest; @class AWSEC2CreateReservedInstancesListingResult; @class AWSEC2CreateRestoreImageTaskRequest; @class AWSEC2CreateRestoreImageTaskResult; @class AWSEC2CreateRouteRequest; @class AWSEC2CreateRouteResult; @class AWSEC2CreateRouteTableRequest; @class AWSEC2CreateRouteTableResult; @class AWSEC2CreateSecurityGroupRequest; @class AWSEC2CreateSecurityGroupResult; @class AWSEC2CreateSnapshotRequest; @class AWSEC2CreateSnapshotsRequest; @class AWSEC2CreateSnapshotsResult; @class AWSEC2CreateSpotDatafeedSubscriptionRequest; @class AWSEC2CreateSpotDatafeedSubscriptionResult; @class AWSEC2CreateStoreImageTaskRequest; @class AWSEC2CreateStoreImageTaskResult; @class AWSEC2CreateSubnetCidrReservationRequest; @class AWSEC2CreateSubnetCidrReservationResult; @class AWSEC2CreateSubnetRequest; @class AWSEC2CreateSubnetResult; @class AWSEC2CreateTagsRequest; @class AWSEC2CreateTrafficMirrorFilterRequest; @class AWSEC2CreateTrafficMirrorFilterResult; @class AWSEC2CreateTrafficMirrorFilterRuleRequest; @class AWSEC2CreateTrafficMirrorFilterRuleResult; @class AWSEC2CreateTrafficMirrorSessionRequest; @class AWSEC2CreateTrafficMirrorSessionResult; @class AWSEC2CreateTrafficMirrorTargetRequest; @class AWSEC2CreateTrafficMirrorTargetResult; @class AWSEC2CreateTransitGatewayConnectPeerRequest; @class AWSEC2CreateTransitGatewayConnectPeerResult; @class AWSEC2CreateTransitGatewayConnectRequest; @class AWSEC2CreateTransitGatewayConnectRequestOptions; @class AWSEC2CreateTransitGatewayConnectResult; @class AWSEC2CreateTransitGatewayMulticastDomainRequest; @class AWSEC2CreateTransitGatewayMulticastDomainRequestOptions; @class AWSEC2CreateTransitGatewayMulticastDomainResult; @class AWSEC2CreateTransitGatewayPeeringAttachmentRequest; @class AWSEC2CreateTransitGatewayPeeringAttachmentRequestOptions; @class AWSEC2CreateTransitGatewayPeeringAttachmentResult; @class AWSEC2CreateTransitGatewayPolicyTableRequest; @class AWSEC2CreateTransitGatewayPolicyTableResult; @class AWSEC2CreateTransitGatewayPrefixListReferenceRequest; @class AWSEC2CreateTransitGatewayPrefixListReferenceResult; @class AWSEC2CreateTransitGatewayRequest; @class AWSEC2CreateTransitGatewayResult; @class AWSEC2CreateTransitGatewayRouteRequest; @class AWSEC2CreateTransitGatewayRouteResult; @class AWSEC2CreateTransitGatewayRouteTableAnnouncementRequest; @class AWSEC2CreateTransitGatewayRouteTableAnnouncementResult; @class AWSEC2CreateTransitGatewayRouteTableRequest; @class AWSEC2CreateTransitGatewayRouteTableResult; @class AWSEC2CreateTransitGatewayVpcAttachmentRequest; @class AWSEC2CreateTransitGatewayVpcAttachmentRequestOptions; @class AWSEC2CreateTransitGatewayVpcAttachmentResult; @class AWSEC2CreateVerifiedAccessEndpointEniOptions; @class AWSEC2CreateVerifiedAccessEndpointLoadBalancerOptions; @class AWSEC2CreateVerifiedAccessEndpointRequest; @class AWSEC2CreateVerifiedAccessEndpointResult; @class AWSEC2CreateVerifiedAccessGroupRequest; @class AWSEC2CreateVerifiedAccessGroupResult; @class AWSEC2CreateVerifiedAccessInstanceRequest; @class AWSEC2CreateVerifiedAccessInstanceResult; @class AWSEC2CreateVerifiedAccessTrustProviderDeviceOptions; @class AWSEC2CreateVerifiedAccessTrustProviderOidcOptions; @class AWSEC2CreateVerifiedAccessTrustProviderRequest; @class AWSEC2CreateVerifiedAccessTrustProviderResult; @class AWSEC2CreateVolumePermission; @class AWSEC2CreateVolumePermissionModifications; @class AWSEC2CreateVolumeRequest; @class AWSEC2CreateVpcEndpointConnectionNotificationRequest; @class AWSEC2CreateVpcEndpointConnectionNotificationResult; @class AWSEC2CreateVpcEndpointRequest; @class AWSEC2CreateVpcEndpointResult; @class AWSEC2CreateVpcEndpointServiceConfigurationRequest; @class AWSEC2CreateVpcEndpointServiceConfigurationResult; @class AWSEC2CreateVpcPeeringConnectionRequest; @class AWSEC2CreateVpcPeeringConnectionResult; @class AWSEC2CreateVpcRequest; @class AWSEC2CreateVpcResult; @class AWSEC2CreateVpnConnectionRequest; @class AWSEC2CreateVpnConnectionResult; @class AWSEC2CreateVpnConnectionRouteRequest; @class AWSEC2CreateVpnGatewayRequest; @class AWSEC2CreateVpnGatewayResult; @class AWSEC2CreditSpecification; @class AWSEC2CreditSpecificationRequest; @class AWSEC2CustomerGateway; @class AWSEC2DataQuery; @class AWSEC2DataResponse; @class AWSEC2DeleteCarrierGatewayRequest; @class AWSEC2DeleteCarrierGatewayResult; @class AWSEC2DeleteClientVpnEndpointRequest; @class AWSEC2DeleteClientVpnEndpointResult; @class AWSEC2DeleteClientVpnRouteRequest; @class AWSEC2DeleteClientVpnRouteResult; @class AWSEC2DeleteCoipCidrRequest; @class AWSEC2DeleteCoipCidrResult; @class AWSEC2DeleteCoipPoolRequest; @class AWSEC2DeleteCoipPoolResult; @class AWSEC2DeleteCustomerGatewayRequest; @class AWSEC2DeleteDhcpOptionsRequest; @class AWSEC2DeleteEgressOnlyInternetGatewayRequest; @class AWSEC2DeleteEgressOnlyInternetGatewayResult; @class AWSEC2DeleteFleetError; @class AWSEC2DeleteFleetErrorItem; @class AWSEC2DeleteFleetSuccessItem; @class AWSEC2DeleteFleetsRequest; @class AWSEC2DeleteFleetsResult; @class AWSEC2DeleteFlowLogsRequest; @class AWSEC2DeleteFlowLogsResult; @class AWSEC2DeleteFpgaImageRequest; @class AWSEC2DeleteFpgaImageResult; @class AWSEC2DeleteInstanceConnectEndpointRequest; @class AWSEC2DeleteInstanceConnectEndpointResult; @class AWSEC2DeleteInstanceEventWindowRequest; @class AWSEC2DeleteInstanceEventWindowResult; @class AWSEC2DeleteInternetGatewayRequest; @class AWSEC2DeleteIpamPoolRequest; @class AWSEC2DeleteIpamPoolResult; @class AWSEC2DeleteIpamRequest; @class AWSEC2DeleteIpamResourceDiscoveryRequest; @class AWSEC2DeleteIpamResourceDiscoveryResult; @class AWSEC2DeleteIpamResult; @class AWSEC2DeleteIpamScopeRequest; @class AWSEC2DeleteIpamScopeResult; @class AWSEC2DeleteKeyPairRequest; @class AWSEC2DeleteLaunchTemplateRequest; @class AWSEC2DeleteLaunchTemplateResult; @class AWSEC2DeleteLaunchTemplateVersionsRequest; @class AWSEC2DeleteLaunchTemplateVersionsResponseErrorItem; @class AWSEC2DeleteLaunchTemplateVersionsResponseSuccessItem; @class AWSEC2DeleteLaunchTemplateVersionsResult; @class AWSEC2DeleteLocalGatewayRouteRequest; @class AWSEC2DeleteLocalGatewayRouteResult; @class AWSEC2DeleteLocalGatewayRouteTableRequest; @class AWSEC2DeleteLocalGatewayRouteTableResult; @class AWSEC2DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest; @class AWSEC2DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult; @class AWSEC2DeleteLocalGatewayRouteTableVpcAssociationRequest; @class AWSEC2DeleteLocalGatewayRouteTableVpcAssociationResult; @class AWSEC2DeleteManagedPrefixListRequest; @class AWSEC2DeleteManagedPrefixListResult; @class AWSEC2DeleteNatGatewayRequest; @class AWSEC2DeleteNatGatewayResult; @class AWSEC2DeleteNetworkAclEntryRequest; @class AWSEC2DeleteNetworkAclRequest; @class AWSEC2DeleteNetworkInsightsAccessScopeAnalysisRequest; @class AWSEC2DeleteNetworkInsightsAccessScopeAnalysisResult; @class AWSEC2DeleteNetworkInsightsAccessScopeRequest; @class AWSEC2DeleteNetworkInsightsAccessScopeResult; @class AWSEC2DeleteNetworkInsightsAnalysisRequest; @class AWSEC2DeleteNetworkInsightsAnalysisResult; @class AWSEC2DeleteNetworkInsightsPathRequest; @class AWSEC2DeleteNetworkInsightsPathResult; @class AWSEC2DeleteNetworkInterfacePermissionRequest; @class AWSEC2DeleteNetworkInterfacePermissionResult; @class AWSEC2DeleteNetworkInterfaceRequest; @class AWSEC2DeletePlacementGroupRequest; @class AWSEC2DeletePublicIpv4PoolRequest; @class AWSEC2DeletePublicIpv4PoolResult; @class AWSEC2DeleteQueuedReservedInstancesError; @class AWSEC2DeleteQueuedReservedInstancesRequest; @class AWSEC2DeleteQueuedReservedInstancesResult; @class AWSEC2DeleteRouteRequest; @class AWSEC2DeleteRouteTableRequest; @class AWSEC2DeleteSecurityGroupRequest; @class AWSEC2DeleteSnapshotRequest; @class AWSEC2DeleteSpotDatafeedSubscriptionRequest; @class AWSEC2DeleteSubnetCidrReservationRequest; @class AWSEC2DeleteSubnetCidrReservationResult; @class AWSEC2DeleteSubnetRequest; @class AWSEC2DeleteTagsRequest; @class AWSEC2DeleteTrafficMirrorFilterRequest; @class AWSEC2DeleteTrafficMirrorFilterResult; @class AWSEC2DeleteTrafficMirrorFilterRuleRequest; @class AWSEC2DeleteTrafficMirrorFilterRuleResult; @class AWSEC2DeleteTrafficMirrorSessionRequest; @class AWSEC2DeleteTrafficMirrorSessionResult; @class AWSEC2DeleteTrafficMirrorTargetRequest; @class AWSEC2DeleteTrafficMirrorTargetResult; @class AWSEC2DeleteTransitGatewayConnectPeerRequest; @class AWSEC2DeleteTransitGatewayConnectPeerResult; @class AWSEC2DeleteTransitGatewayConnectRequest; @class AWSEC2DeleteTransitGatewayConnectResult; @class AWSEC2DeleteTransitGatewayMulticastDomainRequest; @class AWSEC2DeleteTransitGatewayMulticastDomainResult; @class AWSEC2DeleteTransitGatewayPeeringAttachmentRequest; @class AWSEC2DeleteTransitGatewayPeeringAttachmentResult; @class AWSEC2DeleteTransitGatewayPolicyTableRequest; @class AWSEC2DeleteTransitGatewayPolicyTableResult; @class AWSEC2DeleteTransitGatewayPrefixListReferenceRequest; @class AWSEC2DeleteTransitGatewayPrefixListReferenceResult; @class AWSEC2DeleteTransitGatewayRequest; @class AWSEC2DeleteTransitGatewayResult; @class AWSEC2DeleteTransitGatewayRouteRequest; @class AWSEC2DeleteTransitGatewayRouteResult; @class AWSEC2DeleteTransitGatewayRouteTableAnnouncementRequest; @class AWSEC2DeleteTransitGatewayRouteTableAnnouncementResult; @class AWSEC2DeleteTransitGatewayRouteTableRequest; @class AWSEC2DeleteTransitGatewayRouteTableResult; @class AWSEC2DeleteTransitGatewayVpcAttachmentRequest; @class AWSEC2DeleteTransitGatewayVpcAttachmentResult; @class AWSEC2DeleteVerifiedAccessEndpointRequest; @class AWSEC2DeleteVerifiedAccessEndpointResult; @class AWSEC2DeleteVerifiedAccessGroupRequest; @class AWSEC2DeleteVerifiedAccessGroupResult; @class AWSEC2DeleteVerifiedAccessInstanceRequest; @class AWSEC2DeleteVerifiedAccessInstanceResult; @class AWSEC2DeleteVerifiedAccessTrustProviderRequest; @class AWSEC2DeleteVerifiedAccessTrustProviderResult; @class AWSEC2DeleteVolumeRequest; @class AWSEC2DeleteVpcEndpointConnectionNotificationsRequest; @class AWSEC2DeleteVpcEndpointConnectionNotificationsResult; @class AWSEC2DeleteVpcEndpointServiceConfigurationsRequest; @class AWSEC2DeleteVpcEndpointServiceConfigurationsResult; @class AWSEC2DeleteVpcEndpointsRequest; @class AWSEC2DeleteVpcEndpointsResult; @class AWSEC2DeleteVpcPeeringConnectionRequest; @class AWSEC2DeleteVpcPeeringConnectionResult; @class AWSEC2DeleteVpcRequest; @class AWSEC2DeleteVpnConnectionRequest; @class AWSEC2DeleteVpnConnectionRouteRequest; @class AWSEC2DeleteVpnGatewayRequest; @class AWSEC2DeprovisionByoipCidrRequest; @class AWSEC2DeprovisionByoipCidrResult; @class AWSEC2DeprovisionIpamPoolCidrRequest; @class AWSEC2DeprovisionIpamPoolCidrResult; @class AWSEC2DeprovisionPublicIpv4PoolCidrRequest; @class AWSEC2DeprovisionPublicIpv4PoolCidrResult; @class AWSEC2DeregisterImageRequest; @class AWSEC2DeregisterInstanceEventNotificationAttributesRequest; @class AWSEC2DeregisterInstanceEventNotificationAttributesResult; @class AWSEC2DeregisterInstanceTagAttributeRequest; @class AWSEC2DeregisterTransitGatewayMulticastGroupMembersRequest; @class AWSEC2DeregisterTransitGatewayMulticastGroupMembersResult; @class AWSEC2DeregisterTransitGatewayMulticastGroupSourcesRequest; @class AWSEC2DeregisterTransitGatewayMulticastGroupSourcesResult; @class AWSEC2DescribeAccountAttributesRequest; @class AWSEC2DescribeAccountAttributesResult; @class AWSEC2DescribeAddressTransfersRequest; @class AWSEC2DescribeAddressTransfersResult; @class AWSEC2DescribeAddressesAttributeRequest; @class AWSEC2DescribeAddressesAttributeResult; @class AWSEC2DescribeAddressesRequest; @class AWSEC2DescribeAddressesResult; @class AWSEC2DescribeAggregateIdFormatRequest; @class AWSEC2DescribeAggregateIdFormatResult; @class AWSEC2DescribeAvailabilityZonesRequest; @class AWSEC2DescribeAvailabilityZonesResult; @class AWSEC2DescribeAwsNetworkPerformanceMetricSubscriptionsRequest; @class AWSEC2DescribeAwsNetworkPerformanceMetricSubscriptionsResult; @class AWSEC2DescribeBundleTasksRequest; @class AWSEC2DescribeBundleTasksResult; @class AWSEC2DescribeByoipCidrsRequest; @class AWSEC2DescribeByoipCidrsResult; @class AWSEC2DescribeCapacityReservationFleetsRequest; @class AWSEC2DescribeCapacityReservationFleetsResult; @class AWSEC2DescribeCapacityReservationsRequest; @class AWSEC2DescribeCapacityReservationsResult; @class AWSEC2DescribeCarrierGatewaysRequest; @class AWSEC2DescribeCarrierGatewaysResult; @class AWSEC2DescribeClassicLinkInstancesRequest; @class AWSEC2DescribeClassicLinkInstancesResult; @class AWSEC2DescribeClientVpnAuthorizationRulesRequest; @class AWSEC2DescribeClientVpnAuthorizationRulesResult; @class AWSEC2DescribeClientVpnConnectionsRequest; @class AWSEC2DescribeClientVpnConnectionsResult; @class AWSEC2DescribeClientVpnEndpointsRequest; @class AWSEC2DescribeClientVpnEndpointsResult; @class AWSEC2DescribeClientVpnRoutesRequest; @class AWSEC2DescribeClientVpnRoutesResult; @class AWSEC2DescribeClientVpnTargetNetworksRequest; @class AWSEC2DescribeClientVpnTargetNetworksResult; @class AWSEC2DescribeCoipPoolsRequest; @class AWSEC2DescribeCoipPoolsResult; @class AWSEC2DescribeConversionTasksRequest; @class AWSEC2DescribeConversionTasksResult; @class AWSEC2DescribeCustomerGatewaysRequest; @class AWSEC2DescribeCustomerGatewaysResult; @class AWSEC2DescribeDhcpOptionsRequest; @class AWSEC2DescribeDhcpOptionsResult; @class AWSEC2DescribeEgressOnlyInternetGatewaysRequest; @class AWSEC2DescribeEgressOnlyInternetGatewaysResult; @class AWSEC2DescribeElasticGpusRequest; @class AWSEC2DescribeElasticGpusResult; @class AWSEC2DescribeExportImageTasksRequest; @class AWSEC2DescribeExportImageTasksResult; @class AWSEC2DescribeExportTasksRequest; @class AWSEC2DescribeExportTasksResult; @class AWSEC2DescribeFastLaunchImagesRequest; @class AWSEC2DescribeFastLaunchImagesResult; @class AWSEC2DescribeFastLaunchImagesSuccessItem; @class AWSEC2DescribeFastSnapshotRestoreSuccessItem; @class AWSEC2DescribeFastSnapshotRestoresRequest; @class AWSEC2DescribeFastSnapshotRestoresResult; @class AWSEC2DescribeFleetError; @class AWSEC2DescribeFleetHistoryRequest; @class AWSEC2DescribeFleetHistoryResult; @class AWSEC2DescribeFleetInstancesRequest; @class AWSEC2DescribeFleetInstancesResult; @class AWSEC2DescribeFleetsInstances; @class AWSEC2DescribeFleetsRequest; @class AWSEC2DescribeFleetsResult; @class AWSEC2DescribeFlowLogsRequest; @class AWSEC2DescribeFlowLogsResult; @class AWSEC2DescribeFpgaImageAttributeRequest; @class AWSEC2DescribeFpgaImageAttributeResult; @class AWSEC2DescribeFpgaImagesRequest; @class AWSEC2DescribeFpgaImagesResult; @class AWSEC2DescribeHostReservationOfferingsRequest; @class AWSEC2DescribeHostReservationOfferingsResult; @class AWSEC2DescribeHostReservationsRequest; @class AWSEC2DescribeHostReservationsResult; @class AWSEC2DescribeHostsRequest; @class AWSEC2DescribeHostsResult; @class AWSEC2DescribeIamInstanceProfileAssociationsRequest; @class AWSEC2DescribeIamInstanceProfileAssociationsResult; @class AWSEC2DescribeIdFormatRequest; @class AWSEC2DescribeIdFormatResult; @class AWSEC2DescribeIdentityIdFormatRequest; @class AWSEC2DescribeIdentityIdFormatResult; @class AWSEC2DescribeImageAttributeRequest; @class AWSEC2DescribeImagesRequest; @class AWSEC2DescribeImagesResult; @class AWSEC2DescribeImportImageTasksRequest; @class AWSEC2DescribeImportImageTasksResult; @class AWSEC2DescribeImportSnapshotTasksRequest; @class AWSEC2DescribeImportSnapshotTasksResult; @class AWSEC2DescribeInstanceAttributeRequest; @class AWSEC2DescribeInstanceConnectEndpointsRequest; @class AWSEC2DescribeInstanceConnectEndpointsResult; @class AWSEC2DescribeInstanceCreditSpecificationsRequest; @class AWSEC2DescribeInstanceCreditSpecificationsResult; @class AWSEC2DescribeInstanceEventNotificationAttributesRequest; @class AWSEC2DescribeInstanceEventNotificationAttributesResult; @class AWSEC2DescribeInstanceEventWindowsRequest; @class AWSEC2DescribeInstanceEventWindowsResult; @class AWSEC2DescribeInstanceStatusRequest; @class AWSEC2DescribeInstanceStatusResult; @class AWSEC2DescribeInstanceTypeOfferingsRequest; @class AWSEC2DescribeInstanceTypeOfferingsResult; @class AWSEC2DescribeInstanceTypesRequest; @class AWSEC2DescribeInstanceTypesResult; @class AWSEC2DescribeInstancesRequest; @class AWSEC2DescribeInstancesResult; @class AWSEC2DescribeInternetGatewaysRequest; @class AWSEC2DescribeInternetGatewaysResult; @class AWSEC2DescribeIpamPoolsRequest; @class AWSEC2DescribeIpamPoolsResult; @class AWSEC2DescribeIpamResourceDiscoveriesRequest; @class AWSEC2DescribeIpamResourceDiscoveriesResult; @class AWSEC2DescribeIpamResourceDiscoveryAssociationsRequest; @class AWSEC2DescribeIpamResourceDiscoveryAssociationsResult; @class AWSEC2DescribeIpamScopesRequest; @class AWSEC2DescribeIpamScopesResult; @class AWSEC2DescribeIpamsRequest; @class AWSEC2DescribeIpamsResult; @class AWSEC2DescribeIpv6PoolsRequest; @class AWSEC2DescribeIpv6PoolsResult; @class AWSEC2DescribeKeyPairsRequest; @class AWSEC2DescribeKeyPairsResult; @class AWSEC2DescribeLaunchTemplateVersionsRequest; @class AWSEC2DescribeLaunchTemplateVersionsResult; @class AWSEC2DescribeLaunchTemplatesRequest; @class AWSEC2DescribeLaunchTemplatesResult; @class AWSEC2DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest; @class AWSEC2DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult; @class AWSEC2DescribeLocalGatewayRouteTableVpcAssociationsRequest; @class AWSEC2DescribeLocalGatewayRouteTableVpcAssociationsResult; @class AWSEC2DescribeLocalGatewayRouteTablesRequest; @class AWSEC2DescribeLocalGatewayRouteTablesResult; @class AWSEC2DescribeLocalGatewayVirtualInterfaceGroupsRequest; @class AWSEC2DescribeLocalGatewayVirtualInterfaceGroupsResult; @class AWSEC2DescribeLocalGatewayVirtualInterfacesRequest; @class AWSEC2DescribeLocalGatewayVirtualInterfacesResult; @class AWSEC2DescribeLocalGatewaysRequest; @class AWSEC2DescribeLocalGatewaysResult; @class AWSEC2DescribeManagedPrefixListsRequest; @class AWSEC2DescribeManagedPrefixListsResult; @class AWSEC2DescribeMovingAddressesRequest; @class AWSEC2DescribeMovingAddressesResult; @class AWSEC2DescribeNatGatewaysRequest; @class AWSEC2DescribeNatGatewaysResult; @class AWSEC2DescribeNetworkAclsRequest; @class AWSEC2DescribeNetworkAclsResult; @class AWSEC2DescribeNetworkInsightsAccessScopeAnalysesRequest; @class AWSEC2DescribeNetworkInsightsAccessScopeAnalysesResult; @class AWSEC2DescribeNetworkInsightsAccessScopesRequest; @class AWSEC2DescribeNetworkInsightsAccessScopesResult; @class AWSEC2DescribeNetworkInsightsAnalysesRequest; @class AWSEC2DescribeNetworkInsightsAnalysesResult; @class AWSEC2DescribeNetworkInsightsPathsRequest; @class AWSEC2DescribeNetworkInsightsPathsResult; @class AWSEC2DescribeNetworkInterfaceAttributeRequest; @class AWSEC2DescribeNetworkInterfaceAttributeResult; @class AWSEC2DescribeNetworkInterfacePermissionsRequest; @class AWSEC2DescribeNetworkInterfacePermissionsResult; @class AWSEC2DescribeNetworkInterfacesRequest; @class AWSEC2DescribeNetworkInterfacesResult; @class AWSEC2DescribePlacementGroupsRequest; @class AWSEC2DescribePlacementGroupsResult; @class AWSEC2DescribePrefixListsRequest; @class AWSEC2DescribePrefixListsResult; @class AWSEC2DescribePrincipalIdFormatRequest; @class AWSEC2DescribePrincipalIdFormatResult; @class AWSEC2DescribePublicIpv4PoolsRequest; @class AWSEC2DescribePublicIpv4PoolsResult; @class AWSEC2DescribeRegionsRequest; @class AWSEC2DescribeRegionsResult; @class AWSEC2DescribeReplaceRootVolumeTasksRequest; @class AWSEC2DescribeReplaceRootVolumeTasksResult; @class AWSEC2DescribeReservedInstancesListingsRequest; @class AWSEC2DescribeReservedInstancesListingsResult; @class AWSEC2DescribeReservedInstancesModificationsRequest; @class AWSEC2DescribeReservedInstancesModificationsResult; @class AWSEC2DescribeReservedInstancesOfferingsRequest; @class AWSEC2DescribeReservedInstancesOfferingsResult; @class AWSEC2DescribeReservedInstancesRequest; @class AWSEC2DescribeReservedInstancesResult; @class AWSEC2DescribeRouteTablesRequest; @class AWSEC2DescribeRouteTablesResult; @class AWSEC2DescribeScheduledInstanceAvailabilityRequest; @class AWSEC2DescribeScheduledInstanceAvailabilityResult; @class AWSEC2DescribeScheduledInstancesRequest; @class AWSEC2DescribeScheduledInstancesResult; @class AWSEC2DescribeSecurityGroupReferencesRequest; @class AWSEC2DescribeSecurityGroupReferencesResult; @class AWSEC2DescribeSecurityGroupRulesRequest; @class AWSEC2DescribeSecurityGroupRulesResult; @class AWSEC2DescribeSecurityGroupsRequest; @class AWSEC2DescribeSecurityGroupsResult; @class AWSEC2DescribeSnapshotAttributeRequest; @class AWSEC2DescribeSnapshotAttributeResult; @class AWSEC2DescribeSnapshotTierStatusRequest; @class AWSEC2DescribeSnapshotTierStatusResult; @class AWSEC2DescribeSnapshotsRequest; @class AWSEC2DescribeSnapshotsResult; @class AWSEC2DescribeSpotDatafeedSubscriptionRequest; @class AWSEC2DescribeSpotDatafeedSubscriptionResult; @class AWSEC2DescribeSpotFleetInstancesRequest; @class AWSEC2DescribeSpotFleetInstancesResponse; @class AWSEC2DescribeSpotFleetRequestHistoryRequest; @class AWSEC2DescribeSpotFleetRequestHistoryResponse; @class AWSEC2DescribeSpotFleetRequestsRequest; @class AWSEC2DescribeSpotFleetRequestsResponse; @class AWSEC2DescribeSpotInstanceRequestsRequest; @class AWSEC2DescribeSpotInstanceRequestsResult; @class AWSEC2DescribeSpotPriceHistoryRequest; @class AWSEC2DescribeSpotPriceHistoryResult; @class AWSEC2DescribeStaleSecurityGroupsRequest; @class AWSEC2DescribeStaleSecurityGroupsResult; @class AWSEC2DescribeStoreImageTasksRequest; @class AWSEC2DescribeStoreImageTasksResult; @class AWSEC2DescribeSubnetsRequest; @class AWSEC2DescribeSubnetsResult; @class AWSEC2DescribeTagsRequest; @class AWSEC2DescribeTagsResult; @class AWSEC2DescribeTrafficMirrorFiltersRequest; @class AWSEC2DescribeTrafficMirrorFiltersResult; @class AWSEC2DescribeTrafficMirrorSessionsRequest; @class AWSEC2DescribeTrafficMirrorSessionsResult; @class AWSEC2DescribeTrafficMirrorTargetsRequest; @class AWSEC2DescribeTrafficMirrorTargetsResult; @class AWSEC2DescribeTransitGatewayAttachmentsRequest; @class AWSEC2DescribeTransitGatewayAttachmentsResult; @class AWSEC2DescribeTransitGatewayConnectPeersRequest; @class AWSEC2DescribeTransitGatewayConnectPeersResult; @class AWSEC2DescribeTransitGatewayConnectsRequest; @class AWSEC2DescribeTransitGatewayConnectsResult; @class AWSEC2DescribeTransitGatewayMulticastDomainsRequest; @class AWSEC2DescribeTransitGatewayMulticastDomainsResult; @class AWSEC2DescribeTransitGatewayPeeringAttachmentsRequest; @class AWSEC2DescribeTransitGatewayPeeringAttachmentsResult; @class AWSEC2DescribeTransitGatewayPolicyTablesRequest; @class AWSEC2DescribeTransitGatewayPolicyTablesResult; @class AWSEC2DescribeTransitGatewayRouteTableAnnouncementsRequest; @class AWSEC2DescribeTransitGatewayRouteTableAnnouncementsResult; @class AWSEC2DescribeTransitGatewayRouteTablesRequest; @class AWSEC2DescribeTransitGatewayRouteTablesResult; @class AWSEC2DescribeTransitGatewayVpcAttachmentsRequest; @class AWSEC2DescribeTransitGatewayVpcAttachmentsResult; @class AWSEC2DescribeTransitGatewaysRequest; @class AWSEC2DescribeTransitGatewaysResult; @class AWSEC2DescribeTrunkInterfaceAssociationsRequest; @class AWSEC2DescribeTrunkInterfaceAssociationsResult; @class AWSEC2DescribeVerifiedAccessEndpointsRequest; @class AWSEC2DescribeVerifiedAccessEndpointsResult; @class AWSEC2DescribeVerifiedAccessGroupsRequest; @class AWSEC2DescribeVerifiedAccessGroupsResult; @class AWSEC2DescribeVerifiedAccessInstanceLoggingConfigurationsRequest; @class AWSEC2DescribeVerifiedAccessInstanceLoggingConfigurationsResult; @class AWSEC2DescribeVerifiedAccessInstancesRequest; @class AWSEC2DescribeVerifiedAccessInstancesResult; @class AWSEC2DescribeVerifiedAccessTrustProvidersRequest; @class AWSEC2DescribeVerifiedAccessTrustProvidersResult; @class AWSEC2DescribeVolumeAttributeRequest; @class AWSEC2DescribeVolumeAttributeResult; @class AWSEC2DescribeVolumeStatusRequest; @class AWSEC2DescribeVolumeStatusResult; @class AWSEC2DescribeVolumesModificationsRequest; @class AWSEC2DescribeVolumesModificationsResult; @class AWSEC2DescribeVolumesRequest; @class AWSEC2DescribeVolumesResult; @class AWSEC2DescribeVpcAttributeRequest; @class AWSEC2DescribeVpcAttributeResult; @class AWSEC2DescribeVpcClassicLinkDnsSupportRequest; @class AWSEC2DescribeVpcClassicLinkDnsSupportResult; @class AWSEC2DescribeVpcClassicLinkRequest; @class AWSEC2DescribeVpcClassicLinkResult; @class AWSEC2DescribeVpcEndpointConnectionNotificationsRequest; @class AWSEC2DescribeVpcEndpointConnectionNotificationsResult; @class AWSEC2DescribeVpcEndpointConnectionsRequest; @class AWSEC2DescribeVpcEndpointConnectionsResult; @class AWSEC2DescribeVpcEndpointServiceConfigurationsRequest; @class AWSEC2DescribeVpcEndpointServiceConfigurationsResult; @class AWSEC2DescribeVpcEndpointServicePermissionsRequest; @class AWSEC2DescribeVpcEndpointServicePermissionsResult; @class AWSEC2DescribeVpcEndpointServicesRequest; @class AWSEC2DescribeVpcEndpointServicesResult; @class AWSEC2DescribeVpcEndpointsRequest; @class AWSEC2DescribeVpcEndpointsResult; @class AWSEC2DescribeVpcPeeringConnectionsRequest; @class AWSEC2DescribeVpcPeeringConnectionsResult; @class AWSEC2DescribeVpcsRequest; @class AWSEC2DescribeVpcsResult; @class AWSEC2DescribeVpnConnectionsRequest; @class AWSEC2DescribeVpnConnectionsResult; @class AWSEC2DescribeVpnGatewaysRequest; @class AWSEC2DescribeVpnGatewaysResult; @class AWSEC2DestinationOptionsRequest; @class AWSEC2DestinationOptionsResponse; @class AWSEC2DetachClassicLinkVpcRequest; @class AWSEC2DetachClassicLinkVpcResult; @class AWSEC2DetachInternetGatewayRequest; @class AWSEC2DetachNetworkInterfaceRequest; @class AWSEC2DetachVerifiedAccessTrustProviderRequest; @class AWSEC2DetachVerifiedAccessTrustProviderResult; @class AWSEC2DetachVolumeRequest; @class AWSEC2DetachVpnGatewayRequest; @class AWSEC2DeviceOptions; @class AWSEC2DhcpConfiguration; @class AWSEC2DhcpOptions; @class AWSEC2DirectoryServiceAuthentication; @class AWSEC2DirectoryServiceAuthenticationRequest; @class AWSEC2DisableAddressTransferRequest; @class AWSEC2DisableAddressTransferResult; @class AWSEC2DisableAwsNetworkPerformanceMetricSubscriptionRequest; @class AWSEC2DisableAwsNetworkPerformanceMetricSubscriptionResult; @class AWSEC2DisableEbsEncryptionByDefaultRequest; @class AWSEC2DisableEbsEncryptionByDefaultResult; @class AWSEC2DisableFastLaunchRequest; @class AWSEC2DisableFastLaunchResult; @class AWSEC2DisableFastSnapshotRestoreErrorItem; @class AWSEC2DisableFastSnapshotRestoreStateError; @class AWSEC2DisableFastSnapshotRestoreStateErrorItem; @class AWSEC2DisableFastSnapshotRestoreSuccessItem; @class AWSEC2DisableFastSnapshotRestoresRequest; @class AWSEC2DisableFastSnapshotRestoresResult; @class AWSEC2DisableImageDeprecationRequest; @class AWSEC2DisableImageDeprecationResult; @class AWSEC2DisableIpamOrganizationAdminAccountRequest; @class AWSEC2DisableIpamOrganizationAdminAccountResult; @class AWSEC2DisableSerialConsoleAccessRequest; @class AWSEC2DisableSerialConsoleAccessResult; @class AWSEC2DisableTransitGatewayRouteTablePropagationRequest; @class AWSEC2DisableTransitGatewayRouteTablePropagationResult; @class AWSEC2DisableVgwRoutePropagationRequest; @class AWSEC2DisableVpcClassicLinkDnsSupportRequest; @class AWSEC2DisableVpcClassicLinkDnsSupportResult; @class AWSEC2DisableVpcClassicLinkRequest; @class AWSEC2DisableVpcClassicLinkResult; @class AWSEC2DisassociateAddressRequest; @class AWSEC2DisassociateClientVpnTargetNetworkRequest; @class AWSEC2DisassociateClientVpnTargetNetworkResult; @class AWSEC2DisassociateEnclaveCertificateIamRoleRequest; @class AWSEC2DisassociateEnclaveCertificateIamRoleResult; @class AWSEC2DisassociateIamInstanceProfileRequest; @class AWSEC2DisassociateIamInstanceProfileResult; @class AWSEC2DisassociateInstanceEventWindowRequest; @class AWSEC2DisassociateInstanceEventWindowResult; @class AWSEC2DisassociateIpamResourceDiscoveryRequest; @class AWSEC2DisassociateIpamResourceDiscoveryResult; @class AWSEC2DisassociateNatGatewayAddressRequest; @class AWSEC2DisassociateNatGatewayAddressResult; @class AWSEC2DisassociateRouteTableRequest; @class AWSEC2DisassociateSubnetCidrBlockRequest; @class AWSEC2DisassociateSubnetCidrBlockResult; @class AWSEC2DisassociateTransitGatewayMulticastDomainRequest; @class AWSEC2DisassociateTransitGatewayMulticastDomainResult; @class AWSEC2DisassociateTransitGatewayPolicyTableRequest; @class AWSEC2DisassociateTransitGatewayPolicyTableResult; @class AWSEC2DisassociateTransitGatewayRouteTableRequest; @class AWSEC2DisassociateTransitGatewayRouteTableResult; @class AWSEC2DisassociateTrunkInterfaceRequest; @class AWSEC2DisassociateTrunkInterfaceResult; @class AWSEC2DisassociateVpcCidrBlockRequest; @class AWSEC2DisassociateVpcCidrBlockResult; @class AWSEC2DiskImage; @class AWSEC2DiskImageDescription; @class AWSEC2DiskImageDetail; @class AWSEC2DiskImageVolumeDescription; @class AWSEC2DiskInfo; @class AWSEC2DnsEntry; @class AWSEC2DnsOptions; @class AWSEC2DnsOptionsSpecification; @class AWSEC2DnsServersOptionsModifyStructure; @class AWSEC2EbsBlockDevice; @class AWSEC2EbsInfo; @class AWSEC2EbsInstanceBlockDevice; @class AWSEC2EbsInstanceBlockDeviceSpecification; @class AWSEC2EbsOptimizedInfo; @class AWSEC2Ec2InstanceConnectEndpoint; @class AWSEC2EfaInfo; @class AWSEC2EgressOnlyInternetGateway; @class AWSEC2ElasticGpuAssociation; @class AWSEC2ElasticGpuHealth; @class AWSEC2ElasticGpuSpecification; @class AWSEC2ElasticGpuSpecificationResponse; @class AWSEC2ElasticGpus; @class AWSEC2ElasticInferenceAccelerator; @class AWSEC2ElasticInferenceAcceleratorAssociation; @class AWSEC2EnaSrdSpecification; @class AWSEC2EnaSrdUdpSpecification; @class AWSEC2EnableAddressTransferRequest; @class AWSEC2EnableAddressTransferResult; @class AWSEC2EnableAwsNetworkPerformanceMetricSubscriptionRequest; @class AWSEC2EnableAwsNetworkPerformanceMetricSubscriptionResult; @class AWSEC2EnableEbsEncryptionByDefaultRequest; @class AWSEC2EnableEbsEncryptionByDefaultResult; @class AWSEC2EnableFastLaunchRequest; @class AWSEC2EnableFastLaunchResult; @class AWSEC2EnableFastSnapshotRestoreErrorItem; @class AWSEC2EnableFastSnapshotRestoreStateError; @class AWSEC2EnableFastSnapshotRestoreStateErrorItem; @class AWSEC2EnableFastSnapshotRestoreSuccessItem; @class AWSEC2EnableFastSnapshotRestoresRequest; @class AWSEC2EnableFastSnapshotRestoresResult; @class AWSEC2EnableImageDeprecationRequest; @class AWSEC2EnableImageDeprecationResult; @class AWSEC2EnableIpamOrganizationAdminAccountRequest; @class AWSEC2EnableIpamOrganizationAdminAccountResult; @class AWSEC2EnableReachabilityAnalyzerOrganizationSharingRequest; @class AWSEC2EnableReachabilityAnalyzerOrganizationSharingResult; @class AWSEC2EnableSerialConsoleAccessRequest; @class AWSEC2EnableSerialConsoleAccessResult; @class AWSEC2EnableTransitGatewayRouteTablePropagationRequest; @class AWSEC2EnableTransitGatewayRouteTablePropagationResult; @class AWSEC2EnableVgwRoutePropagationRequest; @class AWSEC2EnableVolumeIORequest; @class AWSEC2EnableVpcClassicLinkDnsSupportRequest; @class AWSEC2EnableVpcClassicLinkDnsSupportResult; @class AWSEC2EnableVpcClassicLinkRequest; @class AWSEC2EnableVpcClassicLinkResult; @class AWSEC2EnclaveOptions; @class AWSEC2EnclaveOptionsRequest; @class AWSEC2EventInformation; @class AWSEC2Explanation; @class AWSEC2ExportClientVpnClientCertificateRevocationListRequest; @class AWSEC2ExportClientVpnClientCertificateRevocationListResult; @class AWSEC2ExportClientVpnClientConfigurationRequest; @class AWSEC2ExportClientVpnClientConfigurationResult; @class AWSEC2ExportImageRequest; @class AWSEC2ExportImageResult; @class AWSEC2ExportImageTask; @class AWSEC2ExportTask; @class AWSEC2ExportTaskS3Location; @class AWSEC2ExportTaskS3LocationRequest; @class AWSEC2ExportToS3Task; @class AWSEC2ExportToS3TaskSpecification; @class AWSEC2ExportTransitGatewayRoutesRequest; @class AWSEC2ExportTransitGatewayRoutesResult; @class AWSEC2FailedCapacityReservationFleetCancellationResult; @class AWSEC2FailedQueuedPurchaseDeletion; @class AWSEC2FastLaunchLaunchTemplateSpecificationRequest; @class AWSEC2FastLaunchLaunchTemplateSpecificationResponse; @class AWSEC2FastLaunchSnapshotConfigurationRequest; @class AWSEC2FastLaunchSnapshotConfigurationResponse; @class AWSEC2FederatedAuthentication; @class AWSEC2FederatedAuthenticationRequest; @class AWSEC2Filter; @class AWSEC2FilterPortRange; @class AWSEC2FirewallStatefulRule; @class AWSEC2FirewallStatelessRule; @class AWSEC2FleetCapacityReservation; @class AWSEC2FleetData; @class AWSEC2FleetLaunchTemplateConfig; @class AWSEC2FleetLaunchTemplateConfigRequest; @class AWSEC2FleetLaunchTemplateOverrides; @class AWSEC2FleetLaunchTemplateOverridesRequest; @class AWSEC2FleetLaunchTemplateSpecification; @class AWSEC2FleetLaunchTemplateSpecificationRequest; @class AWSEC2FleetSpotCapacityRebalance; @class AWSEC2FleetSpotCapacityRebalanceRequest; @class AWSEC2FleetSpotMaintenanceStrategies; @class AWSEC2FleetSpotMaintenanceStrategiesRequest; @class AWSEC2FlowLog; @class AWSEC2FpgaDeviceInfo; @class AWSEC2FpgaDeviceMemoryInfo; @class AWSEC2FpgaImage; @class AWSEC2FpgaImageAttribute; @class AWSEC2FpgaImageState; @class AWSEC2FpgaInfo; @class AWSEC2GetAssociatedEnclaveCertificateIamRolesRequest; @class AWSEC2GetAssociatedEnclaveCertificateIamRolesResult; @class AWSEC2GetAssociatedIpv6PoolCidrsRequest; @class AWSEC2GetAssociatedIpv6PoolCidrsResult; @class AWSEC2GetAwsNetworkPerformanceDataRequest; @class AWSEC2GetAwsNetworkPerformanceDataResult; @class AWSEC2GetCapacityReservationUsageRequest; @class AWSEC2GetCapacityReservationUsageResult; @class AWSEC2GetCoipPoolUsageRequest; @class AWSEC2GetCoipPoolUsageResult; @class AWSEC2GetConsoleOutputRequest; @class AWSEC2GetConsoleOutputResult; @class AWSEC2GetConsoleScreenshotRequest; @class AWSEC2GetConsoleScreenshotResult; @class AWSEC2GetDefaultCreditSpecificationRequest; @class AWSEC2GetDefaultCreditSpecificationResult; @class AWSEC2GetEbsDefaultKmsKeyIdRequest; @class AWSEC2GetEbsDefaultKmsKeyIdResult; @class AWSEC2GetEbsEncryptionByDefaultRequest; @class AWSEC2GetEbsEncryptionByDefaultResult; @class AWSEC2GetFlowLogsIntegrationTemplateRequest; @class AWSEC2GetFlowLogsIntegrationTemplateResult; @class AWSEC2GetGroupsForCapacityReservationRequest; @class AWSEC2GetGroupsForCapacityReservationResult; @class AWSEC2GetHostReservationPurchasePreviewRequest; @class AWSEC2GetHostReservationPurchasePreviewResult; @class AWSEC2GetInstanceTypesFromInstanceRequirementsRequest; @class AWSEC2GetInstanceTypesFromInstanceRequirementsResult; @class AWSEC2GetInstanceUefiDataRequest; @class AWSEC2GetInstanceUefiDataResult; @class AWSEC2GetIpamAddressHistoryRequest; @class AWSEC2GetIpamAddressHistoryResult; @class AWSEC2GetIpamDiscoveredAccountsRequest; @class AWSEC2GetIpamDiscoveredAccountsResult; @class AWSEC2GetIpamDiscoveredResourceCidrsRequest; @class AWSEC2GetIpamDiscoveredResourceCidrsResult; @class AWSEC2GetIpamPoolAllocationsRequest; @class AWSEC2GetIpamPoolAllocationsResult; @class AWSEC2GetIpamPoolCidrsRequest; @class AWSEC2GetIpamPoolCidrsResult; @class AWSEC2GetIpamResourceCidrsRequest; @class AWSEC2GetIpamResourceCidrsResult; @class AWSEC2GetLaunchTemplateDataRequest; @class AWSEC2GetLaunchTemplateDataResult; @class AWSEC2GetManagedPrefixListAssociationsRequest; @class AWSEC2GetManagedPrefixListAssociationsResult; @class AWSEC2GetManagedPrefixListEntriesRequest; @class AWSEC2GetManagedPrefixListEntriesResult; @class AWSEC2GetNetworkInsightsAccessScopeAnalysisFindingsRequest; @class AWSEC2GetNetworkInsightsAccessScopeAnalysisFindingsResult; @class AWSEC2GetNetworkInsightsAccessScopeContentRequest; @class AWSEC2GetNetworkInsightsAccessScopeContentResult; @class AWSEC2GetPasswordDataRequest; @class AWSEC2GetPasswordDataResult; @class AWSEC2GetReservedInstancesExchangeQuoteRequest; @class AWSEC2GetReservedInstancesExchangeQuoteResult; @class AWSEC2GetSerialConsoleAccessStatusRequest; @class AWSEC2GetSerialConsoleAccessStatusResult; @class AWSEC2GetSpotPlacementScoresRequest; @class AWSEC2GetSpotPlacementScoresResult; @class AWSEC2GetSubnetCidrReservationsRequest; @class AWSEC2GetSubnetCidrReservationsResult; @class AWSEC2GetTransitGatewayAttachmentPropagationsRequest; @class AWSEC2GetTransitGatewayAttachmentPropagationsResult; @class AWSEC2GetTransitGatewayMulticastDomainAssociationsRequest; @class AWSEC2GetTransitGatewayMulticastDomainAssociationsResult; @class AWSEC2GetTransitGatewayPolicyTableAssociationsRequest; @class AWSEC2GetTransitGatewayPolicyTableAssociationsResult; @class AWSEC2GetTransitGatewayPolicyTableEntriesRequest; @class AWSEC2GetTransitGatewayPolicyTableEntriesResult; @class AWSEC2GetTransitGatewayPrefixListReferencesRequest; @class AWSEC2GetTransitGatewayPrefixListReferencesResult; @class AWSEC2GetTransitGatewayRouteTableAssociationsRequest; @class AWSEC2GetTransitGatewayRouteTableAssociationsResult; @class AWSEC2GetTransitGatewayRouteTablePropagationsRequest; @class AWSEC2GetTransitGatewayRouteTablePropagationsResult; @class AWSEC2GetVerifiedAccessEndpointPolicyRequest; @class AWSEC2GetVerifiedAccessEndpointPolicyResult; @class AWSEC2GetVerifiedAccessGroupPolicyRequest; @class AWSEC2GetVerifiedAccessGroupPolicyResult; @class AWSEC2GetVpnConnectionDeviceSampleConfigurationRequest; @class AWSEC2GetVpnConnectionDeviceSampleConfigurationResult; @class AWSEC2GetVpnConnectionDeviceTypesRequest; @class AWSEC2GetVpnConnectionDeviceTypesResult; @class AWSEC2GetVpnTunnelReplacementStatusRequest; @class AWSEC2GetVpnTunnelReplacementStatusResult; @class AWSEC2GpuDeviceInfo; @class AWSEC2GpuDeviceMemoryInfo; @class AWSEC2GpuInfo; @class AWSEC2GroupIdentifier; @class AWSEC2HibernationOptions; @class AWSEC2HibernationOptionsRequest; @class AWSEC2HistoryRecord; @class AWSEC2HistoryRecordEntry; @class AWSEC2Host; @class AWSEC2HostInstance; @class AWSEC2HostOffering; @class AWSEC2HostProperties; @class AWSEC2HostReservation; @class AWSEC2IKEVersionsListValue; @class AWSEC2IKEVersionsRequestListValue; @class AWSEC2IamInstanceProfile; @class AWSEC2IamInstanceProfileAssociation; @class AWSEC2IamInstanceProfileSpecification; @class AWSEC2IcmpTypeCode; @class AWSEC2IdFormat; @class AWSEC2Image; @class AWSEC2ImageAttribute; @class AWSEC2ImageDiskContainer; @class AWSEC2ImageRecycleBinInfo; @class AWSEC2ImportClientVpnClientCertificateRevocationListRequest; @class AWSEC2ImportClientVpnClientCertificateRevocationListResult; @class AWSEC2ImportImageLicenseConfigurationRequest; @class AWSEC2ImportImageLicenseConfigurationResponse; @class AWSEC2ImportImageRequest; @class AWSEC2ImportImageResult; @class AWSEC2ImportImageTask; @class AWSEC2ImportInstanceLaunchSpecification; @class AWSEC2ImportInstanceRequest; @class AWSEC2ImportInstanceResult; @class AWSEC2ImportInstanceTaskDetails; @class AWSEC2ImportInstanceVolumeDetailItem; @class AWSEC2ImportKeyPairRequest; @class AWSEC2ImportKeyPairResult; @class AWSEC2ImportSnapshotRequest; @class AWSEC2ImportSnapshotResult; @class AWSEC2ImportSnapshotTask; @class AWSEC2ImportVolumeRequest; @class AWSEC2ImportVolumeResult; @class AWSEC2ImportVolumeTaskDetails; @class AWSEC2InferenceAcceleratorInfo; @class AWSEC2InferenceDeviceInfo; @class AWSEC2InferenceDeviceMemoryInfo; @class AWSEC2Instance; @class AWSEC2InstanceAttribute; @class AWSEC2InstanceBlockDeviceMapping; @class AWSEC2InstanceBlockDeviceMappingSpecification; @class AWSEC2InstanceCapacity; @class AWSEC2InstanceCount; @class AWSEC2InstanceCreditSpecification; @class AWSEC2InstanceCreditSpecificationRequest; @class AWSEC2InstanceEventWindow; @class AWSEC2InstanceEventWindowAssociationRequest; @class AWSEC2InstanceEventWindowAssociationTarget; @class AWSEC2InstanceEventWindowDisassociationRequest; @class AWSEC2InstanceEventWindowStateChange; @class AWSEC2InstanceEventWindowTimeRange; @class AWSEC2InstanceEventWindowTimeRangeRequest; @class AWSEC2InstanceExportDetails; @class AWSEC2InstanceFamilyCreditSpecification; @class AWSEC2InstanceIpv4Prefix; @class AWSEC2InstanceIpv6Address; @class AWSEC2InstanceIpv6AddressRequest; @class AWSEC2InstanceIpv6Prefix; @class AWSEC2InstanceMaintenanceOptions; @class AWSEC2InstanceMaintenanceOptionsRequest; @class AWSEC2InstanceMarketOptionsRequest; @class AWSEC2InstanceMetadataOptionsRequest; @class AWSEC2InstanceMetadataOptionsResponse; @class AWSEC2InstanceMonitoring; @class AWSEC2InstanceNetworkInterface; @class AWSEC2InstanceNetworkInterfaceAssociation; @class AWSEC2InstanceNetworkInterfaceAttachment; @class AWSEC2InstanceNetworkInterfaceSpecification; @class AWSEC2InstancePrivateIpAddress; @class AWSEC2InstanceRequirements; @class AWSEC2InstanceRequirementsRequest; @class AWSEC2InstanceRequirementsWithMetadataRequest; @class AWSEC2InstanceSpecification; @class AWSEC2InstanceState; @class AWSEC2InstanceStateChange; @class AWSEC2InstanceStatus; @class AWSEC2InstanceStatusDetails; @class AWSEC2InstanceStatusEvent; @class AWSEC2InstanceStatusSummary; @class AWSEC2InstanceStorageInfo; @class AWSEC2InstanceTagNotificationAttribute; @class AWSEC2InstanceTypeInfo; @class AWSEC2InstanceTypeInfoFromInstanceRequirements; @class AWSEC2InstanceTypeOffering; @class AWSEC2InstanceUsage; @class AWSEC2IntegrateServices; @class AWSEC2InternetGateway; @class AWSEC2InternetGatewayAttachment; @class AWSEC2IpPermission; @class AWSEC2IpRange; @class AWSEC2Ipam; @class AWSEC2IpamAddressHistoryRecord; @class AWSEC2IpamCidrAuthorizationContext; @class AWSEC2IpamDiscoveredAccount; @class AWSEC2IpamDiscoveredResourceCidr; @class AWSEC2IpamDiscoveryFailureReason; @class AWSEC2IpamOperatingRegion; @class AWSEC2IpamPool; @class AWSEC2IpamPoolAllocation; @class AWSEC2IpamPoolCidr; @class AWSEC2IpamPoolCidrFailureReason; @class AWSEC2IpamResourceCidr; @class AWSEC2IpamResourceDiscovery; @class AWSEC2IpamResourceDiscoveryAssociation; @class AWSEC2IpamResourceTag; @class AWSEC2IpamScope; @class AWSEC2Ipv4PrefixSpecification; @class AWSEC2Ipv4PrefixSpecificationRequest; @class AWSEC2Ipv4PrefixSpecificationResponse; @class AWSEC2Ipv6CidrAssociation; @class AWSEC2Ipv6CidrBlock; @class AWSEC2Ipv6Pool; @class AWSEC2Ipv6PrefixSpecification; @class AWSEC2Ipv6PrefixSpecificationRequest; @class AWSEC2Ipv6PrefixSpecificationResponse; @class AWSEC2Ipv6Range; @class AWSEC2KeyPair; @class AWSEC2KeyPairInfo; @class AWSEC2LastError; @class AWSEC2LaunchPermission; @class AWSEC2LaunchPermissionModifications; @class AWSEC2LaunchSpecification; @class AWSEC2LaunchTemplate; @class AWSEC2LaunchTemplateAndOverridesResponse; @class AWSEC2LaunchTemplateBlockDeviceMapping; @class AWSEC2LaunchTemplateBlockDeviceMappingRequest; @class AWSEC2LaunchTemplateCapacityReservationSpecificationRequest; @class AWSEC2LaunchTemplateCapacityReservationSpecificationResponse; @class AWSEC2LaunchTemplateConfig; @class AWSEC2LaunchTemplateCpuOptions; @class AWSEC2LaunchTemplateCpuOptionsRequest; @class AWSEC2LaunchTemplateEbsBlockDevice; @class AWSEC2LaunchTemplateEbsBlockDeviceRequest; @class AWSEC2LaunchTemplateElasticInferenceAccelerator; @class AWSEC2LaunchTemplateElasticInferenceAcceleratorResponse; @class AWSEC2LaunchTemplateEnclaveOptions; @class AWSEC2LaunchTemplateEnclaveOptionsRequest; @class AWSEC2LaunchTemplateHibernationOptions; @class AWSEC2LaunchTemplateHibernationOptionsRequest; @class AWSEC2LaunchTemplateIamInstanceProfileSpecification; @class AWSEC2LaunchTemplateIamInstanceProfileSpecificationRequest; @class AWSEC2LaunchTemplateInstanceMaintenanceOptions; @class AWSEC2LaunchTemplateInstanceMaintenanceOptionsRequest; @class AWSEC2LaunchTemplateInstanceMarketOptions; @class AWSEC2LaunchTemplateInstanceMarketOptionsRequest; @class AWSEC2LaunchTemplateInstanceMetadataOptions; @class AWSEC2LaunchTemplateInstanceMetadataOptionsRequest; @class AWSEC2LaunchTemplateInstanceNetworkInterfaceSpecification; @class AWSEC2LaunchTemplateInstanceNetworkInterfaceSpecificationRequest; @class AWSEC2LaunchTemplateLicenseConfiguration; @class AWSEC2LaunchTemplateLicenseConfigurationRequest; @class AWSEC2LaunchTemplateOverrides; @class AWSEC2LaunchTemplatePlacement; @class AWSEC2LaunchTemplatePlacementRequest; @class AWSEC2LaunchTemplatePrivateDnsNameOptions; @class AWSEC2LaunchTemplatePrivateDnsNameOptionsRequest; @class AWSEC2LaunchTemplateSpecification; @class AWSEC2LaunchTemplateSpotMarketOptions; @class AWSEC2LaunchTemplateSpotMarketOptionsRequest; @class AWSEC2LaunchTemplateTagSpecification; @class AWSEC2LaunchTemplateTagSpecificationRequest; @class AWSEC2LaunchTemplateVersion; @class AWSEC2LaunchTemplatesMonitoring; @class AWSEC2LaunchTemplatesMonitoringRequest; @class AWSEC2LicenseConfiguration; @class AWSEC2LicenseConfigurationRequest; @class AWSEC2ListImagesInRecycleBinRequest; @class AWSEC2ListImagesInRecycleBinResult; @class AWSEC2ListSnapshotsInRecycleBinRequest; @class AWSEC2ListSnapshotsInRecycleBinResult; @class AWSEC2LoadBalancersConfig; @class AWSEC2LoadPermission; @class AWSEC2LoadPermissionModifications; @class AWSEC2LoadPermissionRequest; @class AWSEC2LocalGateway; @class AWSEC2LocalGatewayRoute; @class AWSEC2LocalGatewayRouteTable; @class AWSEC2LocalGatewayRouteTableVirtualInterfaceGroupAssociation; @class AWSEC2LocalGatewayRouteTableVpcAssociation; @class AWSEC2LocalGatewayVirtualInterface; @class AWSEC2LocalGatewayVirtualInterfaceGroup; @class AWSEC2MaintenanceDetails; @class AWSEC2ManagedPrefixList; @class AWSEC2MemoryGiBPerVCpu; @class AWSEC2MemoryGiBPerVCpuRequest; @class AWSEC2MemoryInfo; @class AWSEC2MemoryMiB; @class AWSEC2MemoryMiBRequest; @class AWSEC2MetricPoint; @class AWSEC2ModifyAddressAttributeRequest; @class AWSEC2ModifyAddressAttributeResult; @class AWSEC2ModifyAvailabilityZoneGroupRequest; @class AWSEC2ModifyAvailabilityZoneGroupResult; @class AWSEC2ModifyCapacityReservationFleetRequest; @class AWSEC2ModifyCapacityReservationFleetResult; @class AWSEC2ModifyCapacityReservationRequest; @class AWSEC2ModifyCapacityReservationResult; @class AWSEC2ModifyClientVpnEndpointRequest; @class AWSEC2ModifyClientVpnEndpointResult; @class AWSEC2ModifyDefaultCreditSpecificationRequest; @class AWSEC2ModifyDefaultCreditSpecificationResult; @class AWSEC2ModifyEbsDefaultKmsKeyIdRequest; @class AWSEC2ModifyEbsDefaultKmsKeyIdResult; @class AWSEC2ModifyFleetRequest; @class AWSEC2ModifyFleetResult; @class AWSEC2ModifyFpgaImageAttributeRequest; @class AWSEC2ModifyFpgaImageAttributeResult; @class AWSEC2ModifyHostsRequest; @class AWSEC2ModifyHostsResult; @class AWSEC2ModifyIdFormatRequest; @class AWSEC2ModifyIdentityIdFormatRequest; @class AWSEC2ModifyImageAttributeRequest; @class AWSEC2ModifyInstanceAttributeRequest; @class AWSEC2ModifyInstanceCapacityReservationAttributesRequest; @class AWSEC2ModifyInstanceCapacityReservationAttributesResult; @class AWSEC2ModifyInstanceCreditSpecificationRequest; @class AWSEC2ModifyInstanceCreditSpecificationResult; @class AWSEC2ModifyInstanceEventStartTimeRequest; @class AWSEC2ModifyInstanceEventStartTimeResult; @class AWSEC2ModifyInstanceEventWindowRequest; @class AWSEC2ModifyInstanceEventWindowResult; @class AWSEC2ModifyInstanceMaintenanceOptionsRequest; @class AWSEC2ModifyInstanceMaintenanceOptionsResult; @class AWSEC2ModifyInstanceMetadataOptionsRequest; @class AWSEC2ModifyInstanceMetadataOptionsResult; @class AWSEC2ModifyInstancePlacementRequest; @class AWSEC2ModifyInstancePlacementResult; @class AWSEC2ModifyIpamPoolRequest; @class AWSEC2ModifyIpamPoolResult; @class AWSEC2ModifyIpamRequest; @class AWSEC2ModifyIpamResourceCidrRequest; @class AWSEC2ModifyIpamResourceCidrResult; @class AWSEC2ModifyIpamResourceDiscoveryRequest; @class AWSEC2ModifyIpamResourceDiscoveryResult; @class AWSEC2ModifyIpamResult; @class AWSEC2ModifyIpamScopeRequest; @class AWSEC2ModifyIpamScopeResult; @class AWSEC2ModifyLaunchTemplateRequest; @class AWSEC2ModifyLaunchTemplateResult; @class AWSEC2ModifyLocalGatewayRouteRequest; @class AWSEC2ModifyLocalGatewayRouteResult; @class AWSEC2ModifyManagedPrefixListRequest; @class AWSEC2ModifyManagedPrefixListResult; @class AWSEC2ModifyNetworkInterfaceAttributeRequest; @class AWSEC2ModifyPrivateDnsNameOptionsRequest; @class AWSEC2ModifyPrivateDnsNameOptionsResult; @class AWSEC2ModifyReservedInstancesRequest; @class AWSEC2ModifyReservedInstancesResult; @class AWSEC2ModifySecurityGroupRulesRequest; @class AWSEC2ModifySecurityGroupRulesResult; @class AWSEC2ModifySnapshotAttributeRequest; @class AWSEC2ModifySnapshotTierRequest; @class AWSEC2ModifySnapshotTierResult; @class AWSEC2ModifySpotFleetRequestRequest; @class AWSEC2ModifySpotFleetRequestResponse; @class AWSEC2ModifySubnetAttributeRequest; @class AWSEC2ModifyTrafficMirrorFilterNetworkServicesRequest; @class AWSEC2ModifyTrafficMirrorFilterNetworkServicesResult; @class AWSEC2ModifyTrafficMirrorFilterRuleRequest; @class AWSEC2ModifyTrafficMirrorFilterRuleResult; @class AWSEC2ModifyTrafficMirrorSessionRequest; @class AWSEC2ModifyTrafficMirrorSessionResult; @class AWSEC2ModifyTransitGatewayOptions; @class AWSEC2ModifyTransitGatewayPrefixListReferenceRequest; @class AWSEC2ModifyTransitGatewayPrefixListReferenceResult; @class AWSEC2ModifyTransitGatewayRequest; @class AWSEC2ModifyTransitGatewayResult; @class AWSEC2ModifyTransitGatewayVpcAttachmentRequest; @class AWSEC2ModifyTransitGatewayVpcAttachmentRequestOptions; @class AWSEC2ModifyTransitGatewayVpcAttachmentResult; @class AWSEC2ModifyVerifiedAccessEndpointEniOptions; @class AWSEC2ModifyVerifiedAccessEndpointLoadBalancerOptions; @class AWSEC2ModifyVerifiedAccessEndpointPolicyRequest; @class AWSEC2ModifyVerifiedAccessEndpointPolicyResult; @class AWSEC2ModifyVerifiedAccessEndpointRequest; @class AWSEC2ModifyVerifiedAccessEndpointResult; @class AWSEC2ModifyVerifiedAccessGroupPolicyRequest; @class AWSEC2ModifyVerifiedAccessGroupPolicyResult; @class AWSEC2ModifyVerifiedAccessGroupRequest; @class AWSEC2ModifyVerifiedAccessGroupResult; @class AWSEC2ModifyVerifiedAccessInstanceLoggingConfigurationRequest; @class AWSEC2ModifyVerifiedAccessInstanceLoggingConfigurationResult; @class AWSEC2ModifyVerifiedAccessInstanceRequest; @class AWSEC2ModifyVerifiedAccessInstanceResult; @class AWSEC2ModifyVerifiedAccessTrustProviderOidcOptions; @class AWSEC2ModifyVerifiedAccessTrustProviderRequest; @class AWSEC2ModifyVerifiedAccessTrustProviderResult; @class AWSEC2ModifyVolumeAttributeRequest; @class AWSEC2ModifyVolumeRequest; @class AWSEC2ModifyVolumeResult; @class AWSEC2ModifyVpcAttributeRequest; @class AWSEC2ModifyVpcEndpointConnectionNotificationRequest; @class AWSEC2ModifyVpcEndpointConnectionNotificationResult; @class AWSEC2ModifyVpcEndpointRequest; @class AWSEC2ModifyVpcEndpointResult; @class AWSEC2ModifyVpcEndpointServiceConfigurationRequest; @class AWSEC2ModifyVpcEndpointServiceConfigurationResult; @class AWSEC2ModifyVpcEndpointServicePayerResponsibilityRequest; @class AWSEC2ModifyVpcEndpointServicePayerResponsibilityResult; @class AWSEC2ModifyVpcEndpointServicePermissionsRequest; @class AWSEC2ModifyVpcEndpointServicePermissionsResult; @class AWSEC2ModifyVpcPeeringConnectionOptionsRequest; @class AWSEC2ModifyVpcPeeringConnectionOptionsResult; @class AWSEC2ModifyVpcTenancyRequest; @class AWSEC2ModifyVpcTenancyResult; @class AWSEC2ModifyVpnConnectionOptionsRequest; @class AWSEC2ModifyVpnConnectionOptionsResult; @class AWSEC2ModifyVpnConnectionRequest; @class AWSEC2ModifyVpnConnectionResult; @class AWSEC2ModifyVpnTunnelCertificateRequest; @class AWSEC2ModifyVpnTunnelCertificateResult; @class AWSEC2ModifyVpnTunnelOptionsRequest; @class AWSEC2ModifyVpnTunnelOptionsResult; @class AWSEC2ModifyVpnTunnelOptionsSpecification; @class AWSEC2MonitorInstancesRequest; @class AWSEC2MonitorInstancesResult; @class AWSEC2Monitoring; @class AWSEC2MoveAddressToVpcRequest; @class AWSEC2MoveAddressToVpcResult; @class AWSEC2MoveByoipCidrToIpamRequest; @class AWSEC2MoveByoipCidrToIpamResult; @class AWSEC2MovingAddressStatus; @class AWSEC2NatGateway; @class AWSEC2NatGatewayAddress; @class AWSEC2NetworkAcl; @class AWSEC2NetworkAclAssociation; @class AWSEC2NetworkAclEntry; @class AWSEC2NetworkBandwidthGbps; @class AWSEC2NetworkBandwidthGbpsRequest; @class AWSEC2NetworkCardInfo; @class AWSEC2NetworkInfo; @class AWSEC2NetworkInsightsAccessScope; @class AWSEC2NetworkInsightsAccessScopeAnalysis; @class AWSEC2NetworkInsightsAccessScopeContent; @class AWSEC2NetworkInsightsAnalysis; @class AWSEC2NetworkInsightsPath; @class AWSEC2NetworkInterface; @class AWSEC2NetworkInterfaceAssociation; @class AWSEC2NetworkInterfaceAttachment; @class AWSEC2NetworkInterfaceAttachmentChanges; @class AWSEC2NetworkInterfaceCount; @class AWSEC2NetworkInterfaceCountRequest; @class AWSEC2NetworkInterfaceIpv6Address; @class AWSEC2NetworkInterfacePermission; @class AWSEC2NetworkInterfacePermissionState; @class AWSEC2NetworkInterfacePrivateIpAddress; @class AWSEC2LatestDhcpConfiguration; @class AWSEC2NitroTpmInfo; @class AWSEC2OidcOptions; @class AWSEC2OnDemandOptions; @class AWSEC2OnDemandOptionsRequest; @class AWSEC2PacketHeaderStatement; @class AWSEC2PacketHeaderStatementRequest; @class AWSEC2PathComponent; @class AWSEC2PathFilter; @class AWSEC2PathRequestFilter; @class AWSEC2PathStatement; @class AWSEC2PathStatementRequest; @class AWSEC2PciId; @class AWSEC2PeeringAttachmentStatus; @class AWSEC2PeeringConnectionOptions; @class AWSEC2PeeringConnectionOptionsRequest; @class AWSEC2PeeringTgwInfo; @class AWSEC2Phase1DHGroupNumbersListValue; @class AWSEC2Phase1DHGroupNumbersRequestListValue; @class AWSEC2Phase1EncryptionAlgorithmsListValue; @class AWSEC2Phase1EncryptionAlgorithmsRequestListValue; @class AWSEC2Phase1IntegrityAlgorithmsListValue; @class AWSEC2Phase1IntegrityAlgorithmsRequestListValue; @class AWSEC2Phase2DHGroupNumbersListValue; @class AWSEC2Phase2DHGroupNumbersRequestListValue; @class AWSEC2Phase2EncryptionAlgorithmsListValue; @class AWSEC2Phase2EncryptionAlgorithmsRequestListValue; @class AWSEC2Phase2IntegrityAlgorithmsListValue; @class AWSEC2Phase2IntegrityAlgorithmsRequestListValue; @class AWSEC2Placement; @class AWSEC2PlacementGroup; @class AWSEC2PlacementGroupInfo; @class AWSEC2PlacementResponse; @class AWSEC2PoolCidrBlock; @class AWSEC2PortRange; @class AWSEC2PrefixList; @class AWSEC2PrefixListAssociation; @class AWSEC2PrefixListEntry; @class AWSEC2PrefixListId; @class AWSEC2PriceSchedule; @class AWSEC2PriceScheduleSpecification; @class AWSEC2PricingDetail; @class AWSEC2PrincipalIdFormat; @class AWSEC2PrivateDnsDetails; @class AWSEC2PrivateDnsNameConfiguration; @class AWSEC2PrivateDnsNameOptionsOnLaunch; @class AWSEC2PrivateDnsNameOptionsRequest; @class AWSEC2PrivateDnsNameOptionsResponse; @class AWSEC2PrivateIpAddressSpecification; @class AWSEC2ProcessorInfo; @class AWSEC2ProductCode; @class AWSEC2PropagatingVgw; @class AWSEC2ProvisionByoipCidrRequest; @class AWSEC2ProvisionByoipCidrResult; @class AWSEC2ProvisionIpamPoolCidrRequest; @class AWSEC2ProvisionIpamPoolCidrResult; @class AWSEC2ProvisionPublicIpv4PoolCidrRequest; @class AWSEC2ProvisionPublicIpv4PoolCidrResult; @class AWSEC2ProvisionedBandwidth; @class AWSEC2PtrUpdateStatus; @class AWSEC2PublicIpv4Pool; @class AWSEC2PublicIpv4PoolRange; @class AWSEC2Purchase; @class AWSEC2PurchaseHostReservationRequest; @class AWSEC2PurchaseHostReservationResult; @class AWSEC2PurchaseRequest; @class AWSEC2PurchaseReservedInstancesOfferingRequest; @class AWSEC2PurchaseReservedInstancesOfferingResult; @class AWSEC2PurchaseScheduledInstancesRequest; @class AWSEC2PurchaseScheduledInstancesResult; @class AWSEC2RebootInstancesRequest; @class AWSEC2RecurringCharge; @class AWSEC2ReferencedSecurityGroup; @class AWSEC2Region; @class AWSEC2RegisterImageRequest; @class AWSEC2RegisterImageResult; @class AWSEC2RegisterInstanceEventNotificationAttributesRequest; @class AWSEC2RegisterInstanceEventNotificationAttributesResult; @class AWSEC2RegisterInstanceTagAttributeRequest; @class AWSEC2RegisterTransitGatewayMulticastGroupMembersRequest; @class AWSEC2RegisterTransitGatewayMulticastGroupMembersResult; @class AWSEC2RegisterTransitGatewayMulticastGroupSourcesRequest; @class AWSEC2RegisterTransitGatewayMulticastGroupSourcesResult; @class AWSEC2RejectTransitGatewayMulticastDomainAssociationsRequest; @class AWSEC2RejectTransitGatewayMulticastDomainAssociationsResult; @class AWSEC2RejectTransitGatewayPeeringAttachmentRequest; @class AWSEC2RejectTransitGatewayPeeringAttachmentResult; @class AWSEC2RejectTransitGatewayVpcAttachmentRequest; @class AWSEC2RejectTransitGatewayVpcAttachmentResult; @class AWSEC2RejectVpcEndpointConnectionsRequest; @class AWSEC2RejectVpcEndpointConnectionsResult; @class AWSEC2RejectVpcPeeringConnectionRequest; @class AWSEC2RejectVpcPeeringConnectionResult; @class AWSEC2ReleaseAddressRequest; @class AWSEC2ReleaseHostsRequest; @class AWSEC2ReleaseHostsResult; @class AWSEC2ReleaseIpamPoolAllocationRequest; @class AWSEC2ReleaseIpamPoolAllocationResult; @class AWSEC2RemoveIpamOperatingRegion; @class AWSEC2RemovePrefixListEntry; @class AWSEC2ReplaceIamInstanceProfileAssociationRequest; @class AWSEC2ReplaceIamInstanceProfileAssociationResult; @class AWSEC2ReplaceNetworkAclAssociationRequest; @class AWSEC2ReplaceNetworkAclAssociationResult; @class AWSEC2ReplaceNetworkAclEntryRequest; @class AWSEC2ReplaceRootVolumeTask; @class AWSEC2ReplaceRouteRequest; @class AWSEC2ReplaceRouteTableAssociationRequest; @class AWSEC2ReplaceRouteTableAssociationResult; @class AWSEC2ReplaceTransitGatewayRouteRequest; @class AWSEC2ReplaceTransitGatewayRouteResult; @class AWSEC2ReplaceVpnTunnelRequest; @class AWSEC2ReplaceVpnTunnelResult; @class AWSEC2ReportInstanceStatusRequest; @class AWSEC2RequestFilterPortRange; @class AWSEC2RequestIpamResourceTag; @class AWSEC2RequestLaunchTemplateData; @class AWSEC2RequestSpotFleetRequest; @class AWSEC2RequestSpotFleetResponse; @class AWSEC2RequestSpotInstancesRequest; @class AWSEC2RequestSpotInstancesResult; @class AWSEC2RequestSpotLaunchSpecification; @class AWSEC2Reservation; @class AWSEC2ReservationFleetInstanceSpecification; @class AWSEC2ReservationValue; @class AWSEC2ReservedInstanceLimitPrice; @class AWSEC2ReservedInstanceReservationValue; @class AWSEC2ReservedInstances; @class AWSEC2ReservedInstancesConfiguration; @class AWSEC2ReservedInstancesId; @class AWSEC2ReservedInstancesListing; @class AWSEC2ReservedInstancesModification; @class AWSEC2ReservedInstancesModificationResult; @class AWSEC2ReservedInstancesOffering; @class AWSEC2ResetAddressAttributeRequest; @class AWSEC2ResetAddressAttributeResult; @class AWSEC2ResetEbsDefaultKmsKeyIdRequest; @class AWSEC2ResetEbsDefaultKmsKeyIdResult; @class AWSEC2ResetFpgaImageAttributeRequest; @class AWSEC2ResetFpgaImageAttributeResult; @class AWSEC2ResetImageAttributeRequest; @class AWSEC2ResetInstanceAttributeRequest; @class AWSEC2ResetNetworkInterfaceAttributeRequest; @class AWSEC2ResetSnapshotAttributeRequest; @class AWSEC2ResourceStatement; @class AWSEC2ResourceStatementRequest; @class AWSEC2ResponseError; @class AWSEC2ResponseLaunchTemplateData; @class AWSEC2RestoreAddressToClassicRequest; @class AWSEC2RestoreAddressToClassicResult; @class AWSEC2RestoreImageFromRecycleBinRequest; @class AWSEC2RestoreImageFromRecycleBinResult; @class AWSEC2RestoreManagedPrefixListVersionRequest; @class AWSEC2RestoreManagedPrefixListVersionResult; @class AWSEC2RestoreSnapshotFromRecycleBinRequest; @class AWSEC2RestoreSnapshotFromRecycleBinResult; @class AWSEC2RestoreSnapshotTierRequest; @class AWSEC2RestoreSnapshotTierResult; @class AWSEC2RevokeClientVpnIngressRequest; @class AWSEC2RevokeClientVpnIngressResult; @class AWSEC2RevokeSecurityGroupEgressRequest; @class AWSEC2RevokeSecurityGroupEgressResult; @class AWSEC2RevokeSecurityGroupIngressRequest; @class AWSEC2RevokeSecurityGroupIngressResult; @class AWSEC2Route; @class AWSEC2RouteTable; @class AWSEC2RouteTableAssociation; @class AWSEC2RouteTableAssociationState; @class AWSEC2RuleGroupRuleOptionsPair; @class AWSEC2RuleGroupTypePair; @class AWSEC2RuleOption; @class AWSEC2RunInstancesMonitoringEnabled; @class AWSEC2RunInstancesRequest; @class AWSEC2RunScheduledInstancesRequest; @class AWSEC2RunScheduledInstancesResult; @class AWSEC2S3ObjectTag; @class AWSEC2S3Storage; @class AWSEC2ScheduledInstance; @class AWSEC2ScheduledInstanceAvailability; @class AWSEC2ScheduledInstanceRecurrence; @class AWSEC2ScheduledInstanceRecurrenceRequest; @class AWSEC2ScheduledInstancesBlockDeviceMapping; @class AWSEC2ScheduledInstancesEbs; @class AWSEC2ScheduledInstancesIamInstanceProfile; @class AWSEC2ScheduledInstancesIpv6Address; @class AWSEC2ScheduledInstancesLaunchSpecification; @class AWSEC2ScheduledInstancesMonitoring; @class AWSEC2ScheduledInstancesNetworkInterface; @class AWSEC2ScheduledInstancesPlacement; @class AWSEC2ScheduledInstancesPrivateIpAddressConfig; @class AWSEC2SearchLocalGatewayRoutesRequest; @class AWSEC2SearchLocalGatewayRoutesResult; @class AWSEC2SearchTransitGatewayMulticastGroupsRequest; @class AWSEC2SearchTransitGatewayMulticastGroupsResult; @class AWSEC2SearchTransitGatewayRoutesRequest; @class AWSEC2SearchTransitGatewayRoutesResult; @class AWSEC2SecurityGroup; @class AWSEC2SecurityGroupIdentifier; @class AWSEC2SecurityGroupReference; @class AWSEC2SecurityGroupRule; @class AWSEC2SecurityGroupRuleDescription; @class AWSEC2SecurityGroupRuleRequest; @class AWSEC2SecurityGroupRuleUpdate; @class AWSEC2SendDiagnosticInterruptRequest; @class AWSEC2ServiceConfiguration; @class AWSEC2ServiceDetail; @class AWSEC2ServiceTypeDetail; @class AWSEC2SlotDateTimeRangeRequest; @class AWSEC2SlotStartTimeRangeRequest; @class AWSEC2Snapshot; @class AWSEC2SnapshotDetail; @class AWSEC2SnapshotDiskContainer; @class AWSEC2SnapshotInfo; @class AWSEC2SnapshotRecycleBinInfo; @class AWSEC2SnapshotTaskDetail; @class AWSEC2SnapshotTierStatus; @class AWSEC2SpotCapacityRebalance; @class AWSEC2SpotDatafeedSubscription; @class AWSEC2SpotFleetLaunchSpecification; @class AWSEC2SpotFleetMonitoring; @class AWSEC2SpotFleetRequestConfig; @class AWSEC2SpotFleetRequestConfigData; @class AWSEC2SpotFleetTagSpecification; @class AWSEC2SpotInstanceRequest; @class AWSEC2SpotInstanceStateFault; @class AWSEC2SpotInstanceStatus; @class AWSEC2SpotMaintenanceStrategies; @class AWSEC2SpotMarketOptions; @class AWSEC2SpotOptions; @class AWSEC2SpotOptionsRequest; @class AWSEC2SpotPlacement; @class AWSEC2SpotPlacementScore; @class AWSEC2SpotPrice; @class AWSEC2StaleIpPermission; @class AWSEC2StaleSecurityGroup; @class AWSEC2StartInstancesRequest; @class AWSEC2StartInstancesResult; @class AWSEC2StartNetworkInsightsAccessScopeAnalysisRequest; @class AWSEC2StartNetworkInsightsAccessScopeAnalysisResult; @class AWSEC2StartNetworkInsightsAnalysisRequest; @class AWSEC2StartNetworkInsightsAnalysisResult; @class AWSEC2StartVpcEndpointServicePrivateDnsVerificationRequest; @class AWSEC2StartVpcEndpointServicePrivateDnsVerificationResult; @class AWSEC2StateReason; @class AWSEC2StopInstancesRequest; @class AWSEC2StopInstancesResult; @class AWSEC2Storage; @class AWSEC2StorageLocation; @class AWSEC2StoreImageTaskResult; @class AWSEC2Subnet; @class AWSEC2SubnetAssociation; @class AWSEC2SubnetCidrBlockState; @class AWSEC2SubnetCidrReservation; @class AWSEC2SubnetIpv6CidrBlockAssociation; @class AWSEC2Subscription; @class AWSEC2SuccessfulInstanceCreditSpecificationItem; @class AWSEC2SuccessfulQueuedPurchaseDeletion; @class AWSEC2Tag; @class AWSEC2TagDescription; @class AWSEC2TagSpecification; @class AWSEC2TargetCapacitySpecification; @class AWSEC2TargetCapacitySpecificationRequest; @class AWSEC2TargetConfiguration; @class AWSEC2TargetConfigurationRequest; @class AWSEC2TargetGroup; @class AWSEC2TargetGroupsConfig; @class AWSEC2TargetNetwork; @class AWSEC2TargetReservationValue; @class AWSEC2TerminateClientVpnConnectionsRequest; @class AWSEC2TerminateClientVpnConnectionsResult; @class AWSEC2TerminateConnectionStatus; @class AWSEC2TerminateInstancesRequest; @class AWSEC2TerminateInstancesResult; @class AWSEC2ThroughResourcesStatement; @class AWSEC2ThroughResourcesStatementRequest; @class AWSEC2TotalLocalStorageGB; @class AWSEC2TotalLocalStorageGBRequest; @class AWSEC2TrafficMirrorFilter; @class AWSEC2TrafficMirrorFilterRule; @class AWSEC2TrafficMirrorPortRange; @class AWSEC2TrafficMirrorPortRangeRequest; @class AWSEC2TrafficMirrorSession; @class AWSEC2TrafficMirrorTarget; @class AWSEC2TransitGateway; @class AWSEC2TransitGatewayAssociation; @class AWSEC2TransitGatewayAttachment; @class AWSEC2TransitGatewayAttachmentAssociation; @class AWSEC2TransitGatewayAttachmentBgpConfiguration; @class AWSEC2TransitGatewayAttachmentPropagation; @class AWSEC2TransitGatewayConnect; @class AWSEC2TransitGatewayConnectOptions; @class AWSEC2TransitGatewayConnectPeer; @class AWSEC2TransitGatewayConnectPeerConfiguration; @class AWSEC2TransitGatewayConnectRequestBgpOptions; @class AWSEC2TransitGatewayMulticastDeregisteredGroupMembers; @class AWSEC2TransitGatewayMulticastDeregisteredGroupSources; @class AWSEC2TransitGatewayMulticastDomain; @class AWSEC2TransitGatewayMulticastDomainAssociation; @class AWSEC2TransitGatewayMulticastDomainAssociations; @class AWSEC2TransitGatewayMulticastDomainOptions; @class AWSEC2TransitGatewayMulticastGroup; @class AWSEC2TransitGatewayMulticastRegisteredGroupMembers; @class AWSEC2TransitGatewayMulticastRegisteredGroupSources; @class AWSEC2TransitGatewayOptions; @class AWSEC2TransitGatewayPeeringAttachment; @class AWSEC2TransitGatewayPeeringAttachmentOptions; @class AWSEC2TransitGatewayPolicyRule; @class AWSEC2TransitGatewayPolicyRuleMetaData; @class AWSEC2TransitGatewayPolicyTable; @class AWSEC2TransitGatewayPolicyTableAssociation; @class AWSEC2TransitGatewayPolicyTableEntry; @class AWSEC2TransitGatewayPrefixListAttachment; @class AWSEC2TransitGatewayPrefixListReference; @class AWSEC2TransitGatewayPropagation; @class AWSEC2TransitGatewayRequestOptions; @class AWSEC2TransitGatewayRoute; @class AWSEC2TransitGatewayRouteAttachment; @class AWSEC2TransitGatewayRouteTable; @class AWSEC2TransitGatewayRouteTableAnnouncement; @class AWSEC2TransitGatewayRouteTableAssociation; @class AWSEC2TransitGatewayRouteTablePropagation; @class AWSEC2TransitGatewayRouteTableRoute; @class AWSEC2TransitGatewayVpcAttachment; @class AWSEC2TransitGatewayVpcAttachmentOptions; @class AWSEC2TrunkInterfaceAssociation; @class AWSEC2TunnelOption; @class AWSEC2UnassignIpv6AddressesRequest; @class AWSEC2UnassignIpv6AddressesResult; @class AWSEC2UnassignPrivateIpAddressesRequest; @class AWSEC2UnassignPrivateNatGatewayAddressRequest; @class AWSEC2UnassignPrivateNatGatewayAddressResult; @class AWSEC2UnmonitorInstancesRequest; @class AWSEC2UnmonitorInstancesResult; @class AWSEC2UnsuccessfulInstanceCreditSpecificationItem; @class AWSEC2UnsuccessfulInstanceCreditSpecificationItemError; @class AWSEC2UnsuccessfulItem; @class AWSEC2UnsuccessfulItemError; @class AWSEC2UpdateSecurityGroupRuleDescriptionsEgressRequest; @class AWSEC2UpdateSecurityGroupRuleDescriptionsEgressResult; @class AWSEC2UpdateSecurityGroupRuleDescriptionsIngressRequest; @class AWSEC2UpdateSecurityGroupRuleDescriptionsIngressResult; @class AWSEC2UserBucket; @class AWSEC2UserBucketDetails; @class AWSEC2UserData; @class AWSEC2UserIdGroupPair; @class AWSEC2VCpuCountRange; @class AWSEC2VCpuCountRangeRequest; @class AWSEC2VCpuInfo; @class AWSEC2ValidationError; @class AWSEC2ValidationWarning; @class AWSEC2VerifiedAccessEndpoint; @class AWSEC2VerifiedAccessEndpointEniOptions; @class AWSEC2VerifiedAccessEndpointLoadBalancerOptions; @class AWSEC2VerifiedAccessEndpointStatus; @class AWSEC2VerifiedAccessGroup; @class AWSEC2VerifiedAccessInstance; @class AWSEC2VerifiedAccessInstanceLoggingConfiguration; @class AWSEC2VerifiedAccessLogCloudWatchLogsDestination; @class AWSEC2VerifiedAccessLogCloudWatchLogsDestinationOptions; @class AWSEC2VerifiedAccessLogDeliveryStatus; @class AWSEC2VerifiedAccessLogKinesisDataFirehoseDestination; @class AWSEC2VerifiedAccessLogKinesisDataFirehoseDestinationOptions; @class AWSEC2VerifiedAccessLogOptions; @class AWSEC2VerifiedAccessLogS3Destination; @class AWSEC2VerifiedAccessLogS3DestinationOptions; @class AWSEC2VerifiedAccessLogs; @class AWSEC2VerifiedAccessTrustProvider; @class AWSEC2VerifiedAccessTrustProviderCondensed; @class AWSEC2VgwTelemetry; @class AWSEC2Volume; @class AWSEC2VolumeAttachment; @class AWSEC2VolumeDetail; @class AWSEC2VolumeModification; @class AWSEC2VolumeStatusAction; @class AWSEC2VolumeStatusAttachmentStatus; @class AWSEC2VolumeStatusDetails; @class AWSEC2VolumeStatusEvent; @class AWSEC2VolumeStatusInfo; @class AWSEC2VolumeStatusItem; @class AWSEC2Vpc; @class AWSEC2VpcAttachment; @class AWSEC2VpcCidrBlockAssociation; @class AWSEC2VpcCidrBlockState; @class AWSEC2VpcClassicLink; @class AWSEC2VpcEndpoint; @class AWSEC2VpcEndpointConnection; @class AWSEC2VpcIpv6CidrBlockAssociation; @class AWSEC2VpcPeeringConnection; @class AWSEC2VpcPeeringConnectionOptionsDescription; @class AWSEC2VpcPeeringConnectionStateReason; @class AWSEC2VpcPeeringConnectionVpcInfo; @class AWSEC2VpnConnection; @class AWSEC2VpnConnectionDeviceType; @class AWSEC2VpnConnectionOptions; @class AWSEC2VpnConnectionOptionsSpecification; @class AWSEC2VpnGateway; @class AWSEC2VpnStaticRoute; @class AWSEC2VpnTunnelLogOptions; @class AWSEC2VpnTunnelLogOptionsSpecification; @class AWSEC2VpnTunnelOptionsSpecification; @class AWSEC2WithdrawByoipCidrRequest; @class AWSEC2WithdrawByoipCidrResult; /**

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an instance.

*/ @interface AWSEC2AcceleratorCount : AWSModel /**

The maximum number of accelerators. If this parameter is not specified, there is no maximum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum number of accelerators. If this parameter is not specified, there is no minimum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an instance. To exclude accelerator-enabled instance types, set Max to 0.

*/ @interface AWSEC2AcceleratorCountRequest : AWSModel /**

The maximum number of accelerators. To specify no maximum limit, omit this parameter. To exclude accelerator-enabled instance types, set Max to 0.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum number of accelerators. To specify no minimum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

The minimum and maximum amount of total accelerator memory, in MiB.

*/ @interface AWSEC2AcceleratorTotalMemoryMiB : AWSModel /**

The maximum amount of accelerator memory, in MiB. If this parameter is not specified, there is no maximum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum amount of accelerator memory, in MiB. If this parameter is not specified, there is no minimum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

The minimum and maximum amount of total accelerator memory, in MiB.

*/ @interface AWSEC2AcceleratorTotalMemoryMiBRequest : AWSModel /**

The maximum amount of accelerator memory, in MiB. To specify no maximum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum amount of accelerator memory, in MiB. To specify no minimum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /** */ @interface AWSEC2AcceptAddressTransferRequest : AWSRequest /**

The Elastic IP address you are accepting for transfer.

*/ @property (nonatomic, strong) NSString * _Nullable address; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2AcceptAddressTransferResult : AWSModel /**

An Elastic IP address transfer.

*/ @property (nonatomic, strong) AWSEC2AddressTransfer * _Nullable addressTransfer; @end /**

Contains the parameters for accepting the quote.

Required parameters: [ReservedInstanceIds] */ @interface AWSEC2AcceptReservedInstancesExchangeQuoteRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the Convertible Reserved Instances to exchange for another Convertible Reserved Instance of the same or higher value.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstanceIds; /**

The configuration of the target Convertible Reserved Instance to exchange for your current Convertible Reserved Instances.

*/ @property (nonatomic, strong) NSArray * _Nullable targetConfigurations; @end /**

The result of the exchange and whether it was successful.

*/ @interface AWSEC2AcceptReservedInstancesExchangeQuoteResult : AWSModel /**

The ID of the successful exchange.

*/ @property (nonatomic, strong) NSString * _Nullable exchangeId; @end /** */ @interface AWSEC2AcceptTransitGatewayMulticastDomainAssociationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the subnets to associate with the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; /**

The ID of the transit gateway attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /** */ @interface AWSEC2AcceptTransitGatewayMulticastDomainAssociationsResult : AWSModel /**

Information about the multicast domain associations.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayMulticastDomainAssociations * _Nullable associations; @end /** */ @interface AWSEC2AcceptTransitGatewayPeeringAttachmentRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the transit gateway attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /** */ @interface AWSEC2AcceptTransitGatewayPeeringAttachmentResult : AWSModel /**

The transit gateway peering attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPeeringAttachment * _Nullable transitGatewayPeeringAttachment; @end /** */ @interface AWSEC2AcceptTransitGatewayVpcAttachmentRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /** */ @interface AWSEC2AcceptTransitGatewayVpcAttachmentResult : AWSModel /**

The VPC attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayVpcAttachment * _Nullable transitGatewayVpcAttachment; @end /** */ @interface AWSEC2AcceptVpcEndpointConnectionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPC endpoint service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; /**

The IDs of the interface VPC endpoints.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcEndpointIds; @end /** */ @interface AWSEC2AcceptVpcEndpointConnectionsResult : AWSModel /**

Information about the interface endpoints that were not accepted, if applicable.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessful; @end /** */ @interface AWSEC2AcceptVpcPeeringConnectionRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPC peering connection. You must specify this parameter in the request.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /** */ @interface AWSEC2AcceptVpcPeeringConnectionResult : AWSModel /**

Information about the VPC peering connection.

*/ @property (nonatomic, strong) AWSEC2VpcPeeringConnection * _Nullable vpcPeeringConnection; @end /**

Describes a finding for a Network Access Scope.

*/ @interface AWSEC2AccessScopeAnalysisFinding : AWSModel /**

The finding components.

*/ @property (nonatomic, strong) NSArray * _Nullable findingComponents; /**

The ID of the finding.

*/ @property (nonatomic, strong) NSString * _Nullable findingId; /**

The ID of the Network Access Scope analysis.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeAnalysisId; /**

The ID of the Network Access Scope.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeId; @end /**

Describes a path.

*/ @interface AWSEC2AccessScopePath : AWSModel /**

The destination.

*/ @property (nonatomic, strong) AWSEC2PathStatement * _Nullable destination; /**

The source.

*/ @property (nonatomic, strong) AWSEC2PathStatement * _Nullable source; /**

The through resources.

*/ @property (nonatomic, strong) NSArray * _Nullable throughResources; @end /**

Describes a path.

*/ @interface AWSEC2AccessScopePathRequest : AWSModel /**

The destination.

*/ @property (nonatomic, strong) AWSEC2PathStatementRequest * _Nullable destination; /**

The source.

*/ @property (nonatomic, strong) AWSEC2PathStatementRequest * _Nullable source; /**

The through resources.

*/ @property (nonatomic, strong) NSArray * _Nullable throughResources; @end /**

Describes an account attribute.

*/ @interface AWSEC2AccountAttribute : AWSModel /**

The name of the account attribute.

*/ @property (nonatomic, strong) NSString * _Nullable attributeName; /**

The values for the account attribute.

*/ @property (nonatomic, strong) NSArray * _Nullable attributeValues; @end /**

Describes a value of an account attribute.

*/ @interface AWSEC2AccountAttributeValue : AWSModel /**

The value of the attribute.

*/ @property (nonatomic, strong) NSString * _Nullable attributeValue; @end /**

Describes a running instance in a Spot Fleet.

*/ @interface AWSEC2ActiveInstance : AWSModel /**

The health status of the instance. If the status of either the instance status check or the system status check is impaired, the health status of the instance is unhealthy. Otherwise, the health status is healthy.

*/ @property (nonatomic, assign) AWSEC2InstanceHealthStatus instanceHealth; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The instance type.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; /**

The ID of the Spot Instance request.

*/ @property (nonatomic, strong) NSString * _Nullable spotInstanceRequestId; @end /**

Add an operating Region to an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

*/ @interface AWSEC2AddIpamOperatingRegion : AWSModel /**

The name of the operating Region.

*/ @property (nonatomic, strong) NSString * _Nullable regionName; @end /**

An entry for a prefix list.

Required parameters: [Cidr] */ @interface AWSEC2AddPrefixListEntry : AWSModel /**

The CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

A description for the entry.

Constraints: Up to 255 characters in length.

*/ @property (nonatomic, strong) NSString * _Nullable detail; @end /**

Describes a principal.

*/ @interface AWSEC2AddedPrincipal : AWSModel /**

The Amazon Resource Name (ARN) of the principal.

*/ @property (nonatomic, strong) NSString * _Nullable principal; /**

The type of principal.

*/ @property (nonatomic, assign) AWSEC2PrincipalType principalType; /**

The ID of the service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; /**

The ID of the service permission.

*/ @property (nonatomic, strong) NSString * _Nullable servicePermissionId; @end /**

Describes an additional detail for a path analysis. For more information, see Reachability Analyzer additional detail codes.

*/ @interface AWSEC2AdditionalDetail : AWSModel /**

The additional detail code.

*/ @property (nonatomic, strong) NSString * _Nullable additionalDetailType; /**

The path component.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable component; /**

The load balancers.

*/ @property (nonatomic, strong) NSArray * _Nullable loadBalancers; /**

The rule options.

*/ @property (nonatomic, strong) NSArray * _Nullable ruleGroupRuleOptionsPairs; /**

The rule group type.

*/ @property (nonatomic, strong) NSArray * _Nullable ruleGroupTypePairs; /**

The rule options.

*/ @property (nonatomic, strong) NSArray * _Nullable ruleOptions; /**

The name of the VPC endpoint service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceName; /**

The VPC endpoint service.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable vpcEndpointService; @end /**

Describes an Elastic IP address, or a carrier IP address.

*/ @interface AWSEC2Address : AWSModel /**

The ID representing the allocation of the address.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

The ID representing the association of the address with an instance.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The carrier IP address associated. This option is only available for network interfaces which reside in a subnet in a Wavelength Zone (for example an EC2 instance).

*/ @property (nonatomic, strong) NSString * _Nullable carrierIp; /**

The customer-owned IP address.

*/ @property (nonatomic, strong) NSString * _Nullable customerOwnedIp; /**

The ID of the customer-owned address pool.

*/ @property (nonatomic, strong) NSString * _Nullable customerOwnedIpv4Pool; /**

The network (vpc).

*/ @property (nonatomic, assign) AWSEC2DomainType domain; /**

The ID of the instance that the address is associated with (if any).

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The name of the unique set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP addresses.

*/ @property (nonatomic, strong) NSString * _Nullable networkBorderGroup; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The ID of the Amazon Web Services account that owns the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceOwnerId; /**

The private IP address associated with the Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

The Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; /**

The ID of an address pool.

*/ @property (nonatomic, strong) NSString * _Nullable publicIpv4Pool; /**

Any tags assigned to the Elastic IP address.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

The attributes associated with an Elastic IP address.

*/ @interface AWSEC2AddressAttribute : AWSModel /**

[EC2-VPC] The allocation ID.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

The pointer (PTR) record for the IP address.

*/ @property (nonatomic, strong) NSString * _Nullable ptrRecord; /**

The updated PTR record for the IP address.

*/ @property (nonatomic, strong) AWSEC2PtrUpdateStatus * _Nullable ptrRecordUpdate; /**

The public IP address.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; @end /**

Details on the Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon Virtual Private Cloud User Guide.

*/ @interface AWSEC2AddressTransfer : AWSModel /**

The Elastic IP address transfer status.

*/ @property (nonatomic, assign) AWSEC2AddressTransferStatus addressTransferStatus; /**

The allocation ID of an Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

The Elastic IP address being transferred.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; /**

The ID of the account that you want to transfer the Elastic IP address to.

*/ @property (nonatomic, strong) NSString * _Nullable transferAccountId; /**

The timestamp when the Elastic IP address transfer was accepted.

*/ @property (nonatomic, strong) NSDate * _Nullable transferOfferAcceptedTimestamp; /**

The timestamp when the Elastic IP address transfer expired. When the source account starts the transfer, the transfer account has seven hours to allocate the Elastic IP address to complete the transfer, or the Elastic IP address will return to its original owner.

*/ @property (nonatomic, strong) NSDate * _Nullable transferOfferExpirationTimestamp; @end /** */ @interface AWSEC2AdvertiseByoipCidrRequest : AWSRequest /**

The address range, in CIDR notation. This must be the exact range that you provisioned. You can't advertise only a portion of the provisioned range.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2AdvertiseByoipCidrResult : AWSModel /**

Information about the address range.

*/ @property (nonatomic, strong) AWSEC2ByoipCidr * _Nullable byoipCidr; @end /** */ @interface AWSEC2AllocateAddressRequest : AWSRequest /**

The Elastic IP address to recover or an IPv4 address from an address pool.

*/ @property (nonatomic, strong) NSString * _Nullable address; /**

The ID of a customer-owned address pool. Use this parameter to let Amazon EC2 select an address from the address pool. Alternatively, specify a specific address from the address pool.

*/ @property (nonatomic, strong) NSString * _Nullable customerOwnedIpv4Pool; /**

The network (vpc).

*/ @property (nonatomic, assign) AWSEC2DomainType domain; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

A unique set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP addresses. Use this parameter to limit the IP address to this location. IP addresses cannot move between network border groups.

Use DescribeAvailabilityZones to view the network border groups.

You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 Classic, you receive an InvalidParameterCombination error.

*/ @property (nonatomic, strong) NSString * _Nullable networkBorderGroup; /**

The ID of an address pool that you own. Use this parameter to let Amazon EC2 select an address from the address pool. To specify a specific address from the address pool, use the Address parameter instead.

*/ @property (nonatomic, strong) NSString * _Nullable publicIpv4Pool; /**

The tags to assign to the Elastic IP address.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2AllocateAddressResult : AWSModel /**

The ID that represents the allocation of the Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

The carrier IP address. This option is only available for network interfaces that reside in a subnet in a Wavelength Zone.

*/ @property (nonatomic, strong) NSString * _Nullable carrierIp; /**

The customer-owned IP address.

*/ @property (nonatomic, strong) NSString * _Nullable customerOwnedIp; /**

The ID of the customer-owned address pool.

*/ @property (nonatomic, strong) NSString * _Nullable customerOwnedIpv4Pool; /**

The network (vpc).

*/ @property (nonatomic, assign) AWSEC2DomainType domain; /**

The set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP addresses.

*/ @property (nonatomic, strong) NSString * _Nullable networkBorderGroup; /**

The Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; /**

The ID of an address pool.

*/ @property (nonatomic, strong) NSString * _Nullable publicIpv4Pool; @end /** */ @interface AWSEC2AllocateHostsRequest : AWSRequest /**

The IDs of the Outpost hardware assets on which to allocate the Dedicated Hosts. Targeting specific hardware assets on an Outpost can help to minimize latency between your workloads. This parameter is supported only if you specify OutpostArn. If you are allocating the Dedicated Hosts in a Region, omit this parameter.

  • If you specify this parameter, you can omit Quantity. In this case, Amazon EC2 allocates a Dedicated Host on each specified hardware asset.

  • If you specify both AssetIds and Quantity, then the value for Quantity must be equal to the number of asset IDs specified.

*/ @property (nonatomic, strong) NSArray * _Nullable assetIds; /**

Indicates whether the host accepts any untargeted instance launches that match its instance type configuration, or if it only accepts Host tenancy instance launches that specify its unique host ID. For more information, see Understanding auto-placement and affinity in the Amazon EC2 User Guide.

Default: on

*/ @property (nonatomic, assign) AWSEC2AutoPlacement autoPlacement; /**

The Availability Zone in which to allocate the Dedicated Host.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Indicates whether to enable or disable host maintenance for the Dedicated Host. For more information, see Host maintenance in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2HostMaintenance hostMaintenance; /**

Indicates whether to enable or disable host recovery for the Dedicated Host. Host recovery is disabled by default. For more information, see Host recovery in the Amazon EC2 User Guide.

Default: off

*/ @property (nonatomic, assign) AWSEC2HostRecovery hostRecovery; /**

Specifies the instance family to be supported by the Dedicated Hosts. If you specify an instance family, the Dedicated Hosts support multiple instance types within that instance family.

If you want the Dedicated Hosts to support a specific instance type only, omit this parameter and specify InstanceType instead. You cannot specify InstanceFamily and InstanceType in the same request.

*/ @property (nonatomic, strong) NSString * _Nullable instanceFamily; /**

Specifies the instance type to be supported by the Dedicated Hosts. If you specify an instance type, the Dedicated Hosts support instances of the specified instance type only.

If you want the Dedicated Hosts to support multiple instance types in a specific instance family, omit this parameter and specify InstanceFamily instead. You cannot specify InstanceType and InstanceFamily in the same request.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; /**

The Amazon Resource Name (ARN) of the Amazon Web Services Outpost on which to allocate the Dedicated Host. If you specify OutpostArn, you can optionally specify AssetIds.

If you are allocating the Dedicated Host in a Region, omit this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The number of Dedicated Hosts to allocate to your account with these parameters. If you are allocating the Dedicated Hosts on an Outpost, and you specify AssetIds, you can omit this parameter. In this case, Amazon EC2 allocates a Dedicated Host on each specified hardware asset. If you specify both AssetIds and Quantity, then the value that you specify for Quantity must be equal to the number of asset IDs specified.

*/ @property (nonatomic, strong) NSNumber * _Nullable quantity; /**

The tags to apply to the Dedicated Host during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /**

Contains the output of AllocateHosts.

*/ @interface AWSEC2AllocateHostsResult : AWSModel /**

The ID of the allocated Dedicated Host. This is used to launch an instance onto a specific host.

*/ @property (nonatomic, strong) NSArray * _Nullable hostIds; @end /** */ @interface AWSEC2AllocateIpamPoolCidrRequest : AWSRequest /**

The CIDR you would like to allocate from the IPAM pool. Note the following:

  • If there is no DefaultNetmaskLength allocation rule set on the pool, you must specify either the NetmaskLength or the CIDR.

  • If the DefaultNetmaskLength allocation rule is set on the pool, you can specify either the NetmaskLength or the CIDR and the DefaultNetmaskLength allocation rule will be ignored.

Possible values: Any available IPv4 or IPv6 CIDR.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the allocation.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Exclude a particular CIDR range from being returned by the pool. Disallowed CIDRs are only allowed if using netmask length for allocation.

*/ @property (nonatomic, strong) NSArray * _Nullable disallowedCidrs; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the IPAM pool from which you would like to allocate a CIDR.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; /**

The netmask length of the CIDR you would like to allocate from the IPAM pool. Note the following:

  • If there is no DefaultNetmaskLength allocation rule set on the pool, you must specify either the NetmaskLength or the CIDR.

  • If the DefaultNetmaskLength allocation rule is set on the pool, you can specify either the NetmaskLength or the CIDR and the DefaultNetmaskLength allocation rule will be ignored.

Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

*/ @property (nonatomic, strong) NSNumber * _Nullable netmaskLength; /**

A preview of the next available CIDR in a pool.

*/ @property (nonatomic, strong) NSNumber * _Nullable previewNextCidr; @end /** */ @interface AWSEC2AllocateIpamPoolCidrResult : AWSModel /**

Information about the allocation created.

*/ @property (nonatomic, strong) AWSEC2IpamPoolAllocation * _Nullable ipamPoolAllocation; @end /**

Describes a principal.

*/ @interface AWSEC2AllowedPrincipal : AWSModel /**

The Amazon Resource Name (ARN) of the principal.

*/ @property (nonatomic, strong) NSString * _Nullable principal; /**

The type of principal.

*/ @property (nonatomic, assign) AWSEC2PrincipalType principalType; /**

The ID of the service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; /**

The ID of the service permission.

*/ @property (nonatomic, strong) NSString * _Nullable servicePermissionId; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes an potential intermediate component of a feasible path.

*/ @interface AWSEC2AlternatePathHint : AWSModel /**

The Amazon Resource Name (ARN) of the component.

*/ @property (nonatomic, strong) NSString * _Nullable componentArn; /**

The ID of the component.

*/ @property (nonatomic, strong) NSString * _Nullable componentId; @end /**

Describes a network access control (ACL) rule.

*/ @interface AWSEC2AnalysisAclRule : AWSModel /**

The IPv4 address range, in CIDR notation.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

Indicates whether the rule is an outbound rule.

*/ @property (nonatomic, strong) NSNumber * _Nullable egress; /**

The range of ports.

*/ @property (nonatomic, strong) AWSEC2PortRange * _Nullable portRange; /**

The protocol.

*/ @property (nonatomic, strong) NSString * _Nullable protocols; /**

Indicates whether to allow or deny traffic that matches the rule.

*/ @property (nonatomic, strong) NSString * _Nullable ruleAction; /**

The rule number.

*/ @property (nonatomic, strong) NSNumber * _Nullable ruleNumber; @end /**

Describes a path component.

*/ @interface AWSEC2AnalysisComponent : AWSModel /**

The Amazon Resource Name (ARN) of the component.

*/ @property (nonatomic, strong) NSString * _Nullable arn; /**

The ID of the component.

*/ @property (nonatomic, strong) NSString * _Nullable identifier; /**

The name of the analysis component.

*/ @property (nonatomic, strong) NSString * _Nullable name; @end /**

Describes a load balancer listener.

*/ @interface AWSEC2AnalysisLoadBalancerListener : AWSModel /**

[Classic Load Balancers] The back-end port for the listener.

*/ @property (nonatomic, strong) NSNumber * _Nullable instancePort; /**

The port on which the load balancer is listening.

*/ @property (nonatomic, strong) NSNumber * _Nullable loadBalancerPort; @end /**

Describes a load balancer target.

*/ @interface AWSEC2AnalysisLoadBalancerTarget : AWSModel /**

The IP address.

*/ @property (nonatomic, strong) NSString * _Nullable address; /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

Information about the instance.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable instance; /**

The port on which the target is listening.

*/ @property (nonatomic, strong) NSNumber * _Nullable port; @end /**

Describes a header. Reflects any changes made by a component as traffic passes through. The fields of an inbound header are null except for the first component of a path.

*/ @interface AWSEC2AnalysisPacketHeader : AWSModel /**

The destination addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable destinationAddresses; /**

The destination port ranges.

*/ @property (nonatomic, strong) NSArray * _Nullable destinationPortRanges; /**

The protocol.

*/ @property (nonatomic, strong) NSString * _Nullable protocols; /**

The source addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable sourceAddresses; /**

The source port ranges.

*/ @property (nonatomic, strong) NSArray * _Nullable sourcePortRanges; @end /**

Describes a route table route.

*/ @interface AWSEC2AnalysisRouteTableRoute : AWSModel /**

The ID of a carrier gateway.

*/ @property (nonatomic, strong) NSString * _Nullable carrierGatewayId; /**

The Amazon Resource Name (ARN) of a core network.

*/ @property (nonatomic, strong) NSString * _Nullable coreNetworkArn; /**

The destination IPv4 address, in CIDR notation.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidr; /**

The prefix of the Amazon Web Service.

*/ @property (nonatomic, strong) NSString * _Nullable destinationPrefixListId; /**

The ID of an egress-only internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable egressOnlyInternetGatewayId; /**

The ID of the gateway, such as an internet gateway or virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable gatewayId; /**

The ID of the instance, such as a NAT instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The ID of a local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayId; /**

The ID of a NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; /**

The ID of a network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

Describes how the route was created. The following are the possible values:

  • CreateRouteTable - The route was automatically created when the route table was created.

  • CreateRoute - The route was manually added to the route table.

  • EnableVgwRoutePropagation - The route was propagated by route propagation.

*/ @property (nonatomic, strong) NSString * _Nullable origin; /**

The state. The following are the possible values:

  • active

  • blackhole

*/ @property (nonatomic, strong) NSString * _Nullable state; /**

The ID of a transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of a VPC peering connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /**

Describes a security group rule.

*/ @interface AWSEC2AnalysisSecurityGroupRule : AWSModel /**

The IPv4 address range, in CIDR notation.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

The direction. The following are the possible values:

  • egress

  • ingress

*/ @property (nonatomic, strong) NSString * _Nullable direction; /**

The port range.

*/ @property (nonatomic, strong) AWSEC2PortRange * _Nullable portRange; /**

The prefix list ID.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The protocol name.

*/ @property (nonatomic, strong) NSString * _Nullable protocols; /**

The security group ID.

*/ @property (nonatomic, strong) NSString * _Nullable securityGroupId; @end /** */ @interface AWSEC2ApplySecurityGroupsToClientVpnTargetNetworkRequest : AWSRequest /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the security groups to apply to the associated target network. Up to 5 security groups can be applied to an associated target network.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

The ID of the VPC in which the associated target network is located.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2ApplySecurityGroupsToClientVpnTargetNetworkResult : AWSModel /**

The IDs of the applied security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; @end /** */ @interface AWSEC2AssignIpv6AddressesRequest : AWSRequest /**

The number of additional IPv6 addresses to assign to the network interface. The specified number of IPv6 addresses are assigned in addition to the existing IPv6 addresses that are already assigned to the network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6AddressCount; /**

The IPv6 addresses to be assigned to the network interface. You can't use this option if you're specifying a number of IPv6 addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Addresses; /**

The number of IPv6 prefixes that Amazon Web Services automatically assigns to the network interface. You cannot use this option if you use the Ipv6Prefixes option.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6PrefixCount; /**

One or more IPv6 prefixes assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Prefixes; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; @end /** */ @interface AWSEC2AssignIpv6AddressesResult : AWSModel /**

The new IPv6 addresses assigned to the network interface. Existing IPv6 addresses that were assigned to the network interface before the request are not included.

*/ @property (nonatomic, strong) NSArray * _Nullable assignedIpv6Addresses; /**

The IPv6 prefixes that are assigned to the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable assignedIpv6Prefixes; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; @end /**

Contains the parameters for AssignPrivateIpAddresses.

Required parameters: [NetworkInterfaceId] */ @interface AWSEC2AssignPrivateIpAddressesRequest : AWSRequest /**

Indicates whether to allow an IP address that is already assigned to another network interface or instance to be reassigned to the specified network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable allowReassignment; /**

The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface. You cannot use this option if you use the Ipv4 Prefixes option.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv4PrefixCount; /**

One or more IPv4 prefixes assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv4Prefixes; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The IP addresses to be assigned as a secondary private IP address to the network interface. You can't specify this parameter when also specifying a number of secondary IP addresses.

If you don't specify an IP address, Amazon EC2 automatically selects an IP address within the subnet range.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddresses; /**

The number of secondary IP addresses to assign to the network interface. You can't specify this parameter when also specifying private IP addresses.

*/ @property (nonatomic, strong) NSNumber * _Nullable secondaryPrivateIpAddressCount; @end /** */ @interface AWSEC2AssignPrivateIpAddressesResult : AWSModel /**

The IPv4 prefixes that are assigned to the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable assignedIpv4Prefixes; /**

The private IP addresses assigned to the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable assignedPrivateIpAddresses; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; @end /** */ @interface AWSEC2AssignPrivateNatGatewayAddressRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; /**

The number of private IP addresses to assign to the NAT gateway. You can't specify this parameter when also specifying private IP addresses.

*/ @property (nonatomic, strong) NSNumber * _Nullable privateIpAddressCount; /**

The private IPv4 addresses you want to assign to the private NAT gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddresses; @end /** */ @interface AWSEC2AssignPrivateNatGatewayAddressResult : AWSModel /**

NAT gateway IP addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable natGatewayAddresses; /**

The ID of the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; @end /**

Describes the private IP addresses assigned to a network interface.

*/ @interface AWSEC2AssignedPrivateIpAddress : AWSModel /**

The private IP address assigned to the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; @end /** */ @interface AWSEC2AssociateAddressRequest : AWSRequest /**

The allocation ID. This is required.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

Reassociation is automatic, but you can specify false to ensure the operation fails if the Elastic IP address is already associated with another resource.

*/ @property (nonatomic, strong) NSNumber * _Nullable allowReassociation; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance. The instance must have exactly one attached network interface. You can specify either the instance ID or the network interface ID, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID.

You can specify either the instance ID or the network interface ID, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

Deprecated.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; @end /** */ @interface AWSEC2AssociateAddressResult : AWSModel /**

The ID that represents the association of the Elastic IP address with an instance.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; @end /** */ @interface AWSEC2AssociateClientVpnTargetNetworkRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the subnet to associate with the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /** */ @interface AWSEC2AssociateClientVpnTargetNetworkResult : AWSModel /**

The unique ID of the target network association.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The current state of the target network association.

*/ @property (nonatomic, strong) AWSEC2AssociationStatus * _Nullable status; @end /** */ @interface AWSEC2AssociateDhcpOptionsRequest : AWSRequest /**

The ID of the DHCP options set, or default to associate no DHCP options with the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable dhcpOptionsId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2AssociateEnclaveCertificateIamRoleRequest : AWSRequest /**

The ARN of the ACM certificate with which to associate the IAM role.

*/ @property (nonatomic, strong) NSString * _Nullable certificateArn; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ARN of the IAM role to associate with the ACM certificate. You can associate up to 16 IAM roles with an ACM certificate.

*/ @property (nonatomic, strong) NSString * _Nullable roleArn; @end /** */ @interface AWSEC2AssociateEnclaveCertificateIamRoleResult : AWSModel /**

The name of the Amazon S3 bucket to which the certificate was uploaded.

*/ @property (nonatomic, strong) NSString * _Nullable certificateS3BucketName; /**

The Amazon S3 object key where the certificate, certificate chain, and encrypted private key bundle are stored. The object key is formatted as follows: role_arn/certificate_arn.

*/ @property (nonatomic, strong) NSString * _Nullable certificateS3ObjectKey; /**

The ID of the KMS key used to encrypt the private key of the certificate.

*/ @property (nonatomic, strong) NSString * _Nullable encryptionKmsKeyId; @end /** */ @interface AWSEC2AssociateIamInstanceProfileRequest : AWSRequest /**

The IAM instance profile.

*/ @property (nonatomic, strong) AWSEC2IamInstanceProfileSpecification * _Nullable iamInstanceProfile; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /** */ @interface AWSEC2AssociateIamInstanceProfileResult : AWSModel /**

Information about the IAM instance profile association.

*/ @property (nonatomic, strong) AWSEC2IamInstanceProfileAssociation * _Nullable iamInstanceProfileAssociation; @end /** */ @interface AWSEC2AssociateInstanceEventWindowRequest : AWSRequest /**

One or more targets associated with the specified event window.

*/ @property (nonatomic, strong) AWSEC2InstanceEventWindowAssociationRequest * _Nullable associationTarget; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the event window.

*/ @property (nonatomic, strong) NSString * _Nullable instanceEventWindowId; @end /** */ @interface AWSEC2AssociateInstanceEventWindowResult : AWSModel /**

Information about the event window.

*/ @property (nonatomic, strong) AWSEC2InstanceEventWindow * _Nullable instanceEventWindow; @end /** */ @interface AWSEC2AssociateIpamResourceDiscoveryRequest : AWSRequest /**

A client token.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

An IPAM ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamId; /**

A resource discovery ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryId; /**

Tag specifications.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2AssociateIpamResourceDiscoveryResult : AWSModel /**

A resource discovery association. An associated resource discovery is a resource discovery that has been associated with an IPAM.

*/ @property (nonatomic, strong) AWSEC2IpamResourceDiscoveryAssociation * _Nullable ipamResourceDiscoveryAssociation; @end /** */ @interface AWSEC2AssociateNatGatewayAddressRequest : AWSRequest /**

The allocation IDs of EIPs that you want to associate with your NAT gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable allocationIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; /**

The private IPv4 addresses that you want to assign to the NAT gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddresses; @end /** */ @interface AWSEC2AssociateNatGatewayAddressResult : AWSModel /**

The IP addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable natGatewayAddresses; /**

The ID of the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; @end /** */ @interface AWSEC2AssociateRouteTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the internet gateway or virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable gatewayId; /**

The ID of the route table.

*/ @property (nonatomic, strong) NSString * _Nullable routeTableId; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /** */ @interface AWSEC2AssociateRouteTableResult : AWSModel /**

The route table association ID. This ID is required for disassociating the route table.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The state of the association.

*/ @property (nonatomic, strong) AWSEC2RouteTableAssociationState * _Nullable associationState; @end /** */ @interface AWSEC2AssociateSubnetCidrBlockRequest : AWSRequest /**

The IPv6 CIDR block for your subnet. The subnet must have a /64 prefix length.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlock; /**

The ID of your subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /** */ @interface AWSEC2AssociateSubnetCidrBlockResult : AWSModel /**

Information about the IPv6 association.

*/ @property (nonatomic, strong) AWSEC2SubnetIpv6CidrBlockAssociation * _Nullable ipv6CidrBlockAssociation; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /** */ @interface AWSEC2AssociateTransitGatewayMulticastDomainRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the subnets to associate with the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; /**

The ID of the transit gateway attachment to associate with the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /** */ @interface AWSEC2AssociateTransitGatewayMulticastDomainResult : AWSModel /**

Information about the transit gateway multicast domain associations.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayMulticastDomainAssociations * _Nullable associations; @end /** */ @interface AWSEC2AssociateTransitGatewayPolicyTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the transit gateway attachment to associate with the policy table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway policy table to associate with the transit gateway attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayPolicyTableId; @end /** */ @interface AWSEC2AssociateTransitGatewayPolicyTableResult : AWSModel /**

Describes the association of a transit gateway and a transit gateway policy table.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPolicyTableAssociation * _Nullable association; @end /** */ @interface AWSEC2AssociateTransitGatewayRouteTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2AssociateTransitGatewayRouteTableResult : AWSModel /**

The ID of the association.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayAssociation * _Nullable association; @end /** */ @interface AWSEC2AssociateTrunkInterfaceRequest : AWSRequest /**

The ID of the branch network interface.

*/ @property (nonatomic, strong) NSString * _Nullable branchInterfaceId; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The application key. This applies to the GRE protocol.

*/ @property (nonatomic, strong) NSNumber * _Nullable greKey; /**

The ID of the trunk network interface.

*/ @property (nonatomic, strong) NSString * _Nullable trunkInterfaceId; /**

The ID of the VLAN. This applies to the VLAN protocol.

*/ @property (nonatomic, strong) NSNumber * _Nullable vlanId; @end /** */ @interface AWSEC2AssociateTrunkInterfaceResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the association between the trunk network interface and branch network interface.

*/ @property (nonatomic, strong) AWSEC2TrunkInterfaceAssociation * _Nullable interfaceAssociation; @end /** */ @interface AWSEC2AssociateVpcCidrBlockRequest : AWSRequest /**

Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IPv6 addresses, or the size of the CIDR block.

*/ @property (nonatomic, strong) NSNumber * _Nullable amazonProvidedIpv6CidrBlock; /**

An IPv4 CIDR block to associate with the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable cidrBlock; /**

Associate a CIDR allocated from an IPv4 IPAM pool to a VPC. For more information about Amazon VPC IP Address Manager (IPAM), see What is IPAM? in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable ipv4IpamPoolId; /**

The netmask length of the IPv4 CIDR you would like to associate from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv4NetmaskLength; /**

An IPv6 CIDR block from the IPv6 address pool. You must also specify Ipv6Pool in the request.

To let Amazon choose the IPv6 CIDR block for you, omit this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlock; /**

The name of the location from which we advertise the IPV6 CIDR block. Use this parameter to limit the CIDR block to this location.

You must set AmazonProvidedIpv6CidrBlock to true to use this parameter.

You can have one IPv6 CIDR block association per network border group.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlockNetworkBorderGroup; /**

Associates a CIDR allocated from an IPv6 IPAM pool to a VPC. For more information about Amazon VPC IP Address Manager (IPAM), see What is IPAM? in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6IpamPoolId; /**

The netmask length of the IPv6 CIDR you would like to associate from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6NetmaskLength; /**

The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Pool; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2AssociateVpcCidrBlockResult : AWSModel /**

Information about the IPv4 CIDR block association.

*/ @property (nonatomic, strong) AWSEC2VpcCidrBlockAssociation * _Nullable cidrBlockAssociation; /**

Information about the IPv6 CIDR block association.

*/ @property (nonatomic, strong) AWSEC2VpcIpv6CidrBlockAssociation * _Nullable ipv6CidrBlockAssociation; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Information about the associated IAM roles.

*/ @interface AWSEC2AssociatedRole : AWSModel /**

The ARN of the associated IAM role.

*/ @property (nonatomic, strong) NSString * _Nullable associatedRoleArn; /**

The name of the Amazon S3 bucket in which the Amazon S3 object is stored.

*/ @property (nonatomic, strong) NSString * _Nullable certificateS3BucketName; /**

The key of the Amazon S3 object ey where the certificate, certificate chain, and encrypted private key bundle is stored. The object key is formated as follows: role_arn/certificate_arn.

*/ @property (nonatomic, strong) NSString * _Nullable certificateS3ObjectKey; /**

The ID of the KMS customer master key (CMK) used to encrypt the private key.

*/ @property (nonatomic, strong) NSString * _Nullable encryptionKmsKeyId; @end /**

Describes a target network that is associated with a Client VPN endpoint. A target network is a subnet in a VPC.

*/ @interface AWSEC2AssociatedTargetNetwork : AWSModel /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable networkId; /**

The target network type.

*/ @property (nonatomic, assign) AWSEC2AssociatedNetworkType networkType; @end /**

Describes the state of a target network association.

*/ @interface AWSEC2AssociationStatus : AWSModel /**

The state of the target network association.

*/ @property (nonatomic, assign) AWSEC2AssociationStatusCode code; /**

A message about the status of the target network association, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes integration options for Amazon Athena.

Required parameters: [IntegrationResultS3DestinationArn, PartitionLoadFrequency] */ @interface AWSEC2AthenaIntegration : AWSModel /**

The location in Amazon S3 to store the generated CloudFormation template.

*/ @property (nonatomic, strong) NSString * _Nullable integrationResultS3DestinationArn; /**

The end date for the partition.

*/ @property (nonatomic, strong) NSDate * _Nullable partitionEndDate; /**

The schedule for adding new partitions to the table.

*/ @property (nonatomic, assign) AWSEC2PartitionLoadFrequency partitionLoadFrequency; /**

The start date for the partition.

*/ @property (nonatomic, strong) NSDate * _Nullable partitionStartDate; @end /** */ @interface AWSEC2AttachClassicLinkVpcRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the security groups. You cannot specify security groups from a different VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The ID of the EC2-Classic instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The ID of the ClassicLink-enabled VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2AttachClassicLinkVpcResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2AttachInternetGatewayRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable internetGatewayId; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Contains the parameters for AttachNetworkInterface.

Required parameters: [DeviceIndex, InstanceId, NetworkInterfaceId] */ @interface AWSEC2AttachNetworkInterfaceRequest : AWSRequest /**

The index of the device for the network interface attachment.

*/ @property (nonatomic, strong) NSNumber * _Nullable deviceIndex; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Configures ENA Express for the network interface that this action attaches to the instance.

*/ @property (nonatomic, strong) AWSEC2EnaSrdSpecification * _Nullable enaSrdSpecification; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.

*/ @property (nonatomic, strong) NSNumber * _Nullable networkCardIndex; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; @end /**

Contains the output of AttachNetworkInterface.

*/ @interface AWSEC2AttachNetworkInterfaceResult : AWSModel /**

The ID of the network interface attachment.

*/ @property (nonatomic, strong) NSString * _Nullable attachmentId; /**

The index of the network card.

*/ @property (nonatomic, strong) NSNumber * _Nullable networkCardIndex; @end /** */ @interface AWSEC2AttachVerifiedAccessTrustProviderRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; /**

The ID of the Verified Access trust provider.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessTrustProviderId; @end /** */ @interface AWSEC2AttachVerifiedAccessTrustProviderResult : AWSModel /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessInstance * _Nullable verifiedAccessInstance; /**

The ID of the Verified Access trust provider.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessTrustProvider * _Nullable verifiedAccessTrustProvider; @end /** */ @interface AWSEC2AttachVolumeRequest : AWSRequest /**

The device name (for example, /dev/sdh or xvdh).

*/ @property (nonatomic, strong) NSString * _Nullable device; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The ID of the EBS volume. The volume and instance must be within the same Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /**

Contains the parameters for AttachVpnGateway.

Required parameters: [VpcId, VpnGatewayId] */ @interface AWSEC2AttachVpnGatewayRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; /**

The ID of the virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable vpnGatewayId; @end /**

Contains the output of AttachVpnGateway.

*/ @interface AWSEC2AttachVpnGatewayResult : AWSModel /**

Information about the attachment.

*/ @property (nonatomic, strong) AWSEC2VpcAttachment * _Nullable vpcAttachment; @end /**

Describes the ENA Express configuration for the network interface that's attached to the instance.

*/ @interface AWSEC2AttachmentEnaSrdSpecification : AWSModel /**

Indicates whether ENA Express is enabled for the network interface that's attached to the instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable enaSrdEnabled; /**

ENA Express configuration for UDP network traffic.

*/ @property (nonatomic, strong) AWSEC2AttachmentEnaSrdUdpSpecification * _Nullable enaSrdUdpSpecification; @end /**

Describes the ENA Express configuration for UDP traffic on the network interface that's attached to the instance.

*/ @interface AWSEC2AttachmentEnaSrdUdpSpecification : AWSModel /**

Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.

*/ @property (nonatomic, strong) NSNumber * _Nullable enaSrdUdpEnabled; @end /**

Describes a value for a resource attribute that is a Boolean value.

*/ @interface AWSEC2AttributeBooleanValue : AWSModel /**

The attribute value. The valid values are true or false.

*/ @property (nonatomic, strong) NSNumber * _Nullable value; @end /**

Describes a value for a resource attribute that is a String.

*/ @interface AWSEC2AttributeValue : AWSModel /**

The attribute value. The value is case-sensitive.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

Information about an authorization rule.

*/ @interface AWSEC2AuthorizationRule : AWSModel /**

Indicates whether the authorization rule grants access to all clients.

*/ @property (nonatomic, strong) NSNumber * _Nullable accessAll; /**

The ID of the Client VPN endpoint with which the authorization rule is associated.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

A brief description of the authorization rule.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The IPv4 address range, in CIDR notation, of the network to which the authorization rule applies.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidr; /**

The ID of the Active Directory group to which the authorization rule grants access.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The current state of the authorization rule.

*/ @property (nonatomic, strong) AWSEC2ClientVpnAuthorizationRuleStatus * _Nullable status; @end /** */ @interface AWSEC2AuthorizeClientVpnIngressRequest : AWSRequest /**

The ID of the group to grant access to, for example, the Active Directory group or identity provider (IdP) group. Required if AuthorizeAllGroups is false or not specified.

*/ @property (nonatomic, strong) NSString * _Nullable accessGroupId; /**

Indicates whether to grant access to all clients. Specify true to grant all clients who successfully establish a VPN connection access to the network. Must be set to true if AccessGroupId is not specified.

*/ @property (nonatomic, strong) NSNumber * _Nullable authorizeAllGroups; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

A brief description of the authorization rule.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IPv4 address range, in CIDR notation, of the network for which access is being authorized.

*/ @property (nonatomic, strong) NSString * _Nullable targetNetworkCidr; @end /** */ @interface AWSEC2AuthorizeClientVpnIngressResult : AWSModel /**

The current state of the authorization rule.

*/ @property (nonatomic, strong) AWSEC2ClientVpnAuthorizationRuleStatus * _Nullable status; @end /** */ @interface AWSEC2AuthorizeSecurityGroupEgressRequest : AWSRequest /**

Not supported. Use a set of IP permissions to specify the CIDR.

*/ @property (nonatomic, strong) NSString * _Nullable cidrIp; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Not supported. Use a set of IP permissions to specify the port.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The sets of IP permissions. You can't specify a destination security group and a CIDR IP address range in the same set of permissions.

*/ @property (nonatomic, strong) NSArray * _Nullable ipPermissions; /**

Not supported. Use a set of IP permissions to specify the protocol name or number.

*/ @property (nonatomic, strong) NSString * _Nullable ipProtocol; /**

Not supported. Use a set of IP permissions to specify a destination security group.

*/ @property (nonatomic, strong) NSString * _Nullable sourceSecurityGroupName; /**

Not supported. Use a set of IP permissions to specify a destination security group.

*/ @property (nonatomic, strong) NSString * _Nullable sourceSecurityGroupOwnerId; /**

The tags applied to the security group rule.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

Not supported. Use a set of IP permissions to specify the port.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; @end /** */ @interface AWSEC2AuthorizeSecurityGroupEgressResult : AWSModel /**

Returns true if the request succeeds; otherwise, returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; /**

Information about the outbound (egress) security group rules that were added.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupRules; @end /** */ @interface AWSEC2AuthorizeSecurityGroupIngressRequest : AWSRequest /**

The IPv4 address range, in CIDR format. You can't specify this parameter when specifying a source security group. To specify an IPv6 address range, use a set of IP permissions.

Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.

*/ @property (nonatomic, strong) NSString * _Nullable cidrIp; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

If the protocol is TCP or UDP, this is the start of the port range. If the protocol is ICMP, this is the type number. A value of -1 indicates all ICMP types. If you specify all ICMP types, you must specify all ICMP codes.

Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

[Default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The sets of IP permissions.

*/ @property (nonatomic, strong) NSArray * _Nullable ipPermissions; /**

The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). To specify icmpv6, use a set of IP permissions.

Use -1 to specify all protocols. If you specify -1 or a protocol other than tcp, udp, or icmp, traffic on all ports is allowed, regardless of any ports you specify.

Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.

*/ @property (nonatomic, strong) NSString * _Nullable ipProtocol; /**

[Default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead. The source security group must be in the same VPC.

*/ @property (nonatomic, strong) NSString * _Nullable sourceSecurityGroupName; /**

[Nondefault VPC] The Amazon Web Services account ID for the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead.

*/ @property (nonatomic, strong) NSString * _Nullable sourceSecurityGroupOwnerId; /**

[VPC Only] The tags applied to the security group rule.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

If the protocol is TCP or UDP, this is the end of the port range. If the protocol is ICMP, this is the code. A value of -1 indicates all ICMP codes. If you specify all ICMP types, you must specify all ICMP codes.

Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; @end /** */ @interface AWSEC2AuthorizeSecurityGroupIngressResult : AWSModel /**

Returns true if the request succeeds; otherwise, returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; /**

Information about the inbound (ingress) security group rules that were added.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupRules; @end /**

Describes Availability Zones, Local Zones, and Wavelength Zones.

*/ @interface AWSEC2AvailabilityZone : AWSModel /**

For Availability Zones, this parameter has the same value as the Region name.

For Local Zones, the name of the associated group, for example us-west-2-lax-1.

For Wavelength Zones, the name of the associated group, for example us-east-1-wl1-bos-wlz-1.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

Any messages about the Availability Zone, Local Zone, or Wavelength Zone.

*/ @property (nonatomic, strong) NSArray * _Nullable messages; /**

The name of the network border group.

*/ @property (nonatomic, strong) NSString * _Nullable networkBorderGroup; /**

For Availability Zones, this parameter always has the value of opt-in-not-required.

For Local Zones and Wavelength Zones, this parameter is the opt-in status. The possible values are opted-in, and not-opted-in.

*/ @property (nonatomic, assign) AWSEC2AvailabilityZoneOptInStatus optInStatus; /**

The ID of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such as API calls.

*/ @property (nonatomic, strong) NSString * _Nullable parentZoneId; /**

The name of the zone that handles some of the Local Zone or Wavelength Zone control plane operations, such as API calls.

*/ @property (nonatomic, strong) NSString * _Nullable parentZoneName; /**

The name of the Region.

*/ @property (nonatomic, strong) NSString * _Nullable regionName; /**

The state of the Availability Zone, Local Zone, or Wavelength Zone. This value is always available.

*/ @property (nonatomic, assign) AWSEC2AvailabilityZoneState state; /**

The ID of the Availability Zone, Local Zone, or Wavelength Zone.

*/ @property (nonatomic, strong) NSString * _Nullable zoneId; /**

The name of the Availability Zone, Local Zone, or Wavelength Zone.

*/ @property (nonatomic, strong) NSString * _Nullable zoneName; /**

The type of zone. The valid values are availability-zone, local-zone, and wavelength-zone.

*/ @property (nonatomic, strong) NSString * _Nullable zoneType; @end /**

Describes a message about an Availability Zone, Local Zone, or Wavelength Zone.

*/ @interface AWSEC2AvailabilityZoneMessage : AWSModel /**

The message about the Availability Zone, Local Zone, or Wavelength Zone.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

The capacity information for instances that can be launched onto the Dedicated Host.

*/ @interface AWSEC2AvailableCapacity : AWSModel /**

The number of instances that can be launched onto the Dedicated Host depending on the host's available capacity. For Dedicated Hosts that support multiple instance types, this parameter represents the number of instances for each instance size that is supported on the host.

*/ @property (nonatomic, strong) NSArray * _Nullable availableInstanceCapacity; /**

The number of vCPUs available for launching instances onto the Dedicated Host.

*/ @property (nonatomic, strong) NSNumber * _Nullable availableVCpus; @end /**

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances in the Amazon EC2 User Guide.

*/ @interface AWSEC2BaselineEbsBandwidthMbps : AWSModel /**

The maximum baseline bandwidth, in Mbps. If this parameter is not specified, there is no maximum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum baseline bandwidth, in Mbps. If this parameter is not specified, there is no minimum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances in the Amazon EC2 User Guide.

*/ @interface AWSEC2BaselineEbsBandwidthMbpsRequest : AWSModel /**

The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /** */ @interface AWSEC2BlobAttributeValue : AWSModel /** */ @property (nonatomic, strong) NSData * _Nullable value; @end /**

Describes a block device mapping, which defines the EBS volumes and instance store volumes to attach to an instance at launch.

*/ @interface AWSEC2BlockDeviceMapping : AWSModel /**

The device name (for example, /dev/sdh or xvdh).

*/ @property (nonatomic, strong) NSString * _Nullable deviceName; /**

Parameters used to automatically set up EBS volumes when the instance is launched.

*/ @property (nonatomic, strong) AWSEC2EbsBlockDevice * _Nullable ebs; /**

To omit the device from the block device mapping, specify an empty string. When this property is specified, the device is removed from the block device mapping regardless of the assigned value.

*/ @property (nonatomic, strong) NSString * _Nullable noDevice; /**

The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

NVMe instance store volumes are automatically enumerated and assigned a device name. Including them in your block device mapping has no effect.

Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable virtualName; @end /**

Contains the parameters for BundleInstance.

Required parameters: [InstanceId, Storage] */ @interface AWSEC2BundleInstanceRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance to bundle.

Type: String

Default: None

Required: Yes

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

*/ @property (nonatomic, strong) AWSEC2Storage * _Nullable storage; @end /**

Contains the output of BundleInstance.

*/ @interface AWSEC2BundleInstanceResult : AWSModel /**

Information about the bundle task.

*/ @property (nonatomic, strong) AWSEC2BundleTask * _Nullable bundleTask; @end /**

Describes a bundle task.

*/ @interface AWSEC2BundleTask : AWSModel /**

The ID of the bundle task.

*/ @property (nonatomic, strong) NSString * _Nullable bundleId; /**

If the task fails, a description of the error.

*/ @property (nonatomic, strong) AWSEC2BundleTaskError * _Nullable bundleTaskError; /**

The ID of the instance associated with this bundle task.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The level of task completion, as a percent (for example, 20%).

*/ @property (nonatomic, strong) NSString * _Nullable progress; /**

The time this task started.

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; /**

The state of the task.

*/ @property (nonatomic, assign) AWSEC2BundleTaskState state; /**

The Amazon S3 storage locations.

*/ @property (nonatomic, strong) AWSEC2Storage * _Nullable storage; /**

The time of the most recent update for the task.

*/ @property (nonatomic, strong) NSDate * _Nullable updateTime; @end /**

Describes an error for BundleInstance.

*/ @interface AWSEC2BundleTaskError : AWSModel /**

The error code.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

The error message.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Information about an address range that is provisioned for use with your Amazon Web Services resources through bring your own IP addresses (BYOIP).

*/ @interface AWSEC2ByoipCidr : AWSModel /**

The address range, in CIDR notation.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

The description of the address range.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The state of the address pool.

*/ @property (nonatomic, assign) AWSEC2ByoipCidrState state; /**

Upon success, contains the ID of the address pool. Otherwise, contains an error message.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; @end /**

Contains the parameters for CancelBundleTask.

Required parameters: [BundleId] */ @interface AWSEC2CancelBundleTaskRequest : AWSRequest /**

The ID of the bundle task.

*/ @property (nonatomic, strong) NSString * _Nullable bundleId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /**

Contains the output of CancelBundleTask.

*/ @interface AWSEC2CancelBundleTaskResult : AWSModel /**

Information about the bundle task.

*/ @property (nonatomic, strong) AWSEC2BundleTask * _Nullable bundleTask; @end /**

Describes a Capacity Reservation Fleet cancellation error.

*/ @interface AWSEC2CancelCapacityReservationFleetError : AWSModel /**

The error code.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

The error message.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /** */ @interface AWSEC2CancelCapacityReservationFleetsRequest : AWSRequest /**

The IDs of the Capacity Reservation Fleets to cancel.

*/ @property (nonatomic, strong) NSArray * _Nullable capacityReservationFleetIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2CancelCapacityReservationFleetsResult : AWSModel /**

Information about the Capacity Reservation Fleets that could not be cancelled.

*/ @property (nonatomic, strong) NSArray * _Nullable failedFleetCancellations; /**

Information about the Capacity Reservation Fleets that were successfully cancelled.

*/ @property (nonatomic, strong) NSArray * _Nullable successfulFleetCancellations; @end /** */ @interface AWSEC2CancelCapacityReservationRequest : AWSRequest /**

The ID of the Capacity Reservation to be cancelled.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2CancelCapacityReservationResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2CancelConversionRequest : AWSRequest /**

The ID of the conversion task.

*/ @property (nonatomic, strong) NSString * _Nullable conversionTaskId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The reason for canceling the conversion task.

*/ @property (nonatomic, strong) NSString * _Nullable reasonMessage; @end /** */ @interface AWSEC2CancelExportTaskRequest : AWSRequest /**

The ID of the export task. This is the ID returned by CreateInstanceExportTask.

*/ @property (nonatomic, strong) NSString * _Nullable exportTaskId; @end /** */ @interface AWSEC2CancelImageLaunchPermissionRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AMI that was shared with your Amazon Web Services account.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2CancelImageLaunchPermissionResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2CancelImportTaskRequest : AWSRequest /**

The reason for canceling the task.

*/ @property (nonatomic, strong) NSString * _Nullable cancelReason; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the import image or import snapshot task to be canceled.

*/ @property (nonatomic, strong) NSString * _Nullable importTaskId; @end /** */ @interface AWSEC2CancelImportTaskResult : AWSModel /**

The ID of the task being canceled.

*/ @property (nonatomic, strong) NSString * _Nullable importTaskId; /**

The current state of the task being canceled.

*/ @property (nonatomic, strong) NSString * _Nullable previousState; /**

The current state of the task being canceled.

*/ @property (nonatomic, strong) NSString * _Nullable state; @end /**

Contains the parameters for CancelReservedInstancesListing.

Required parameters: [ReservedInstancesListingId] */ @interface AWSEC2CancelReservedInstancesListingRequest : AWSRequest /**

The ID of the Reserved Instance listing.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesListingId; @end /**

Contains the output of CancelReservedInstancesListing.

*/ @interface AWSEC2CancelReservedInstancesListingResult : AWSModel /**

The Reserved Instance listing.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstancesListings; @end /**

Describes a Spot Fleet error.

*/ @interface AWSEC2CancelSpotFleetRequestsError : AWSModel /**

The error code.

*/ @property (nonatomic, assign) AWSEC2CancelBatchErrorCode code; /**

The description for the error code.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes a Spot Fleet request that was not successfully canceled.

*/ @interface AWSEC2CancelSpotFleetRequestsErrorItem : AWSModel /**

The error.

*/ @property (nonatomic, strong) AWSEC2CancelSpotFleetRequestsError * _Nullable error; /**

The ID of the Spot Fleet request.

*/ @property (nonatomic, strong) NSString * _Nullable spotFleetRequestId; @end /**

Contains the parameters for CancelSpotFleetRequests.

Required parameters: [SpotFleetRequestIds, TerminateInstances] */ @interface AWSEC2CancelSpotFleetRequestsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the Spot Fleet requests.

*/ @property (nonatomic, strong) NSArray * _Nullable spotFleetRequestIds; /**

Indicates whether to terminate the associated instances when the Spot Fleet request is canceled. The default is to terminate the instances.

To let the instances continue to run after the Spot Fleet request is canceled, specify no-terminate-instances.

*/ @property (nonatomic, strong) NSNumber * _Nullable terminateInstances; @end /**

Contains the output of CancelSpotFleetRequests.

*/ @interface AWSEC2CancelSpotFleetRequestsResponse : AWSModel /**

Information about the Spot Fleet requests that are successfully canceled.

*/ @property (nonatomic, strong) NSArray * _Nullable successfulFleetRequests; /**

Information about the Spot Fleet requests that are not successfully canceled.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessfulFleetRequests; @end /**

Describes a Spot Fleet request that was successfully canceled.

*/ @interface AWSEC2CancelSpotFleetRequestsSuccessItem : AWSModel /**

The current state of the Spot Fleet request.

*/ @property (nonatomic, assign) AWSEC2BatchState currentSpotFleetRequestState; /**

The previous state of the Spot Fleet request.

*/ @property (nonatomic, assign) AWSEC2BatchState previousSpotFleetRequestState; /**

The ID of the Spot Fleet request.

*/ @property (nonatomic, strong) NSString * _Nullable spotFleetRequestId; @end /**

Contains the parameters for CancelSpotInstanceRequests.

Required parameters: [SpotInstanceRequestIds] */ @interface AWSEC2CancelSpotInstanceRequestsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the Spot Instance requests.

*/ @property (nonatomic, strong) NSArray * _Nullable spotInstanceRequestIds; @end /**

Contains the output of CancelSpotInstanceRequests.

*/ @interface AWSEC2CancelSpotInstanceRequestsResult : AWSModel /**

The Spot Instance requests.

*/ @property (nonatomic, strong) NSArray * _Nullable cancelledSpotInstanceRequests; @end /**

Describes a request to cancel a Spot Instance.

*/ @interface AWSEC2CancelledSpotInstanceRequest : AWSModel /**

The ID of the Spot Instance request.

*/ @property (nonatomic, strong) NSString * _Nullable spotInstanceRequestId; /**

The state of the Spot Instance request.

*/ @property (nonatomic, assign) AWSEC2CancelSpotInstanceRequestState state; @end /**

Information about instance capacity usage for a Capacity Reservation.

*/ @interface AWSEC2CapacityAllocation : AWSModel /**

The usage type. used indicates that the instance capacity is in use by instances that are running in the Capacity Reservation.

*/ @property (nonatomic, assign) AWSEC2AllocationType allocationType; /**

The amount of instance capacity associated with the usage. For example a value of 4 indicates that instance capacity for 4 instances is currently in use.

*/ @property (nonatomic, strong) NSNumber * _Nullable count; @end /**

Describes a Capacity Reservation.

*/ @interface AWSEC2CapacityReservation : AWSModel /**

The Availability Zone in which the capacity is reserved.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The Availability Zone ID of the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZoneId; /**

The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.

*/ @property (nonatomic, strong) NSNumber * _Nullable availableInstanceCount; /**

Information about instance capacity usage.

*/ @property (nonatomic, strong) NSArray * _Nullable capacityAllocations; /**

The Amazon Resource Name (ARN) of the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationArn; /**

The ID of the Capacity Reservation Fleet to which the Capacity Reservation belongs. Only valid for Capacity Reservations that were created by a Capacity Reservation Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationFleetId; /**

The ID of the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationId; /**

The date and time at which the Capacity Reservation was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createDate; /**

Indicates whether the Capacity Reservation supports EBS-optimized instances. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS- optimized instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. The Capacity Reservation's state changes to expired when it reaches its end date and time.

*/ @property (nonatomic, strong) NSDate * _Nullable endDate; /**

Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end types:

  • unlimited - The Capacity Reservation remains active until you explicitly cancel it.

  • limited - The Capacity Reservation expires automatically at a specified date and time.

*/ @property (nonatomic, assign) AWSEC2EndDateType endDateType; /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable ephemeralStorage; /**

Indicates the type of instance launches that the Capacity Reservation accepts. The options include:

  • open - The Capacity Reservation accepts all instances that have matching attributes (instance type, platform, and Availability Zone). Instances that have matching attributes launch into the Capacity Reservation automatically without specifying any additional parameters.

  • targeted - The Capacity Reservation only accepts instances that have matching attributes (instance type, platform, and Availability Zone), and explicitly target the Capacity Reservation. This ensures that only permitted instances can use the reserved capacity.

*/ @property (nonatomic, assign) AWSEC2InstanceMatchCriteria instanceMatchCriteria; /**

The type of operating system for which the Capacity Reservation reserves capacity.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationInstancePlatform instancePlatform; /**

The type of instance for which the Capacity Reservation reserves capacity.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; /**

The Amazon Resource Name (ARN) of the Outpost on which the Capacity Reservation was created.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The ID of the Amazon Web Services account that owns the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The Amazon Resource Name (ARN) of the cluster placement group in which the Capacity Reservation was created. For more information, see Capacity Reservations for cluster placement groups in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable placementGroupArn; /**

The date and time at which the Capacity Reservation was started.

*/ @property (nonatomic, strong) NSDate * _Nullable startDate; /**

The current state of the Capacity Reservation. A Capacity Reservation can be in one of the following states:

  • active - The Capacity Reservation is active and the capacity is available for your use.

  • expired - The Capacity Reservation expired automatically at the date and time specified in your request. The reserved capacity is no longer available for your use.

  • cancelled - The Capacity Reservation was cancelled. The reserved capacity is no longer available for your use.

  • pending - The Capacity Reservation request was successful but the capacity provisioning is still pending.

  • failed - The Capacity Reservation request has failed. A request might fail due to invalid request parameters, capacity constraints, or instance limit constraints. Failed requests are retained for 60 minutes.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationState state; /**

Any tags assigned to the Capacity Reservation.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can have one of the following tenancy settings:

  • default - The Capacity Reservation is created on hardware that is shared with other Amazon Web Services accounts.

  • dedicated - The Capacity Reservation is created on single-tenant hardware that is dedicated to a single Amazon Web Services account.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationTenancy tenancy; /**

The total number of instances for which the Capacity Reservation reserves capacity.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalInstanceCount; @end /**

Information about a Capacity Reservation Fleet.

*/ @interface AWSEC2CapacityReservationFleet : AWSModel /**

The strategy used by the Capacity Reservation Fleet to determine which of the specified instance types to use. For more information, see For more information, see Allocation strategy in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable allocationStrategy; /**

The ARN of the Capacity Reservation Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationFleetArn; /**

The ID of the Capacity Reservation Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationFleetId; /**

The date and time at which the Capacity Reservation Fleet was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createTime; /**

The date and time at which the Capacity Reservation Fleet expires.

*/ @property (nonatomic, strong) NSDate * _Nullable endDate; /**

Indicates the type of instance launches that the Capacity Reservation Fleet accepts. All Capacity Reservations in the Fleet inherit this instance matching criteria.

Currently, Capacity Reservation Fleets support open instance matching criteria only. This means that instances that have matching attributes (instance type, platform, and Availability Zone) run in the Capacity Reservations automatically. Instances do not need to explicitly target a Capacity Reservation Fleet to use its reserved capacity.

*/ @property (nonatomic, assign) AWSEC2FleetInstanceMatchCriteria instanceMatchCriteria; /**

Information about the instance types for which to reserve the capacity.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTypeSpecifications; /**

The state of the Capacity Reservation Fleet. Possible states include:

  • submitted - The Capacity Reservation Fleet request has been submitted and Amazon Elastic Compute Cloud is preparing to create the Capacity Reservations.

  • modifying - The Capacity Reservation Fleet is being modified. The Fleet remains in this state until the modification is complete.

  • active - The Capacity Reservation Fleet has fulfilled its total target capacity and it is attempting to maintain this capacity. The Fleet remains in this state until it is modified or deleted.

  • partially_fulfilled - The Capacity Reservation Fleet has partially fulfilled its total target capacity. There is insufficient Amazon EC2 to fulfill the total target capacity. The Fleet is attempting to asynchronously fulfill its total target capacity.

  • expiring - The Capacity Reservation Fleet has reach its end date and it is in the process of expiring. One or more of its Capacity reservations might still be active.

  • expired - The Capacity Reservation Fleet has reach its end date. The Fleet and its Capacity Reservations are expired. The Fleet can't create new Capacity Reservations.

  • cancelling - The Capacity Reservation Fleet is in the process of being cancelled. One or more of its Capacity reservations might still be active.

  • cancelled - The Capacity Reservation Fleet has been manually cancelled. The Fleet and its Capacity Reservations are cancelled and the Fleet can't create new Capacity Reservations.

  • failed - The Capacity Reservation Fleet failed to reserve capacity for the specified instance types.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationFleetState state; /**

The tags assigned to the Capacity Reservation Fleet.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The tenancy of the Capacity Reservation Fleet. Tenancies include:

  • default - The Capacity Reservation Fleet is created on hardware that is shared with other Amazon Web Services accounts.

  • dedicated - The Capacity Reservation Fleet is created on single-tenant hardware that is dedicated to a single Amazon Web Services account.

*/ @property (nonatomic, assign) AWSEC2FleetCapacityReservationTenancy tenancy; /**

The capacity units that have been fulfilled.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalFulfilledCapacity; /**

The total number of capacity units for which the Capacity Reservation Fleet reserves capacity. For more information, see Total target capacity in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalTargetCapacity; @end /**

Describes a Capacity Reservation Fleet that was successfully cancelled.

*/ @interface AWSEC2CapacityReservationFleetCancellationState : AWSModel /**

The ID of the Capacity Reservation Fleet that was successfully cancelled.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationFleetId; /**

The current state of the Capacity Reservation Fleet.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationFleetState currentFleetState; /**

The previous state of the Capacity Reservation Fleet.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationFleetState previousFleetState; @end /**

Describes a resource group to which a Capacity Reservation has been added.

*/ @interface AWSEC2CapacityReservationGroup : AWSModel /**

The ARN of the resource group.

*/ @property (nonatomic, strong) NSString * _Nullable groupArn; /**

The ID of the Amazon Web Services account that owns the resource group.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; @end /**

Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand capacity.

This strategy can only be used if the EC2 Fleet is of type instant.

For more information about Capacity Reservations, see On-Demand Capacity Reservations in the Amazon EC2 User Guide. For examples of using Capacity Reservations in an EC2 Fleet, see EC2 Fleet example configurations in the Amazon EC2 User Guide.

*/ @interface AWSEC2CapacityReservationOptions : AWSModel /**

Indicates whether to use unused Capacity Reservations for fulfilling On-Demand capacity.

If you specify use-capacity-reservations-first, the fleet uses unused Capacity Reservations to fulfill On-Demand capacity up to the target On-Demand capacity. If multiple instance pools have unused Capacity Reservations, the On-Demand allocation strategy (lowest-price or prioritized) is applied. If the number of unused Capacity Reservations is less than the On-Demand target capacity, the remaining On-Demand target capacity is launched according to the On-Demand allocation strategy (lowest-price or prioritized).

If you do not specify a value, the fleet fulfils the On-Demand capacity according to the chosen On-Demand allocation strategy.

*/ @property (nonatomic, assign) AWSEC2FleetCapacityReservationUsageStrategy usageStrategy; @end /**

Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand capacity.

This strategy can only be used if the EC2 Fleet is of type instant.

For more information about Capacity Reservations, see On-Demand Capacity Reservations in the Amazon EC2 User Guide. For examples of using Capacity Reservations in an EC2 Fleet, see EC2 Fleet example configurations in the Amazon EC2 User Guide.

*/ @interface AWSEC2CapacityReservationOptionsRequest : AWSModel /**

Indicates whether to use unused Capacity Reservations for fulfilling On-Demand capacity.

If you specify use-capacity-reservations-first, the fleet uses unused Capacity Reservations to fulfill On-Demand capacity up to the target On-Demand capacity. If multiple instance pools have unused Capacity Reservations, the On-Demand allocation strategy (lowest-price or prioritized) is applied. If the number of unused Capacity Reservations is less than the On-Demand target capacity, the remaining On-Demand target capacity is launched according to the On-Demand allocation strategy (lowest-price or prioritized).

If you do not specify a value, the fleet fulfils the On-Demand capacity according to the chosen On-Demand allocation strategy.

*/ @property (nonatomic, assign) AWSEC2FleetCapacityReservationUsageStrategy usageStrategy; @end /**

Describes an instance's Capacity Reservation targeting option. You can specify only one parameter at a time. If you specify CapacityReservationPreference and CapacityReservationTarget, the request fails.

Use the CapacityReservationPreference parameter to configure the instance to run as an On-Demand Instance or to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). Use the CapacityReservationTarget parameter to explicitly target a specific Capacity Reservation or a Capacity Reservation group.

*/ @interface AWSEC2CapacityReservationSpecification : AWSModel /**

Indicates the instance's Capacity Reservation preferences. Possible preferences include:

  • open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).

  • none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs as an On-Demand Instance.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationPreference capacityReservationPreference; /**

Information about the target Capacity Reservation or Capacity Reservation group.

*/ @property (nonatomic, strong) AWSEC2CapacityReservationTarget * _Nullable capacityReservationTarget; @end /**

Describes the instance's Capacity Reservation targeting preferences. The action returns the capacityReservationPreference response element if the instance is configured to run in On-Demand capacity, or if it is configured in run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). The action returns the capacityReservationTarget response element if the instance explicily targets a specific Capacity Reservation or Capacity Reservation group.

*/ @interface AWSEC2CapacityReservationSpecificationResponse : AWSModel /**

Describes the instance's Capacity Reservation preferences. Possible preferences include:

  • open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).

  • none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationPreference capacityReservationPreference; /**

Information about the targeted Capacity Reservation or Capacity Reservation group.

*/ @property (nonatomic, strong) AWSEC2CapacityReservationTargetResponse * _Nullable capacityReservationTarget; @end /**

Describes a target Capacity Reservation or Capacity Reservation group.

*/ @interface AWSEC2CapacityReservationTarget : AWSModel /**

The ID of the Capacity Reservation in which to run the instance.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationId; /**

The ARN of the Capacity Reservation resource group in which to run the instance.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationResourceGroupArn; @end /**

Describes a target Capacity Reservation or Capacity Reservation group.

*/ @interface AWSEC2CapacityReservationTargetResponse : AWSModel /**

The ID of the targeted Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationId; /**

The ARN of the targeted Capacity Reservation group.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationResourceGroupArn; @end /**

Describes a carrier gateway.

*/ @interface AWSEC2CarrierGateway : AWSModel /**

The ID of the carrier gateway.

*/ @property (nonatomic, strong) NSString * _Nullable carrierGatewayId; /**

The Amazon Web Services account ID of the owner of the carrier gateway.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The state of the carrier gateway.

*/ @property (nonatomic, assign) AWSEC2CarrierGatewayState state; /**

The tags assigned to the carrier gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC associated with the carrier gateway.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Information about the client certificate used for authentication.

*/ @interface AWSEC2CertificateAuthentication : AWSModel /**

The ARN of the client certificate.

*/ @property (nonatomic, strong) NSString * _Nullable clientRootCertificateChain; @end /**

Information about the client certificate to be used for authentication.

*/ @interface AWSEC2CertificateAuthenticationRequest : AWSModel /**

The ARN of the client certificate. The certificate must be signed by a certificate authority (CA) and it must be provisioned in Certificate Manager (ACM).

*/ @property (nonatomic, strong) NSString * _Nullable clientRootCertificateChainArn; @end /**

Provides authorization for Amazon to bring a specific IP address range to a specific Amazon Web Services account using bring your own IP addresses (BYOIP). For more information, see Configuring your BYOIP address range in the Amazon Elastic Compute Cloud User Guide.

Required parameters: [Message, Signature] */ @interface AWSEC2CidrAuthorizationContext : AWSModel /**

The plain-text authorization message for the prefix and account.

*/ @property (nonatomic, strong) NSString * _Nullable message; /**

The signed authorization message for the prefix and account.

*/ @property (nonatomic, strong) NSString * _Nullable signature; @end /**

Describes an IPv4 CIDR block.

*/ @interface AWSEC2CidrBlock : AWSModel /**

The IPv4 CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable cidrBlock; @end /**

Deprecated.

Describes the ClassicLink DNS support status of a VPC.

*/ @interface AWSEC2ClassicLinkDnsSupport : AWSModel /**

Indicates whether ClassicLink DNS support is enabled for the VPC.

*/ @property (nonatomic, strong) NSNumber * _Nullable classicLinkDnsSupported; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Deprecated.

Describes a linked EC2-Classic instance.

*/ @interface AWSEC2ClassicLinkInstance : AWSModel /**

The security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

Any tags assigned to the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes a Classic Load Balancer.

*/ @interface AWSEC2ClassicLoadBalancer : AWSModel /**

The name of the load balancer.

*/ @property (nonatomic, strong) NSString * _Nullable name; @end /**

Describes the Classic Load Balancers to attach to a Spot Fleet. Spot Fleet registers the running Spot Instances with these Classic Load Balancers.

*/ @interface AWSEC2ClassicLoadBalancersConfig : AWSModel /**

One or more Classic Load Balancers.

*/ @property (nonatomic, strong) NSArray * _Nullable classicLoadBalancers; @end /**

Describes the state of a client certificate revocation list.

*/ @interface AWSEC2ClientCertificateRevocationListStatus : AWSModel /**

The state of the client certificate revocation list.

*/ @property (nonatomic, assign) AWSEC2ClientCertificateRevocationListStatusCode code; /**

A message about the status of the client certificate revocation list, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

The options for managing connection authorization for new client connections.

*/ @interface AWSEC2ClientConnectOptions : AWSModel /**

Indicates whether client connect options are enabled. The default is false (not enabled).

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; /**

The Amazon Resource Name (ARN) of the Lambda function used for connection authorization.

*/ @property (nonatomic, strong) NSString * _Nullable lambdaFunctionArn; @end /**

The options for managing connection authorization for new client connections.

*/ @interface AWSEC2ClientConnectResponseOptions : AWSModel /**

Indicates whether client connect options are enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; /**

The Amazon Resource Name (ARN) of the Lambda function used for connection authorization.

*/ @property (nonatomic, strong) NSString * _Nullable lambdaFunctionArn; /**

The status of any updates to the client connect options.

*/ @property (nonatomic, strong) AWSEC2ClientVpnEndpointAttributeStatus * _Nullable status; @end /**

Describes the client-specific data.

*/ @interface AWSEC2ClientData : AWSModel /**

A user-defined comment about the disk upload.

*/ @property (nonatomic, strong) NSString * _Nullable comment; /**

The time that the disk upload ends.

*/ @property (nonatomic, strong) NSDate * _Nullable uploadEnd; /**

The size of the uploaded disk image, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable uploadSize; /**

The time that the disk upload starts.

*/ @property (nonatomic, strong) NSDate * _Nullable uploadStart; @end /**

Options for enabling a customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

*/ @interface AWSEC2ClientLoginBannerOptions : AWSModel /**

Customizable text that will be displayed in a banner on Amazon Web Services provided clients when a VPN session is established. UTF-8 encoded characters only. Maximum of 1400 characters.

*/ @property (nonatomic, strong) NSString * _Nullable bannerText; /**

Enable or disable a customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

Valid values: true | false

Default value: false

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Current state of options for customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

*/ @interface AWSEC2ClientLoginBannerResponseOptions : AWSModel /**

Customizable text that will be displayed in a banner on Amazon Web Services provided clients when a VPN session is established. UTF-8 encoded characters only. Maximum of 1400 characters.

*/ @property (nonatomic, strong) NSString * _Nullable bannerText; /**

Current state of text banner feature.

Valid values: true | false

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Describes the authentication methods used by a Client VPN endpoint. For more information, see Authentication in the Client VPN Administrator Guide.

*/ @interface AWSEC2ClientVpnAuthentication : AWSModel /**

Information about the Active Directory, if applicable.

*/ @property (nonatomic, strong) AWSEC2DirectoryServiceAuthentication * _Nullable activeDirectory; /**

Information about the IAM SAML identity provider, if applicable.

*/ @property (nonatomic, strong) AWSEC2FederatedAuthentication * _Nullable federatedAuthentication; /**

Information about the authentication certificates, if applicable.

*/ @property (nonatomic, strong) AWSEC2CertificateAuthentication * _Nullable mutualAuthentication; /**

The authentication type used.

*/ @property (nonatomic, assign) AWSEC2ClientVpnAuthenticationType types; @end /**

Describes the authentication method to be used by a Client VPN endpoint. For more information, see Authentication in the Client VPN Administrator Guide.

*/ @interface AWSEC2ClientVpnAuthenticationRequest : AWSModel /**

Information about the Active Directory to be used, if applicable. You must provide this information if Type is directory-service-authentication.

*/ @property (nonatomic, strong) AWSEC2DirectoryServiceAuthenticationRequest * _Nullable activeDirectory; /**

Information about the IAM SAML identity provider to be used, if applicable. You must provide this information if Type is federated-authentication.

*/ @property (nonatomic, strong) AWSEC2FederatedAuthenticationRequest * _Nullable federatedAuthentication; /**

Information about the authentication certificates to be used, if applicable. You must provide this information if Type is certificate-authentication.

*/ @property (nonatomic, strong) AWSEC2CertificateAuthenticationRequest * _Nullable mutualAuthentication; /**

The type of client authentication to be used.

*/ @property (nonatomic, assign) AWSEC2ClientVpnAuthenticationType types; @end /**

Describes the state of an authorization rule.

*/ @interface AWSEC2ClientVpnAuthorizationRuleStatus : AWSModel /**

The state of the authorization rule.

*/ @property (nonatomic, assign) AWSEC2ClientVpnAuthorizationRuleStatusCode code; /**

A message about the status of the authorization rule, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes a client connection.

*/ @interface AWSEC2ClientVpnConnection : AWSModel /**

The IP address of the client.

*/ @property (nonatomic, strong) NSString * _Nullable clientIp; /**

The ID of the Client VPN endpoint to which the client is connected.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

The common name associated with the client. This is either the name of the client certificate, or the Active Directory user name.

*/ @property (nonatomic, strong) NSString * _Nullable commonName; /**

The date and time the client connection was terminated.

*/ @property (nonatomic, strong) NSString * _Nullable connectionEndTime; /**

The date and time the client connection was established.

*/ @property (nonatomic, strong) NSString * _Nullable connectionEstablishedTime; /**

The ID of the client connection.

*/ @property (nonatomic, strong) NSString * _Nullable connectionId; /**

The number of bytes received by the client.

*/ @property (nonatomic, strong) NSString * _Nullable egressBytes; /**

The number of packets received by the client.

*/ @property (nonatomic, strong) NSString * _Nullable egressPackets; /**

The number of bytes sent by the client.

*/ @property (nonatomic, strong) NSString * _Nullable ingressBytes; /**

The number of packets sent by the client.

*/ @property (nonatomic, strong) NSString * _Nullable ingressPackets; /**

The statuses returned by the client connect handler for posture compliance, if applicable.

*/ @property (nonatomic, strong) NSArray * _Nullable postureComplianceStatuses; /**

The current state of the client connection.

*/ @property (nonatomic, strong) AWSEC2ClientVpnConnectionStatus * _Nullable status; /**

The current date and time.

*/ @property (nonatomic, strong) NSString * _Nullable timestamp; /**

The username of the client who established the client connection. This information is only provided if Active Directory client authentication is used.

*/ @property (nonatomic, strong) NSString * _Nullable username; @end /**

Describes the status of a client connection.

*/ @interface AWSEC2ClientVpnConnectionStatus : AWSModel /**

The state of the client connection.

*/ @property (nonatomic, assign) AWSEC2ClientVpnConnectionStatusCode code; /**

A message about the status of the client connection, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes a Client VPN endpoint.

*/ @interface AWSEC2ClientVpnEndpoint : AWSModel /**

Information about the associated target networks. A target network is a subnet in a VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable associatedTargetNetworks; /**

Information about the authentication method used by the Client VPN endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable authenticationOptions; /**

The IPv4 address range, in CIDR notation, from which client IP addresses are assigned.

*/ @property (nonatomic, strong) NSString * _Nullable clientCidrBlock; /**

The options for managing connection authorization for new client connections.

*/ @property (nonatomic, strong) AWSEC2ClientConnectResponseOptions * _Nullable clientConnectOptions; /**

Options for enabling a customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

*/ @property (nonatomic, strong) AWSEC2ClientLoginBannerResponseOptions * _Nullable clientLoginBannerOptions; /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Information about the client connection logging options for the Client VPN endpoint.

*/ @property (nonatomic, strong) AWSEC2ConnectionLogResponseOptions * _Nullable connectionLogOptions; /**

The date and time the Client VPN endpoint was created.

*/ @property (nonatomic, strong) NSString * _Nullable creationTime; /**

The date and time the Client VPN endpoint was deleted, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable deletionTime; /**

A brief description of the endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The DNS name to be used by clients when connecting to the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable dnsName; /**

Information about the DNS servers to be used for DNS resolution.

*/ @property (nonatomic, strong) NSArray * _Nullable dnsServers; /**

The IDs of the security groups for the target network.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

The URL of the self-service portal.

*/ @property (nonatomic, strong) NSString * _Nullable selfServicePortalUrl; /**

The ARN of the server certificate.

*/ @property (nonatomic, strong) NSString * _Nullable serverCertificateArn; /**

The maximum VPN session duration time in hours.

Valid values: 8 | 10 | 12 | 24

Default value: 24

*/ @property (nonatomic, strong) NSNumber * _Nullable sessionTimeoutHours; /**

Indicates whether split-tunnel is enabled in the Client VPN endpoint.

For information about split-tunnel VPN endpoints, see Split-Tunnel Client VPN endpoint in the Client VPN Administrator Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable splitTunnel; /**

The current state of the Client VPN endpoint.

*/ @property (nonatomic, strong) AWSEC2ClientVpnEndpointStatus * _Nullable status; /**

Any tags assigned to the Client VPN endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The transport protocol used by the Client VPN endpoint.

*/ @property (nonatomic, assign) AWSEC2TransportProtocol transportProtocol; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; /**

The port number for the Client VPN endpoint.

*/ @property (nonatomic, strong) NSNumber * _Nullable vpnPort; /**

The protocol used by the VPN session.

*/ @property (nonatomic, assign) AWSEC2VpnProtocol vpnProtocol; @end /**

Describes the status of the Client VPN endpoint attribute.

*/ @interface AWSEC2ClientVpnEndpointAttributeStatus : AWSModel /**

The status code.

*/ @property (nonatomic, assign) AWSEC2ClientVpnEndpointAttributeStatusCode code; /**

The status message.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes the state of a Client VPN endpoint.

*/ @interface AWSEC2ClientVpnEndpointStatus : AWSModel /**

The state of the Client VPN endpoint. Possible states include:

  • pending-associate - The Client VPN endpoint has been created but no target networks have been associated. The Client VPN endpoint cannot accept connections.

  • available - The Client VPN endpoint has been created and a target network has been associated. The Client VPN endpoint can accept connections.

  • deleting - The Client VPN endpoint is being deleted. The Client VPN endpoint cannot accept connections.

  • deleted - The Client VPN endpoint has been deleted. The Client VPN endpoint cannot accept connections.

*/ @property (nonatomic, assign) AWSEC2ClientVpnEndpointStatusCode code; /**

A message about the status of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Information about a Client VPN endpoint route.

*/ @interface AWSEC2ClientVpnRoute : AWSModel /**

The ID of the Client VPN endpoint with which the route is associated.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

A brief description of the route.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The IPv4 address range, in CIDR notation, of the route destination.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidr; /**

Indicates how the route was associated with the Client VPN endpoint. associate indicates that the route was automatically added when the target network was associated with the Client VPN endpoint. add-route indicates that the route was manually added using the CreateClientVpnRoute action.

*/ @property (nonatomic, strong) NSString * _Nullable origin; /**

The current state of the route.

*/ @property (nonatomic, strong) AWSEC2ClientVpnRouteStatus * _Nullable status; /**

The ID of the subnet through which traffic is routed.

*/ @property (nonatomic, strong) NSString * _Nullable targetSubnet; /**

The route type.

*/ @property (nonatomic, strong) NSString * _Nullable types; @end /**

Describes the state of a Client VPN endpoint route.

*/ @interface AWSEC2ClientVpnRouteStatus : AWSModel /**

The state of the Client VPN endpoint route.

*/ @property (nonatomic, assign) AWSEC2ClientVpnRouteStatusCode code; /**

A message about the status of the Client VPN endpoint route, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Options for sending VPN tunnel logs to CloudWatch.

*/ @interface AWSEC2CloudWatchLogOptions : AWSModel /**

Status of VPN tunnel logging feature. Default value is False.

Valid values: True | False

*/ @property (nonatomic, strong) NSNumber * _Nullable logEnabled; /**

The Amazon Resource Name (ARN) of the CloudWatch log group to send logs to.

*/ @property (nonatomic, strong) NSString * _Nullable logGroupArn; /**

Configured log format. Default format is json.

Valid values: json | text

*/ @property (nonatomic, strong) NSString * _Nullable logOutputFormat; @end /**

Options for sending VPN tunnel logs to CloudWatch.

*/ @interface AWSEC2CloudWatchLogOptionsSpecification : AWSModel /**

Enable or disable VPN tunnel logging feature. Default value is False.

Valid values: True | False

*/ @property (nonatomic, strong) NSNumber * _Nullable logEnabled; /**

The Amazon Resource Name (ARN) of the CloudWatch log group to send logs to.

*/ @property (nonatomic, strong) NSString * _Nullable logGroupArn; /**

Set log format. Default format is json.

Valid values: json | text

*/ @property (nonatomic, strong) NSString * _Nullable logOutputFormat; @end /**

Describes address usage for a customer-owned address pool.

*/ @interface AWSEC2CoipAddressUsage : AWSModel /**

The allocation ID of the address.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

The Amazon Web Services account ID.

*/ @property (nonatomic, strong) NSString * _Nullable awsAccountId; /**

The Amazon Web Services service.

*/ @property (nonatomic, strong) NSString * _Nullable awsService; /**

The customer-owned IP address.

*/ @property (nonatomic, strong) NSString * _Nullable coIp; @end /**

Information about a customer-owned IP address range.

*/ @interface AWSEC2CoipCidr : AWSModel /**

An address range in a customer-owned IP address space.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

The ID of the address pool.

*/ @property (nonatomic, strong) NSString * _Nullable coipPoolId; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; @end /**

Describes a customer-owned address pool.

*/ @interface AWSEC2CoipPool : AWSModel /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; /**

The ARN of the address pool.

*/ @property (nonatomic, strong) NSString * _Nullable poolArn; /**

The address ranges of the address pool.

*/ @property (nonatomic, strong) NSArray * _Nullable poolCidrs; /**

The ID of the address pool.

*/ @property (nonatomic, strong) NSString * _Nullable poolId; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /** */ @interface AWSEC2ConfirmProductInstanceRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The product code. This must be a product code that you own.

*/ @property (nonatomic, strong) NSString * _Nullable productCode; @end /** */ @interface AWSEC2ConfirmProductInstanceResult : AWSModel /**

The Amazon Web Services account ID of the instance owner. This is only present if the product code is attached to the instance.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The return value of the request. Returns true if the specified product code is owned by the requester and associated with the specified instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /**

Describes the client connection logging options for the Client VPN endpoint.

*/ @interface AWSEC2ConnectionLogOptions : AWSModel /**

The name of the CloudWatch Logs log group. Required if connection logging is enabled.

*/ @property (nonatomic, strong) NSString * _Nullable cloudwatchLogGroup; /**

The name of the CloudWatch Logs log stream to which the connection data is published.

*/ @property (nonatomic, strong) NSString * _Nullable cloudwatchLogStream; /**

Indicates whether connection logging is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Information about the client connection logging options for a Client VPN endpoint.

*/ @interface AWSEC2ConnectionLogResponseOptions : AWSModel /**

The name of the Amazon CloudWatch Logs log group to which connection logging data is published.

*/ @property (nonatomic, strong) NSString * _Nullable cloudwatchLogGroup; /**

The name of the Amazon CloudWatch Logs log stream to which connection logging data is published.

*/ @property (nonatomic, strong) NSString * _Nullable cloudwatchLogStream; /**

Indicates whether client connection logging is enabled for the Client VPN endpoint.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Describes a connection notification for a VPC endpoint or VPC endpoint service.

*/ @interface AWSEC2ConnectionNotification : AWSModel /**

The events for the notification. Valid values are Accept, Connect, Delete, and Reject.

*/ @property (nonatomic, strong) NSArray * _Nullable connectionEvents; /**

The ARN of the SNS topic for the notification.

*/ @property (nonatomic, strong) NSString * _Nullable connectionNotificationArn; /**

The ID of the notification.

*/ @property (nonatomic, strong) NSString * _Nullable connectionNotificationId; /**

The state of the notification.

*/ @property (nonatomic, assign) AWSEC2ConnectionNotificationState connectionNotificationState; /**

The type of notification.

*/ @property (nonatomic, assign) AWSEC2ConnectionNotificationType connectionNotificationType; /**

The ID of the endpoint service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; /**

The ID of the VPC endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable vpcEndpointId; @end /**

Describes a conversion task.

*/ @interface AWSEC2ConversionTask : AWSModel /**

The ID of the conversion task.

*/ @property (nonatomic, strong) NSString * _Nullable conversionTaskId; /**

The time when the task expires. If the upload isn't complete before the expiration time, we automatically cancel the task.

*/ @property (nonatomic, strong) NSString * _Nullable expirationTime; /**

If the task is for importing an instance, this contains information about the import instance task.

*/ @property (nonatomic, strong) AWSEC2ImportInstanceTaskDetails * _Nullable importInstance; /**

If the task is for importing a volume, this contains information about the import volume task.

*/ @property (nonatomic, strong) AWSEC2ImportVolumeTaskDetails * _Nullable importVolume; /**

The state of the conversion task.

*/ @property (nonatomic, assign) AWSEC2ConversionTaskState state; /**

The status message related to the conversion task.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

Any tags assigned to the task.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /** */ @interface AWSEC2ReplicateFpgaImageRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The description for the new AFI.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The name for the new AFI. The default is the name of the source AFI.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The ID of the source AFI.

*/ @property (nonatomic, strong) NSString * _Nullable sourceFpgaImageId; /**

The Region that contains the source AFI.

*/ @property (nonatomic, strong) NSString * _Nullable sourceRegion; @end /** */ @interface AWSEC2ReplicateFpgaImageResult : AWSModel /**

The ID of the new AFI.

*/ @property (nonatomic, strong) NSString * _Nullable fpgaImageId; @end /**

Contains the parameters for CopyImage.

Required parameters: [Name, SourceImageId, SourceRegion] */ @interface AWSEC2ReplicateImageRequest : AWSRequest /**

Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see Ensuring idempotency in the Amazon EC2 API Reference.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Indicates whether to include your user-defined AMI tags when copying the AMI.

The following tags will not be copied:

  • System tags (prefixed with aws:)

  • For public and shared AMIs, user-defined tags that are attached by other Amazon Web Services accounts

Default: Your user-defined AMI tags are not copied.

*/ @property (nonatomic, strong) NSNumber * _Nullable replicateImageTags; /**

A description for the new AMI in the destination Region.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The Amazon Resource Name (ARN) of the Outpost to which to copy the AMI. Only specify this parameter when copying an AMI from an Amazon Web Services Region to an Outpost. The AMI must be in the Region of the destination Outpost. You cannot copy an AMI from an Outpost to a Region, from one Outpost to another, or within the same Outpost.

For more information, see Copy AMIs from an Amazon Web Services Region to an Outpost in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable destinationOutpostArn; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Specifies whether the destination snapshots of the copied image should be encrypted. You can encrypt a copy of an unencrypted snapshot, but you cannot create an unencrypted copy of an encrypted snapshot. The default KMS key for Amazon EBS is used unless you specify a non-default Key Management Service (KMS) KMS key using KmsKeyId. For more information, see Amazon EBS encryption in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The identifier of the symmetric Key Management Service (KMS) KMS key to use when creating encrypted volumes. If this parameter is not specified, your Amazon Web Services managed KMS key for Amazon EBS is used. If you specify a KMS key, you must also set the encrypted state to true.

You can specify a KMS key using any of the following:

  • Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  • Key alias. For example, alias/ExampleAlias.

  • Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  • Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an identifier that is not valid, the action can appear to complete, but eventually fails.

The specified KMS key must exist in the destination Region.

Amazon EBS does not support asymmetric KMS keys.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

The name of the new AMI in the destination Region.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The ID of the AMI to copy.

*/ @property (nonatomic, strong) NSString * _Nullable sourceImageId; /**

The name of the Region that contains the AMI to copy.

*/ @property (nonatomic, strong) NSString * _Nullable sourceRegion; @end /**

Contains the output of CopyImage.

*/ @interface AWSEC2ReplicateImageResult : AWSModel /**

The ID of the new AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2ReplicateSnapshotRequest : AWSRequest /**

A description for the EBS snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The Amazon Resource Name (ARN) of the Outpost to which to copy the snapshot. Only specify this parameter when copying a snapshot from an Amazon Web Services Region to an Outpost. The snapshot must be in the Region for the destination Outpost. You cannot copy a snapshot from an Outpost to a Region, from one Outpost to another, or within the same Outpost.

For more information, see Copy snapshots from an Amazon Web Services Region to an Outpost in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable destinationOutpostArn; /**

The destination Region to use in the PresignedUrl parameter of a snapshot copy operation. This parameter is only valid for specifying the destination Region in a PresignedUrl parameter, where it is required.

The snapshot copy is sent to the regional endpoint that you sent the HTTP request to (for example, ec2.us-east-1.amazonaws.com). With the CLI, this is specified using the --region parameter or the default Region in your Amazon Web Services configuration file.

*/ @property (nonatomic, strong) NSString * _Nullable destinationRegion; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

To encrypt a copy of an unencrypted snapshot if encryption by default is not enabled, enable encryption using this parameter. Otherwise, omit this parameter. Encrypted snapshots are encrypted, even if you omit this parameter and encryption by default is not enabled. You cannot set this parameter to false. For more information, see Amazon EBS encryption in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The identifier of the Key Management Service (KMS) KMS key to use for Amazon EBS encryption. If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is specified, the encrypted state must be true.

You can specify the KMS key using any of the following:

  • Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  • Key alias. For example, alias/ExampleAlias.

  • Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  • Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, the action can appear to complete, but eventually fails.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

When you copy an encrypted source snapshot using the Amazon EC2 Query API, you must supply a pre-signed URL. This parameter is optional for unencrypted snapshots. For more information, see Query requests.

The PresignedUrl should use the snapshot source endpoint, the CopySnapshot action, and include the SourceRegion, SourceSnapshotId, and DestinationRegion parameters. The PresignedUrl must be signed using Amazon Web Services Signature Version 4. Because EBS snapshots are stored in Amazon S3, the signing algorithm for this parameter uses the same logic that is described in Authenticating Requests: Using Query Parameters (Amazon Web Services Signature Version 4) in the Amazon Simple Storage Service API Reference. An invalid or improperly signed PresignedUrl will cause the copy operation to fail asynchronously, and the snapshot will move to an error state.

*/ @property (nonatomic, strong) NSString * _Nullable presignedUrl; /**

The ID of the Region that contains the snapshot to be copied.

*/ @property (nonatomic, strong) NSString * _Nullable sourceRegion; /**

The ID of the EBS snapshot to copy.

*/ @property (nonatomic, strong) NSString * _Nullable sourceSnapshotId; /**

The tags to apply to the new snapshot.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2ReplicateSnapshotResult : AWSModel /**

The ID of the new snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

Any tags applied to the new snapshot.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

The CPU options for the instance.

*/ @interface AWSEC2CpuOptions : AWSModel /**

Indicates whether the instance is enabled for AMD SEV-SNP. For more information, see AMD SEV-SNP.

*/ @property (nonatomic, assign) AWSEC2AmdSevSnpSpecification amdSevSnp; /**

The number of CPU cores for the instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable coreCount; /**

The number of threads per CPU core.

*/ @property (nonatomic, strong) NSNumber * _Nullable threadsPerCore; @end /**

The CPU options for the instance. Both the core count and threads per core must be specified in the request.

*/ @interface AWSEC2CpuOptionsRequest : AWSModel /**

Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see AMD SEV-SNP.

*/ @property (nonatomic, assign) AWSEC2AmdSevSnpSpecification amdSevSnp; /**

The number of CPU cores for the instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable coreCount; /**

The number of threads per CPU core. To disable multithreading for the instance, specify a value of 1. Otherwise, specify the default value of 2.

*/ @property (nonatomic, strong) NSNumber * _Nullable threadsPerCore; @end /** */ @interface AWSEC2CreateCapacityReservationFleetRequest : AWSRequest /**

The strategy used by the Capacity Reservation Fleet to determine which of the specified instance types to use. Currently, only the prioritized allocation strategy is supported. For more information, see Allocation strategy in the Amazon EC2 User Guide.

Valid values: prioritized

*/ @property (nonatomic, strong) NSString * _Nullable allocationStrategy; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The date and time at which the Capacity Reservation Fleet expires. When the Capacity Reservation Fleet expires, its state changes to expired and all of the Capacity Reservations in the Fleet expire.

The Capacity Reservation Fleet expires within an hour after the specified time. For example, if you specify 5/31/2019, 13:30:55, the Capacity Reservation Fleet is guaranteed to expire between 13:30:55 and 14:30:55 on 5/31/2019.

*/ @property (nonatomic, strong) NSDate * _Nullable endDate; /**

Indicates the type of instance launches that the Capacity Reservation Fleet accepts. All Capacity Reservations in the Fleet inherit this instance matching criteria.

Currently, Capacity Reservation Fleets support open instance matching criteria only. This means that instances that have matching attributes (instance type, platform, and Availability Zone) run in the Capacity Reservations automatically. Instances do not need to explicitly target a Capacity Reservation Fleet to use its reserved capacity.

*/ @property (nonatomic, assign) AWSEC2FleetInstanceMatchCriteria instanceMatchCriteria; /**

Information about the instance types for which to reserve the capacity.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTypeSpecifications; /**

The tags to assign to the Capacity Reservation Fleet. The tags are automatically assigned to the Capacity Reservations in the Fleet.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

Indicates the tenancy of the Capacity Reservation Fleet. All Capacity Reservations in the Fleet inherit this tenancy. The Capacity Reservation Fleet can have one of the following tenancy settings:

  • default - The Capacity Reservation Fleet is created on hardware that is shared with other Amazon Web Services accounts.

  • dedicated - The Capacity Reservations are created on single-tenant hardware that is dedicated to a single Amazon Web Services account.

*/ @property (nonatomic, assign) AWSEC2FleetCapacityReservationTenancy tenancy; /**

The total number of capacity units to be reserved by the Capacity Reservation Fleet. This value, together with the instance type weights that you assign to each instance type used by the Fleet determine the number of instances for which the Fleet reserves capacity. Both values are based on units that make sense for your workload. For more information, see Total target capacity in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalTargetCapacity; @end /** */ @interface AWSEC2CreateCapacityReservationFleetResult : AWSModel /**

The allocation strategy used by the Capacity Reservation Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable allocationStrategy; /**

The ID of the Capacity Reservation Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationFleetId; /**

The date and time at which the Capacity Reservation Fleet was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createTime; /**

The date and time at which the Capacity Reservation Fleet expires.

*/ @property (nonatomic, strong) NSDate * _Nullable endDate; /**

Information about the individual Capacity Reservations in the Capacity Reservation Fleet.

*/ @property (nonatomic, strong) NSArray * _Nullable fleetCapacityReservations; /**

The instance matching criteria for the Capacity Reservation Fleet.

*/ @property (nonatomic, assign) AWSEC2FleetInstanceMatchCriteria instanceMatchCriteria; /**

The status of the Capacity Reservation Fleet.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationFleetState state; /**

The tags assigned to the Capacity Reservation Fleet.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

Indicates the tenancy of Capacity Reservation Fleet.

*/ @property (nonatomic, assign) AWSEC2FleetCapacityReservationTenancy tenancy; /**

The requested capacity units that have been successfully reserved.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalFulfilledCapacity; /**

The total number of capacity units for which the Capacity Reservation Fleet reserves capacity.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalTargetCapacity; @end /** */ @interface AWSEC2CreateCapacityReservationRequest : AWSRequest /**

The Availability Zone in which to create the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The ID of the Availability Zone in which to create the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZoneId; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether the Capacity Reservation supports EBS-optimized instances. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS- optimized instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. The Capacity Reservation's state changes to expired when it reaches its end date and time.

You must provide an EndDate value if EndDateType is limited. Omit EndDate if EndDateType is unlimited.

If the EndDateType is limited, the Capacity Reservation is cancelled within an hour from the specified time. For example, if you specify 5/31/2019, 13:30:55, the Capacity Reservation is guaranteed to end between 13:30:55 and 14:30:55 on 5/31/2019.

*/ @property (nonatomic, strong) NSDate * _Nullable endDate; /**

Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end types:

  • unlimited - The Capacity Reservation remains active until you explicitly cancel it. Do not provide an EndDate if the EndDateType is unlimited.

  • limited - The Capacity Reservation expires automatically at a specified date and time. You must provide an EndDate value if the EndDateType value is limited.

*/ @property (nonatomic, assign) AWSEC2EndDateType endDateType; /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable ephemeralStorage; /**

The number of instances for which to reserve capacity.

Valid range: 1 - 1000

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

Indicates the type of instance launches that the Capacity Reservation accepts. The options include:

  • open - The Capacity Reservation automatically matches all instances that have matching attributes (instance type, platform, and Availability Zone). Instances that have matching attributes run in the Capacity Reservation automatically without specifying any additional parameters.

  • targeted - The Capacity Reservation only accepts instances that have matching attributes (instance type, platform, and Availability Zone), and explicitly target the Capacity Reservation. This ensures that only permitted instances can use the reserved capacity.

Default: open

*/ @property (nonatomic, assign) AWSEC2InstanceMatchCriteria instanceMatchCriteria; /**

The type of operating system for which to reserve capacity.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationInstancePlatform instancePlatform; /**

The instance type for which to reserve capacity. For more information, see Instance types in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; /**

The Amazon Resource Name (ARN) of the Outpost on which to create the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The Amazon Resource Name (ARN) of the cluster placement group in which to create the Capacity Reservation. For more information, see Capacity Reservations for cluster placement groups in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable placementGroupArn; /**

The tags to apply to the Capacity Reservation during launch.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can have one of the following tenancy settings:

  • default - The Capacity Reservation is created on hardware that is shared with other Amazon Web Services accounts.

  • dedicated - The Capacity Reservation is created on single-tenant hardware that is dedicated to a single Amazon Web Services account.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationTenancy tenancy; @end /** */ @interface AWSEC2CreateCapacityReservationResult : AWSModel /**

Information about the Capacity Reservation.

*/ @property (nonatomic, strong) AWSEC2CapacityReservation * _Nullable capacityReservation; @end /** */ @interface AWSEC2CreateCarrierGatewayRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tags to associate with the carrier gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the VPC to associate with the carrier gateway.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2CreateCarrierGatewayResult : AWSModel /**

Information about the carrier gateway.

*/ @property (nonatomic, strong) AWSEC2CarrierGateway * _Nullable carrierGateway; @end /** */ @interface AWSEC2CreateClientVpnEndpointRequest : AWSRequest /**

Information about the authentication method to be used to authenticate clients.

*/ @property (nonatomic, strong) NSArray * _Nullable authenticationOptions; /**

The IPv4 address range, in CIDR notation, from which to assign client IP addresses. The address range cannot overlap with the local CIDR of the VPC in which the associated subnet is located, or the routes that you add manually. The address range cannot be changed after the Client VPN endpoint has been created. Client CIDR range must have a size of at least /22 and must not be greater than /12.

*/ @property (nonatomic, strong) NSString * _Nullable clientCidrBlock; /**

The options for managing connection authorization for new client connections.

*/ @property (nonatomic, strong) AWSEC2ClientConnectOptions * _Nullable clientConnectOptions; /**

Options for enabling a customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

*/ @property (nonatomic, strong) AWSEC2ClientLoginBannerOptions * _Nullable clientLoginBannerOptions; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the client connection logging options.

If you enable client connection logging, data about client connections is sent to a Cloudwatch Logs log stream. The following information is logged:

  • Client connection requests

  • Client connection results (successful and unsuccessful)

  • Reasons for unsuccessful client connection requests

  • Client connection termination time

*/ @property (nonatomic, strong) AWSEC2ConnectionLogOptions * _Nullable connectionLogOptions; /**

A brief description of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can have up to two DNS servers. If no DNS server is specified, the DNS address configured on the device is used for the DNS server.

*/ @property (nonatomic, strong) NSArray * _Nullable dnsServers; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

Specify whether to enable the self-service portal for the Client VPN endpoint.

Default Value: enabled

*/ @property (nonatomic, assign) AWSEC2SelfServicePortal selfServicePortal; /**

The ARN of the server certificate. For more information, see the Certificate Manager User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable serverCertificateArn; /**

The maximum VPN session duration time in hours.

Valid values: 8 | 10 | 12 | 24

Default value: 24

*/ @property (nonatomic, strong) NSNumber * _Nullable sessionTimeoutHours; /**

Indicates whether split-tunnel is enabled on the Client VPN endpoint.

By default, split-tunnel on a VPN endpoint is disabled.

For information about split-tunnel VPN endpoints, see Split-tunnel Client VPN endpoint in the Client VPN Administrator Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable splitTunnel; /**

The tags to apply to the Client VPN endpoint during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The transport protocol to be used by the VPN session.

Default value: udp

*/ @property (nonatomic, assign) AWSEC2TransportProtocol transportProtocol; /**

The ID of the VPC to associate with the Client VPN endpoint. If no security group IDs are specified in the request, the default security group for the VPC is applied.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; /**

The port number to assign to the Client VPN endpoint for TCP and UDP traffic.

Valid Values: 443 | 1194

Default Value: 443

*/ @property (nonatomic, strong) NSNumber * _Nullable vpnPort; @end /** */ @interface AWSEC2CreateClientVpnEndpointResult : AWSModel /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

The DNS name to be used by clients when establishing their VPN session.

*/ @property (nonatomic, strong) NSString * _Nullable dnsName; /**

The current state of the Client VPN endpoint.

*/ @property (nonatomic, strong) AWSEC2ClientVpnEndpointStatus * _Nullable status; @end /** */ @interface AWSEC2CreateClientVpnRouteRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The ID of the Client VPN endpoint to which to add the route.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

A brief description of the route.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The IPv4 address range, in CIDR notation, of the route destination. For example:

  • To add a route for Internet access, enter 0.0.0.0/0

  • To add a route for a peered VPC, enter the peered VPC's IPv4 CIDR range

  • To add a route for an on-premises network, enter the Amazon Web Services Site-to-Site VPN connection's IPv4 CIDR range

  • To add a route for the local network, enter the client CIDR range

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the subnet through which you want to route traffic. The specified subnet must be an existing target network of the Client VPN endpoint.

Alternatively, if you're adding a route for the local network, specify local.

*/ @property (nonatomic, strong) NSString * _Nullable targetVpcSubnetId; @end /** */ @interface AWSEC2CreateClientVpnRouteResult : AWSModel /**

The current state of the route.

*/ @property (nonatomic, strong) AWSEC2ClientVpnRouteStatus * _Nullable status; @end /** */ @interface AWSEC2CreateCoipCidrRequest : AWSRequest /**

A customer-owned IP address range to create.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

The ID of the address pool.

*/ @property (nonatomic, strong) NSString * _Nullable coipPoolId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2CreateCoipCidrResult : AWSModel /**

Information about a range of customer-owned IP addresses.

*/ @property (nonatomic, strong) AWSEC2CoipCidr * _Nullable coipCidr; @end /** */ @interface AWSEC2CreateCoipPoolRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; /**

The tags to assign to the CoIP address pool.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateCoipPoolResult : AWSModel /**

Information about the CoIP address pool.

*/ @property (nonatomic, strong) AWSEC2CoipPool * _Nullable coipPool; @end /**

Contains the parameters for CreateCustomerGateway.

Required parameters: [Type] */ @interface AWSEC2CreateCustomerGatewayRequest : AWSRequest /**

For devices that support BGP, the customer gateway's BGP ASN.

Default: 65000

*/ @property (nonatomic, strong) NSNumber * _Nullable bgpAsn; /**

The Amazon Resource Name (ARN) for the customer gateway certificate.

*/ @property (nonatomic, strong) NSString * _Nullable certificateArn; /**

A name for the customer gateway device.

Length Constraints: Up to 255 characters.

*/ @property (nonatomic, strong) NSString * _Nullable deviceName; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

IPv4 address for the customer gateway device's outside interface. The address must be static.

*/ @property (nonatomic, strong) NSString * _Nullable ipAddress; /**

This member has been deprecated. The Internet-routable IP address for the customer gateway's outside interface. The address must be static.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; /**

The tags to apply to the customer gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The type of VPN connection that this customer gateway supports (ipsec.1).

*/ @property (nonatomic, assign) AWSEC2GatewayType types; @end /**

Contains the output of CreateCustomerGateway.

*/ @interface AWSEC2CreateCustomerGatewayResult : AWSModel /**

Information about the customer gateway.

*/ @property (nonatomic, strong) AWSEC2CustomerGateway * _Nullable customerGateway; @end /** */ @interface AWSEC2CreateDefaultSubnetRequest : AWSRequest /**

The Availability Zone in which to create the default subnet.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether to create an IPv6 only subnet. If you already have a default subnet for this Availability Zone, you must delete it before you can create an IPv6 only subnet.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6Native; @end /** */ @interface AWSEC2CreateDefaultSubnetResult : AWSModel /**

Information about the subnet.

*/ @property (nonatomic, strong) AWSEC2Subnet * _Nullable subnet; @end /** */ @interface AWSEC2CreateDefaultVpcRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2CreateDefaultVpcResult : AWSModel /**

Information about the VPC.

*/ @property (nonatomic, strong) AWSEC2Vpc * _Nullable vpc; @end /** */ @interface AWSEC2CreateDhcpOptionsRequest : AWSRequest /**

A DHCP configuration option.

*/ @property (nonatomic, strong) NSArray * _Nullable dhcpConfigurations; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tags to assign to the DHCP option.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateDhcpOptionsResult : AWSModel /**

A set of DHCP options.

*/ @property (nonatomic, strong) AWSEC2DhcpOptions * _Nullable dhcpOptions; @end /** */ @interface AWSEC2CreateEgressOnlyInternetGatewayRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tags to assign to the egress-only internet gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the VPC for which to create the egress-only internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2CreateEgressOnlyInternetGatewayResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the egress-only internet gateway.

*/ @property (nonatomic, strong) AWSEC2EgressOnlyInternetGateway * _Nullable egressOnlyInternetGateway; @end /**

Describes the instances that could not be launched by the fleet.

*/ @interface AWSEC2CreateFleetError : AWSModel /**

The error code that indicates why the instance could not be launched. For more information about error codes, see Error codes.

*/ @property (nonatomic, strong) NSString * _Nullable errorCode; /**

The error message that describes why the instance could not be launched. For more information about error messages, see Error codes.

*/ @property (nonatomic, strong) NSString * _Nullable errorMessage; /**

The launch templates and overrides that were used for launching the instances. The values that you specify in the Overrides replace the values in the launch template.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateAndOverridesResponse * _Nullable launchTemplateAndOverrides; /**

Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.

*/ @property (nonatomic, assign) AWSEC2InstanceLifecycle lifecycle; @end /**

Describes the instances that were launched by the fleet.

*/ @interface AWSEC2CreateFleetInstance : AWSModel /**

The IDs of the instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; /**

The instance type.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The launch templates and overrides that were used for launching the instances. The values that you specify in the Overrides replace the values in the launch template.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateAndOverridesResponse * _Nullable launchTemplateAndOverrides; /**

Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.

*/ @property (nonatomic, assign) AWSEC2InstanceLifecycle lifecycle; /**

The value is Windows for Windows instances. Otherwise, the value is blank.

*/ @property (nonatomic, assign) AWSEC2PlatformValues platform; @end /** */ @interface AWSEC2CreateFleetRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Reserved.

*/ @property (nonatomic, strong) NSString * _Nullable context; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether running instances should be terminated if the total target capacity of the EC2 Fleet is decreased below the current size of the EC2 Fleet.

Supported only for fleets of type maintain.

*/ @property (nonatomic, assign) AWSEC2FleetExcessCapacityTerminationPolicy excessCapacityTerminationPolicy; /**

The configuration for the EC2 Fleet.

*/ @property (nonatomic, strong) NSArray * _Nullable launchTemplateConfigs; /**

Describes the configuration of On-Demand Instances in an EC2 Fleet.

*/ @property (nonatomic, strong) AWSEC2OnDemandOptionsRequest * _Nullable onDemandOptions; /**

Indicates whether EC2 Fleet should replace unhealthy Spot Instances. Supported only for fleets of type maintain. For more information, see EC2 Fleet health checks in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable replaceUnhealthyInstances; /**

Describes the configuration of Spot Instances in an EC2 Fleet.

*/ @property (nonatomic, strong) AWSEC2SpotOptionsRequest * _Nullable spotOptions; /**

The key-value pair for tagging the EC2 Fleet request on creation. For more information, see Tagging your resources.

If the fleet type is instant, specify a resource type of fleet to tag the fleet or instance to tag the instances at launch.

If the fleet type is maintain or request, specify a resource type of fleet to tag the fleet. You cannot specify a resource type of instance. To tag instances at launch, specify the tags in a launch template.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The number of units to request.

*/ @property (nonatomic, strong) AWSEC2TargetCapacitySpecificationRequest * _Nullable targetCapacitySpecification; /**

Indicates whether running instances should be terminated when the EC2 Fleet expires.

*/ @property (nonatomic, strong) NSNumber * _Nullable terminateInstancesWithExpiration; /**

The fleet type. The default value is maintain.

  • maintain - The EC2 Fleet places an asynchronous request for your desired capacity, and continues to maintain your desired Spot capacity by replenishing interrupted Spot Instances.

  • request - The EC2 Fleet places an asynchronous one-time request for your desired capacity, but does submit Spot requests in alternative capacity pools if Spot capacity is unavailable, and does not maintain Spot capacity if Spot Instances are interrupted.

  • instant - The EC2 Fleet places a synchronous one-time request for your desired capacity, and returns errors for any instances that could not be launched.

For more information, see EC2 Fleet request types in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2FleetType types; /**

The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

*/ @property (nonatomic, strong) NSDate * _Nullable validFrom; /**

The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new EC2 Fleet requests are placed or able to fulfill the request. If no value is specified, the request remains until you cancel it.

*/ @property (nonatomic, strong) NSDate * _Nullable validUntil; @end /** */ @interface AWSEC2CreateFleetResult : AWSModel /**

Information about the instances that could not be launched by the fleet. Supported only for fleets of type instant.

*/ @property (nonatomic, strong) NSArray * _Nullable errors; /**

The ID of the EC2 Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable fleetId; /**

Information about the instances that were launched by the fleet. Supported only for fleets of type instant.

*/ @property (nonatomic, strong) NSArray * _Nullable instances; @end /** */ @interface AWSEC2CreateFlowLogsRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The ARN of the IAM role that allows Amazon EC2 to publish flow logs across accounts.

*/ @property (nonatomic, strong) NSString * _Nullable deliverCrossAccountRole; /**

The ARN of the IAM role that allows Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account.

This parameter is required if the destination type is cloud-watch-logs and unsupported otherwise.

*/ @property (nonatomic, strong) NSString * _Nullable deliverLogsPermissionArn; /**

The destination options.

*/ @property (nonatomic, strong) AWSEC2DestinationOptionsRequest * _Nullable destinationOptions; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The destination for the flow log data. The meaning of this parameter depends on the destination type.

  • If the destination type is cloud-watch-logs, specify the ARN of a CloudWatch Logs log group. For example:

    arn:aws:logs:region:account_id:log-group:my_group

    Alternatively, use the LogGroupName parameter.

  • If the destination type is s3, specify the ARN of an S3 bucket. For example:

    arn:aws:s3:::my_bucket/my_subfolder/

    The subfolder is optional. Note that you can't use AWSLogs as a subfolder name.

  • If the destination type is kinesis-data-firehose, specify the ARN of a Kinesis Data Firehose delivery stream. For example:

    arn:aws:firehose:region:account_id:deliverystream:my_stream

*/ @property (nonatomic, strong) NSString * _Nullable logDestination; /**

The type of destination for the flow log data.

Default: cloud-watch-logs

*/ @property (nonatomic, assign) AWSEC2LogDestinationType logDestinationType; /**

The fields to include in the flow log record. List the fields in the order in which they should appear. If you omit this parameter, the flow log is created using the default format. If you specify this parameter, you must include at least one field. For more information about the available fields, see Flow log records in the Amazon VPC User Guide or Transit Gateway Flow Log records in the Amazon Web Services Transit Gateway Guide.

Specify the fields using the ${field-id} format, separated by spaces. For the CLI, surround this parameter value with single quotes on Linux or double quotes on Windows.

*/ @property (nonatomic, strong) NSString * _Nullable logFormat; /**

The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs.

This parameter is valid only if the destination type is cloud-watch-logs.

*/ @property (nonatomic, strong) NSString * _Nullable logGroupName; /**

The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. The possible values are 60 seconds (1 minute) or 600 seconds (10 minutes). This parameter must be 60 seconds for transit gateway resource types.

When a network interface is attached to a Nitro-based instance, the aggregation interval is always 60 seconds or less, regardless of the value that you specify.

Default: 600

*/ @property (nonatomic, strong) NSNumber * _Nullable maxAggregationInterval; /**

The IDs of the resources to monitor. For example, if the resource type is VPC, specify the IDs of the VPCs.

Constraints: Maximum of 25 for transit gateway resource types. Maximum of 1000 for the other resource types.

*/ @property (nonatomic, strong) NSArray * _Nullable resourceIds; /**

The type of resource to monitor.

*/ @property (nonatomic, assign) AWSEC2FlowLogsResourceType resourceType; /**

The tags to apply to the flow logs.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The type of traffic to monitor (accepted traffic, rejected traffic, or all traffic). This parameter is not supported for transit gateway resource types. It is required for the other resource types.

*/ @property (nonatomic, assign) AWSEC2TrafficType trafficType; @end /** */ @interface AWSEC2CreateFlowLogsResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The IDs of the flow logs.

*/ @property (nonatomic, strong) NSArray * _Nullable flowLogIds; /**

Information about the flow logs that could not be created successfully.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessful; @end /** */ @interface AWSEC2CreateFpgaImageRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The location of the encrypted design checkpoint in Amazon S3. The input must be a tarball.

*/ @property (nonatomic, strong) AWSEC2StorageLocation * _Nullable inputStorageLocation; /**

The location in Amazon S3 for the output logs.

*/ @property (nonatomic, strong) AWSEC2StorageLocation * _Nullable logsStorageLocation; /**

A name for the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The tags to apply to the FPGA image during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateFpgaImageResult : AWSModel /**

The global FPGA image identifier (AGFI ID).

*/ @property (nonatomic, strong) NSString * _Nullable fpgaImageGlobalId; /**

The FPGA image identifier (AFI ID).

*/ @property (nonatomic, strong) NSString * _Nullable fpgaImageId; @end /** */ @interface AWSEC2CreateImageRequest : AWSRequest /**

The block device mappings. This parameter cannot be used to modify the encryption status of existing volumes or snapshots. To create an AMI with encrypted snapshots, use the CopyImage action.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

A description for the new image.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

A name for the new image.

Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

Indicates whether or not the instance should be automatically rebooted before creating the image. Specify one of the following values:

  • true - The instance is not rebooted before creating the image. This creates crash-consistent snapshots that include only the data that has been written to the volumes at the time the snapshots are created. Buffered data and data in memory that has not yet been written to the volumes is not included in the snapshots.

  • false - The instance is rebooted before creating the image. This ensures that all buffered data and data in memory is written to the volumes before the snapshots are created.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable noReboot; /**

The tags to apply to the AMI and snapshots on creation. You can tag the AMI, the snapshots, or both.

  • To tag the AMI, the value for ResourceType must be image.

  • To tag the snapshots that are created of the root volume and of other Amazon EBS volumes that are attached to the instance, the value for ResourceType must be snapshot. The same tag is applied to all of the snapshots that are created.

If you specify other values for ResourceType, the request fails.

To tag an AMI or snapshot after it has been created, see CreateTags.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateImageResult : AWSModel /**

The ID of the new AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2CreateInstanceConnectEndpointRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether your client's IP address is preserved as the source. The value is true or false.

  • If true, your client's IP address is used when you connect to a resource.

  • If false, the elastic network interface IP address is used when you connect to a resource.

Default: true

*/ @property (nonatomic, strong) NSNumber * _Nullable preserveClientIp; /**

One or more security groups to associate with the endpoint. If you don't specify a security group, the default security group for your VPC will be associated with the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

The ID of the subnet in which to create the EC2 Instance Connect Endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The tags to apply to the EC2 Instance Connect Endpoint during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateInstanceConnectEndpointResult : AWSModel /**

Unique, case-sensitive idempotency token provided by the client in the the request.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the EC2 Instance Connect Endpoint.

*/ @property (nonatomic, strong) AWSEC2Ec2InstanceConnectEndpoint * _Nullable instanceConnectEndpoint; @end /** */ @interface AWSEC2CreateInstanceEventWindowRequest : AWSRequest /**

The cron expression for the event window, for example, * 0-4,20-23 * * 1,5. If you specify a cron expression, you can't specify a time range.

Constraints:

  • Only hour and day of the week values are supported.

  • For day of the week values, you can specify either integers 0 through 6, or alternative single values SUN through SAT.

  • The minute, month, and year must be specified by *.

  • The hour value must be one or a multiple range, for example, 0-4 or 0-4,20-23.

  • Each hour range must be >= 2 hours, for example, 0-2 or 20-23.

  • The event window must be >= 4 hours. The combined total time ranges in the event window must be >= 4 hours.

For more information about cron expressions, see cron on the Wikipedia website.

*/ @property (nonatomic, strong) NSString * _Nullable cronExpression; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The name of the event window.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The tags to apply to the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The time range for the event window. If you specify a time range, you can't specify a cron expression.

*/ @property (nonatomic, strong) NSArray * _Nullable timeRanges; @end /** */ @interface AWSEC2CreateInstanceEventWindowResult : AWSModel /**

Information about the event window.

*/ @property (nonatomic, strong) AWSEC2InstanceEventWindow * _Nullable instanceEventWindow; @end /** */ @interface AWSEC2CreateInstanceExportTaskRequest : AWSRequest /**

A description for the conversion task or the resource being exported. The maximum length is 255 characters.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The format and location for an export instance task.

*/ @property (nonatomic, strong) AWSEC2ExportToS3TaskSpecification * _Nullable exportToS3Task; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The tags to apply to the export instance task during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The target virtualization environment.

*/ @property (nonatomic, assign) AWSEC2ExportEnvironment targetEnvironment; @end /** */ @interface AWSEC2CreateInstanceExportTaskResult : AWSModel /**

Information about the export instance task.

*/ @property (nonatomic, strong) AWSEC2ExportTask * _Nullable exportTask; @end /** */ @interface AWSEC2CreateInternetGatewayRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tags to assign to the internet gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateInternetGatewayResult : AWSModel /**

Information about the internet gateway.

*/ @property (nonatomic, strong) AWSEC2InternetGateway * _Nullable internetGateway; @end /** */ @interface AWSEC2CreateIpamPoolRequest : AWSRequest /**

The IP protocol assigned to this IPAM pool. You must choose either IPv4 or IPv6 protocol for a pool.

*/ @property (nonatomic, assign) AWSEC2AddressFamily addressFamily; /**

The default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is 10.0.0.0/8 and you enter 16 here, new allocations will default to 10.0.0.0/16.

*/ @property (nonatomic, strong) NSNumber * _Nullable allocationDefaultNetmaskLength; /**

The maximum netmask length possible for CIDR allocations in this IPAM pool to be compliant. The maximum netmask length must be greater than the minimum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

*/ @property (nonatomic, strong) NSNumber * _Nullable allocationMaxNetmaskLength; /**

The minimum netmask length required for CIDR allocations in this IPAM pool to be compliant. The minimum netmask length must be less than the maximum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

*/ @property (nonatomic, strong) NSNumber * _Nullable allocationMinNetmaskLength; /**

Tags that are required for resources that use CIDRs from this IPAM pool. Resources that do not have these tags will not be allowed to allocate space from the pool. If the resources have their tags changed after they have allocated space or if the allocation tagging requirements are changed on the pool, the resource may be marked as noncompliant.

*/ @property (nonatomic, strong) NSArray * _Nullable allocationResourceTags; /**

If selected, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM. The CIDRs that will be allocated for these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.

A locale must be set on the pool for this feature to work.

*/ @property (nonatomic, strong) NSNumber * _Nullable autoImport; /**

Limits which service in Amazon Web Services that the pool can be used in. "ec2", for example, allows users to use space for Elastic IP addresses and VPCs.

*/ @property (nonatomic, assign) AWSEC2IpamPoolAwsService awsService; /**

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the IPAM pool.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the scope in which you would like to create the IPAM pool.

*/ @property (nonatomic, strong) NSString * _Nullable ipamScopeId; /**

In IPAM, the locale is the Amazon Web Services Region where you want to make an IPAM pool available for allocations. Only resources in the same Region as the locale of the pool can get IP address allocations from the pool. You can only allocate a CIDR for a VPC, for example, from an IPAM pool that shares a locale with the VPC’s Region. Note that once you choose a Locale for a pool, you cannot modify it. If you do not choose a locale, resources in Regions others than the IPAM's home region cannot use CIDRs from this pool.

Possible values: Any Amazon Web Services Region, such as us-east-1.

*/ @property (nonatomic, strong) NSString * _Nullable locale; /**

The IP address source for pools in the public scope. Only used for provisioning IP address CIDRs to pools in the public scope. Default is byoip. For more information, see Create IPv6 pools in the Amazon VPC IPAM User Guide. By default, you can add only one Amazon-provided IPv6 CIDR block to a top-level IPv6 pool if PublicIpSource is amazon. For information on increasing the default limit, see Quotas for your IPAM in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, assign) AWSEC2IpamPoolPublicIpSource publicIpSource; /**

Determines if the pool is publicly advertisable. This option is not available for pools with AddressFamily set to ipv4.

*/ @property (nonatomic, strong) NSNumber * _Nullable publiclyAdvertisable; /**

The ID of the source IPAM pool. Use this option to create a pool within an existing pool. Note that the CIDR you provision for the pool within the source pool must be available in the source pool's CIDR range.

*/ @property (nonatomic, strong) NSString * _Nullable sourceIpamPoolId; /**

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateIpamPoolResult : AWSModel /**

Information about the IPAM pool created.

*/ @property (nonatomic, strong) AWSEC2IpamPool * _Nullable ipamPool; @end /** */ @interface AWSEC2CreateIpamRequest : AWSRequest /**

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the IPAM.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The operating Regions for the IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable operatingRegions; /**

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateIpamResourceDiscoveryRequest : AWSRequest /**

A client token for the IPAM resource discovery.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the IPAM resource discovery.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Operating Regions for the IPAM resource discovery. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

*/ @property (nonatomic, strong) NSArray * _Nullable operatingRegions; /**

Tag specifications for the IPAM resource discovery.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateIpamResourceDiscoveryResult : AWSModel /**

An IPAM resource discovery.

*/ @property (nonatomic, strong) AWSEC2IpamResourceDiscovery * _Nullable ipamResourceDiscovery; @end /** */ @interface AWSEC2CreateIpamResult : AWSModel /**

Information about the IPAM created.

*/ @property (nonatomic, strong) AWSEC2Ipam * _Nullable ipam; @end /** */ @interface AWSEC2CreateIpamScopeRequest : AWSRequest /**

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the scope you're creating.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the IPAM for which you're creating this scope.

*/ @property (nonatomic, strong) NSString * _Nullable ipamId; /**

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateIpamScopeResult : AWSModel /**

Information about the created scope.

*/ @property (nonatomic, strong) AWSEC2IpamScope * _Nullable ipamScope; @end /** */ @interface AWSEC2CreateKeyPairRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The format of the key pair.

Default: pem

*/ @property (nonatomic, assign) AWSEC2KeyFormat keyFormat; /**

A unique name for the key pair.

Constraints: Up to 255 ASCII characters

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

The type of key pair. Note that ED25519 keys are not supported for Windows instances.

Default: rsa

*/ @property (nonatomic, assign) AWSEC2KeyType keyType; /**

The tags to apply to the new key pair.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateLaunchTemplateRequest : AWSRequest /**

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

Constraint: Maximum 128 ASCII characters.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The information for the launch template.

*/ @property (nonatomic, strong) AWSEC2RequestLaunchTemplateData * _Nullable launchTemplateData; /**

A name for the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

The tags to apply to the launch template on creation. To tag the launch template, the resource type must be launch-template.

To specify the tags for the resources that are created when an instance is launched, you must use the TagSpecifications parameter in the launch template data structure.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

A description for the first version of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable versionDescription; @end /** */ @interface AWSEC2CreateLaunchTemplateResult : AWSModel /**

Information about the launch template.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplate * _Nullable launchTemplate; /**

If the launch template contains parameters or parameter combinations that are not valid, an error code and an error message are returned for each issue that's found.

*/ @property (nonatomic, strong) AWSEC2ValidationWarning * _Nullable warning; @end /** */ @interface AWSEC2CreateLaunchTemplateVersionRequest : AWSRequest /**

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

Constraint: Maximum 128 ASCII characters.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The information for the launch template.

*/ @property (nonatomic, strong) AWSEC2RequestLaunchTemplateData * _Nullable launchTemplateData; /**

The ID of the launch template.

You must specify either the LaunchTemplateId or the LaunchTemplateName, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

You must specify the LaunchTemplateName or the LaunchTemplateId, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

If true, and if a Systems Manager parameter is specified for ImageId, the AMI ID is displayed in the response for imageID. For more information, see Use a Systems Manager parameter instead of an AMI ID in the Amazon Elastic Compute Cloud User Guide.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable resolveAlias; /**

The version number of the launch template version on which to base the new version. The new version inherits the same launch parameters as the source version, except for parameters that you specify in LaunchTemplateData. Snapshots applied to the block device mapping are ignored when creating a new version unless they are explicitly included.

*/ @property (nonatomic, strong) NSString * _Nullable sourceVersion; /**

A description for the version of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable versionDescription; @end /** */ @interface AWSEC2CreateLaunchTemplateVersionResult : AWSModel /**

Information about the launch template version.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateVersion * _Nullable launchTemplateVersion; /**

If the new version of the launch template contains parameters or parameter combinations that are not valid, an error code and an error message are returned for each issue that's found.

*/ @property (nonatomic, strong) AWSEC2ValidationWarning * _Nullable warning; @end /** */ @interface AWSEC2CreateLocalGatewayRouteRequest : AWSRequest /**

The CIDR range used for destination matches. Routing decisions are based on the most specific match.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The ID of the prefix list. Use a prefix list in place of DestinationCidrBlock. You cannot use DestinationPrefixListId and DestinationCidrBlock in the same request.

*/ @property (nonatomic, strong) NSString * _Nullable destinationPrefixListId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; /**

The ID of the virtual interface group.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayVirtualInterfaceGroupId; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; @end /** */ @interface AWSEC2CreateLocalGatewayRouteResult : AWSModel /**

Information about the route.

*/ @property (nonatomic, strong) AWSEC2LocalGatewayRoute * _Nullable route; @end /** */ @interface AWSEC2CreateLocalGatewayRouteTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayId; /**

The mode of the local gateway route table.

*/ @property (nonatomic, assign) AWSEC2LocalGatewayRouteTableMode mode; /**

The tags assigned to the local gateway route table.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateLocalGatewayRouteTableResult : AWSModel /**

Information about the local gateway route table.

*/ @property (nonatomic, strong) AWSEC2LocalGatewayRouteTable * _Nullable localGatewayRouteTable; @end /** */ @interface AWSEC2CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; /**

The ID of the local gateway route table virtual interface group association.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayVirtualInterfaceGroupId; /**

The tags assigned to the local gateway route table virtual interface group association.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult : AWSModel /**

Information about the local gateway route table virtual interface group association.

*/ @property (nonatomic, strong) AWSEC2LocalGatewayRouteTableVirtualInterfaceGroupAssociation * _Nullable localGatewayRouteTableVirtualInterfaceGroupAssociation; @end /** */ @interface AWSEC2CreateLocalGatewayRouteTableVpcAssociationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; /**

The tags to assign to the local gateway route table VPC association.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2CreateLocalGatewayRouteTableVpcAssociationResult : AWSModel /**

Information about the association.

*/ @property (nonatomic, strong) AWSEC2LocalGatewayRouteTableVpcAssociation * _Nullable localGatewayRouteTableVpcAssociation; @end /** */ @interface AWSEC2CreateManagedPrefixListRequest : AWSRequest /**

The IP address type.

Valid Values: IPv4 | IPv6

*/ @property (nonatomic, strong) NSString * _Nullable addressFamily; /**

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

Constraints: Up to 255 UTF-8 characters in length.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more entries for the prefix list.

*/ @property (nonatomic, strong) NSArray * _Nullable entries; /**

The maximum number of entries for the prefix list.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxEntries; /**

A name for the prefix list.

Constraints: Up to 255 characters in length. The name cannot start with com.amazonaws.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListName; /**

The tags to apply to the prefix list during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateManagedPrefixListResult : AWSModel /**

Information about the prefix list.

*/ @property (nonatomic, strong) AWSEC2ManagedPrefixList * _Nullable prefixList; @end /** */ @interface AWSEC2CreateNatGatewayRequest : AWSRequest /**

[Public NAT gateways only] The allocation ID of an Elastic IP address to associate with the NAT gateway. You cannot specify an Elastic IP address with a private NAT gateway. If the Elastic IP address is associated with another resource, you must first disassociate it.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

Constraint: Maximum 64 ASCII characters.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Indicates whether the NAT gateway supports public or private connectivity. The default is public connectivity.

*/ @property (nonatomic, assign) AWSEC2ConnectivityType connectivityType; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The private IPv4 address to assign to the NAT gateway. If you don't provide an address, a private IPv4 address will be automatically assigned.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

Secondary EIP allocation IDs. For more information, see Create a NAT gateway in the Amazon VPC User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable secondaryAllocationIds; /**

[Private NAT gateway only] The number of secondary private IPv4 addresses you want to assign to the NAT gateway. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable secondaryPrivateIpAddressCount; /**

Secondary private IPv4 addresses. For more information about secondary addresses, see Create a NAT gateway in the Amazon VPC User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable secondaryPrivateIpAddresses; /**

The ID of the subnet in which to create the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The tags to assign to the NAT gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateNatGatewayResult : AWSModel /**

Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the NAT gateway.

*/ @property (nonatomic, strong) AWSEC2NatGateway * _Nullable natGateway; @end /** */ @interface AWSEC2CreateNetworkAclEntryRequest : AWSRequest /**

The IPv4 network range to allow or deny, in CIDR notation (for example 172.16.0.0/24). We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

*/ @property (nonatomic, strong) NSString * _Nullable cidrBlock; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).

*/ @property (nonatomic, strong) NSNumber * _Nullable egress; /**

ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.

*/ @property (nonatomic, strong) AWSEC2IcmpTypeCode * _Nullable icmpTypeCode; /**

The IPv6 network range to allow or deny, in CIDR notation (for example 2001:db8:1234:1a00::/64).

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlock; /**

The ID of the network ACL.

*/ @property (nonatomic, strong) NSString * _Nullable networkAclId; /**

TCP or UDP protocols: The range of ports the rule applies to. Required if specifying protocol 6 (TCP) or 17 (UDP).

*/ @property (nonatomic, strong) AWSEC2PortRange * _Nullable portRange; /**

The protocol number. A value of "-1" means all protocols. If you specify "-1" or a protocol number other than "6" (TCP), "17" (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless of any ports or ICMP types or codes that you specify. If you specify protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP types and codes allowed, regardless of any that you specify. If you specify protocol "58" (ICMPv6) and specify an IPv6 CIDR block, you must specify an ICMP type and code.

*/ @property (nonatomic, strong) NSString * _Nullable protocols; /**

Indicates whether to allow or deny the traffic that matches the rule.

*/ @property (nonatomic, assign) AWSEC2RuleAction ruleAction; /**

The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number.

Constraints: Positive integer from 1 to 32766. The range 32767 to 65535 is reserved for internal use.

*/ @property (nonatomic, strong) NSNumber * _Nullable ruleNumber; @end /** */ @interface AWSEC2CreateNetworkAclRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tags to assign to the network ACL.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2CreateNetworkAclResult : AWSModel /**

Information about the network ACL.

*/ @property (nonatomic, strong) AWSEC2NetworkAcl * _Nullable networkAcl; @end /** */ @interface AWSEC2CreateNetworkInsightsAccessScopeRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The paths to exclude.

*/ @property (nonatomic, strong) NSArray * _Nullable excludePaths; /**

The paths to match.

*/ @property (nonatomic, strong) NSArray * _Nullable matchPaths; /**

The tags to apply.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateNetworkInsightsAccessScopeResult : AWSModel /**

The Network Access Scope.

*/ @property (nonatomic, strong) AWSEC2NetworkInsightsAccessScope * _Nullable networkInsightsAccessScope; /**

The Network Access Scope content.

*/ @property (nonatomic, strong) AWSEC2NetworkInsightsAccessScopeContent * _Nullable networkInsightsAccessScopeContent; @end /** */ @interface AWSEC2CreateNetworkInsightsPathRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The ID or ARN of the destination. If the resource is in another account, you must specify an ARN.

*/ @property (nonatomic, strong) NSString * _Nullable destination; /**

The IP address of the destination.

*/ @property (nonatomic, strong) NSString * _Nullable destinationIp; /**

The destination port.

*/ @property (nonatomic, strong) NSNumber * _Nullable destinationPort; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Scopes the analysis to network paths that match specific filters at the destination. If you specify this parameter, you can't specify the parameter for the destination IP address.

*/ @property (nonatomic, strong) AWSEC2PathRequestFilter * _Nullable filterAtDestination; /**

Scopes the analysis to network paths that match specific filters at the source. If you specify this parameter, you can't specify the parameters for the source IP address or the destination port.

*/ @property (nonatomic, strong) AWSEC2PathRequestFilter * _Nullable filterAtSource; /**

The protocol.

*/ @property (nonatomic, assign) AWSEC2Protocols protocols; /**

The ID or ARN of the source. If the resource is in another account, you must specify an ARN.

*/ @property (nonatomic, strong) NSString * _Nullable source; /**

The IP address of the source.

*/ @property (nonatomic, strong) NSString * _Nullable sourceIp; /**

The tags to add to the path.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateNetworkInsightsPathResult : AWSModel /**

Information about the path.

*/ @property (nonatomic, strong) AWSEC2NetworkInsightsPath * _Nullable networkInsightsPath; @end /**

Contains the parameters for CreateNetworkInterfacePermission.

Required parameters: [NetworkInterfaceId, Permission] */ @interface AWSEC2CreateNetworkInterfacePermissionRequest : AWSRequest /**

The Amazon Web Services account ID.

*/ @property (nonatomic, strong) NSString * _Nullable awsAccountId; /**

The Amazon Web Service. Currently not supported.

*/ @property (nonatomic, strong) NSString * _Nullable awsService; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The type of permission to grant.

*/ @property (nonatomic, assign) AWSEC2InterfacePermissionType permission; @end /**

Contains the output of CreateNetworkInterfacePermission.

*/ @interface AWSEC2CreateNetworkInterfacePermissionResult : AWSModel /**

Information about the permission for the network interface.

*/ @property (nonatomic, strong) AWSEC2NetworkInterfacePermission * _Nullable interfacePermission; @end /** */ @interface AWSEC2CreateNetworkInterfaceRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of one or more security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The type of network interface. The default is interface.

The only supported values are interface, efa, and trunk.

*/ @property (nonatomic, assign) AWSEC2NetworkInterfaceCreationType interfaceType; /**

The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface.

You can't specify a count of IPv4 prefixes if you've specified one of the following: specific IPv4 prefixes, specific private IPv4 addresses, or a count of private IPv4 addresses.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv4PrefixCount; /**

The IPv4 prefixes assigned to the network interface.

You can't specify IPv4 prefixes if you've specified one of the following: a count of IPv4 prefixes, specific private IPv4 addresses, or a count of private IPv4 addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv4Prefixes; /**

The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range.

You can't specify a count of IPv6 addresses using this parameter if you've specified one of the following: specific IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes.

If your subnet has the AssignIpv6AddressOnCreation attribute set, you can override that setting by specifying 0 as the IPv6 address count.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6AddressCount; /**

The IPv6 addresses from the IPv6 CIDR block range of your subnet.

You can't specify IPv6 addresses using this parameter if you've specified one of the following: a count of IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Addresses; /**

The number of IPv6 prefixes that Amazon Web Services automatically assigns to the network interface.

You can't specify a count of IPv6 prefixes if you've specified one of the following: specific IPv6 prefixes, specific IPv6 addresses, or a count of IPv6 addresses.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6PrefixCount; /**

The IPv6 prefixes assigned to the network interface.

You can't specify IPv6 prefixes if you've specified one of the following: a count of IPv6 prefixes, specific IPv6 addresses, or a count of IPv6 addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Prefixes; /**

The primary private IPv4 address of the network interface. If you don't specify an IPv4 address, Amazon EC2 selects one for you from the subnet's IPv4 CIDR range. If you specify an IP address, you cannot indicate any IP addresses specified in privateIpAddresses as primary (only one IP address can be designated as primary).

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

The private IPv4 addresses.

You can't specify private IPv4 addresses if you've specified one of the following: a count of private IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddresses; /**

The number of secondary private IPv4 addresses to assign to a network interface. When you specify a number of secondary IPv4 addresses, Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR range. You can't specify this option and specify more than one private IP address using privateIpAddresses.

You can't specify a count of private IPv4 addresses if you've specified one of the following: specific private IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes.

*/ @property (nonatomic, strong) NSNumber * _Nullable secondaryPrivateIpAddressCount; /**

The ID of the subnet to associate with the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The tags to apply to the new network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateNetworkInterfaceResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the network interface.

*/ @property (nonatomic, strong) AWSEC2NetworkInterface * _Nullable networkInterface; @end /** */ @interface AWSEC2CreatePlacementGroupRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

A name for the placement group. Must be unique within the scope of your account for the Region.

Constraints: Up to 255 ASCII characters

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The number of partitions. Valid only when Strategy is set to partition.

*/ @property (nonatomic, strong) NSNumber * _Nullable partitionCount; /**

Determines how placement groups spread instances.

  • Host – You can use host only with Outpost placement groups.

  • Rack – No usage restrictions.

*/ @property (nonatomic, assign) AWSEC2SpreadLevel spreadLevel; /**

The placement strategy.

*/ @property (nonatomic, assign) AWSEC2PlacementStrategy strategy; /**

The tags to apply to the new placement group.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreatePlacementGroupResult : AWSModel /**

Information about the placement group.

*/ @property (nonatomic, strong) AWSEC2PlacementGroup * _Nullable placementGroup; @end /** */ @interface AWSEC2CreatePublicIpv4PoolRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreatePublicIpv4PoolResult : AWSModel /**

The ID of the public IPv4 pool.

*/ @property (nonatomic, strong) NSString * _Nullable poolId; @end /** */ @interface AWSEC2CreateReplaceRootVolumeTaskRequest : AWSRequest /**

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you do not specify a client token, a randomly generated token is used for the request to ensure idempotency. For more information, see Ensuring idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Indicates whether to automatically delete the original root volume after the root volume replacement task completes. To delete the original root volume, specify true. If you choose to keep the original root volume after the replacement task completes, you must manually delete it when you no longer need it.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteReplacedRootVolume; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AMI to use to restore the root volume. The specified AMI must have the same product code, billing information, architecture type, and virtualization type as that of the instance.

If you want to restore the replacement volume from a specific snapshot, or if you want to restore it to its launch state, omit this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The ID of the instance for which to replace the root volume.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The ID of the snapshot from which to restore the replacement root volume. The specified snapshot must be a snapshot that you previously created from the original root volume.

If you want to restore the replacement root volume to the initial launch state, or if you want to restore the replacement root volume from an AMI, omit this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The tags to apply to the root volume replacement task.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateReplaceRootVolumeTaskResult : AWSModel /**

Information about the root volume replacement task.

*/ @property (nonatomic, strong) AWSEC2ReplaceRootVolumeTask * _Nullable replaceRootVolumeTask; @end /**

Contains the parameters for CreateReservedInstancesListing.

Required parameters: [ClientToken, InstanceCount, PriceSchedules, ReservedInstancesId] */ @interface AWSEC2CreateReservedInstancesListingRequest : AWSRequest /**

Unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The number of instances that are a part of a Reserved Instance account to be listed in the Reserved Instance Marketplace. This number should be less than or equal to the instance count associated with the Reserved Instance ID specified in this call.

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

A list specifying the price of the Standard Reserved Instance for each month remaining in the Reserved Instance term.

*/ @property (nonatomic, strong) NSArray * _Nullable priceSchedules; /**

The ID of the active Standard Reserved Instance.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesId; @end /**

Contains the output of CreateReservedInstancesListing.

*/ @interface AWSEC2CreateReservedInstancesListingResult : AWSModel /**

Information about the Standard Reserved Instance listing.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstancesListings; @end /** */ @interface AWSEC2CreateRestoreImageTaskRequest : AWSRequest /**

The name of the Amazon S3 bucket that contains the stored AMI object.

*/ @property (nonatomic, strong) NSString * _Nullable bucket; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The name for the restored AMI. The name must be unique for AMIs in the Region for this account. If you do not provide a name, the new AMI gets the same name as the original AMI.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The name of the stored AMI object in the bucket.

*/ @property (nonatomic, strong) NSString * _Nullable objectKey; /**

The tags to apply to the AMI and snapshots on restoration. You can tag the AMI, the snapshots, or both.

  • To tag the AMI, the value for ResourceType must be image.

  • To tag the snapshots, the value for ResourceType must be snapshot. The same tag is applied to all of the snapshots that are created.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateRestoreImageTaskResult : AWSModel /**

The AMI ID.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2CreateRouteRequest : AWSRequest /**

The ID of the carrier gateway.

You can only use this option when the VPC contains a subnet which is associated with a Wavelength Zone.

*/ @property (nonatomic, strong) NSString * _Nullable carrierGatewayId; /**

The Amazon Resource Name (ARN) of the core network.

*/ @property (nonatomic, strong) NSString * _Nullable coreNetworkArn; /**

The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.

*/ @property (nonatomic, strong) NSString * _Nullable destinationIpv6CidrBlock; /**

The ID of a prefix list used for the destination match.

*/ @property (nonatomic, strong) NSString * _Nullable destinationPrefixListId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

[IPv6 traffic only] The ID of an egress-only internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable egressOnlyInternetGatewayId; /**

The ID of an internet gateway or virtual private gateway attached to your VPC.

*/ @property (nonatomic, strong) NSString * _Nullable gatewayId; /**

The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The ID of the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayId; /**

[IPv4 traffic only] The ID of a NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; /**

The ID of a network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The ID of the route table for the route.

*/ @property (nonatomic, strong) NSString * _Nullable routeTableId; /**

The ID of a transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.

*/ @property (nonatomic, strong) NSString * _Nullable vpcEndpointId; /**

The ID of a VPC peering connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /** */ @interface AWSEC2CreateRouteResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2CreateRouteTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tags to assign to the route table.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2CreateRouteTableResult : AWSModel /**

Information about the route table.

*/ @property (nonatomic, strong) AWSEC2RouteTable * _Nullable routeTable; @end /** */ @interface AWSEC2CreateSecurityGroupRequest : AWSRequest /**

A description for the security group.

Constraints: Up to 255 characters in length

Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The name of the security group.

Constraints: Up to 255 characters in length. Cannot start with sg-.

Valid characters: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The tags to assign to the security group.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the VPC. Required for a nondefault VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2CreateSecurityGroupResult : AWSModel /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The tags assigned to the security group.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /** */ @interface AWSEC2CreateSnapshotRequest : AWSRequest /**

A description for the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Amazon Resource Name (ARN) of the Outpost on which to create a local snapshot.

  • To create a snapshot of a volume in a Region, omit this parameter. The snapshot is created in the same Region as the volume.

  • To create a snapshot of a volume on an Outpost and store the snapshot in the Region, omit this parameter. The snapshot is created in the Region for the Outpost.

  • To create a snapshot of a volume on an Outpost and store the snapshot on an Outpost, specify the ARN of the destination Outpost. The snapshot must be created on the same Outpost as the volume.

For more information, see Create local snapshots from volumes on an Outpost in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The tags to apply to the snapshot during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the Amazon EBS volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /** */ @interface AWSEC2CreateSnapshotsRequest : AWSRequest /**

Copies the tags from the specified volume to corresponding snapshot.

*/ @property (nonatomic, assign) AWSEC2ReplicateTagsFromSource replicateTagsFromSource; /**

A description propagated to every snapshot specified by the instance.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The instance to specify which volumes should be included in the snapshots.

*/ @property (nonatomic, strong) AWSEC2InstanceSpecification * _Nullable instanceSpecification; /**

The Amazon Resource Name (ARN) of the Outpost on which to create the local snapshots.

  • To create snapshots from an instance in a Region, omit this parameter. The snapshots are created in the same Region as the instance.

  • To create snapshots from an instance on an Outpost and store the snapshots in the Region, omit this parameter. The snapshots are created in the Region for the Outpost.

  • To create snapshots from an instance on an Outpost and store the snapshots on an Outpost, specify the ARN of the destination Outpost. The snapshots must be created on the same Outpost as the instance.

For more information, see Create multi-volume local snapshots from instances on an Outpost in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

Tags to apply to every snapshot specified by the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateSnapshotsResult : AWSModel /**

List of snapshots.

*/ @property (nonatomic, strong) NSArray * _Nullable snapshots; @end /**

Contains the parameters for CreateSpotDatafeedSubscription.

Required parameters: [Bucket] */ @interface AWSEC2CreateSpotDatafeedSubscriptionRequest : AWSRequest /**

The name of the Amazon S3 bucket in which to store the Spot Instance data feed. For more information about bucket names, see Rules for bucket naming in the Amazon S3 Developer Guide.

*/ @property (nonatomic, strong) NSString * _Nullable bucket; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The prefix for the data feed file names.

*/ @property (nonatomic, strong) NSString * _Nullable prefix; @end /**

Contains the output of CreateSpotDatafeedSubscription.

*/ @interface AWSEC2CreateSpotDatafeedSubscriptionResult : AWSModel /**

The Spot Instance data feed subscription.

*/ @property (nonatomic, strong) AWSEC2SpotDatafeedSubscription * _Nullable spotDatafeedSubscription; @end /** */ @interface AWSEC2CreateStoreImageTaskRequest : AWSRequest /**

The name of the Amazon S3 bucket in which the AMI object will be stored. The bucket must be in the Region in which the request is being made. The AMI object appears in the bucket only after the upload task has completed.

*/ @property (nonatomic, strong) NSString * _Nullable bucket; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The tags to apply to the AMI object that will be stored in the Amazon S3 bucket.

*/ @property (nonatomic, strong) NSArray * _Nullable s3ObjectTags; @end /** */ @interface AWSEC2CreateStoreImageTaskResult : AWSModel /**

The name of the stored AMI object in the S3 bucket.

*/ @property (nonatomic, strong) NSString * _Nullable objectKey; @end /** */ @interface AWSEC2CreateSubnetCidrReservationRequest : AWSRequest /**

The IPv4 or IPV6 CIDR range to reserve.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

The description to assign to the subnet CIDR reservation.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The type of reservation.

The following are valid values:

  • prefix: The Amazon EC2 Prefix Delegation feature assigns the IP addresses to network interfaces that are associated with an instance. For information about Prefix Delegation, see Prefix Delegation for Amazon EC2 network interfaces in the Amazon Elastic Compute Cloud User Guide.

  • explicit: You manually assign the IP addresses to resources that reside in your subnet.

*/ @property (nonatomic, assign) AWSEC2SubnetCidrReservationType reservationType; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The tags to assign to the subnet CIDR reservation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateSubnetCidrReservationResult : AWSModel /**

Information about the created subnet CIDR reservation.

*/ @property (nonatomic, strong) AWSEC2SubnetCidrReservation * _Nullable subnetCidrReservation; @end /** */ @interface AWSEC2CreateSubnetRequest : AWSRequest /**

The Availability Zone or Local Zone for the subnet.

Default: Amazon Web Services selects one for you. If you create more than one subnet in your VPC, we do not necessarily select a different zone for each subnet.

To create a subnet in a Local Zone, set this value to the Local Zone ID, for example us-west-2-lax-1a. For information about the Regions that support Local Zones, see Local Zones locations.

To create a subnet in an Outpost, set this value to the Availability Zone for the Outpost and specify the Outpost ARN.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The AZ ID or the Local Zone ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZoneId; /**

The IPv4 network range for the subnet, in CIDR notation. For example, 10.0.0.0/24. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

This parameter is not supported for an IPv6 only subnet.

*/ @property (nonatomic, strong) NSString * _Nullable cidrBlock; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.

This parameter is required for an IPv6 only subnet.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlock; /**

Indicates whether to create an IPv6 only subnet.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6Native; /**

The Amazon Resource Name (ARN) of the Outpost. If you specify an Outpost ARN, you must also specify the Availability Zone of the Outpost subnet.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The tags to assign to the subnet.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2CreateSubnetResult : AWSModel /**

Information about the subnet.

*/ @property (nonatomic, strong) AWSEC2Subnet * _Nullable subnet; @end /** */ @interface AWSEC2CreateTagsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the resources, separated by spaces.

Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.

*/ @property (nonatomic, strong) NSArray * _Nullable resources; /**

The tags. The value parameter is required, but if you don't want the tag to have a value, specify the parameter with no value, and we set the value to an empty string.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /** */ @interface AWSEC2CreateTrafficMirrorFilterRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The description of the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tags to assign to a Traffic Mirror filter.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateTrafficMirrorFilterResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the Traffic Mirror filter.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorFilter * _Nullable trafficMirrorFilter; @end /** */ @interface AWSEC2CreateTrafficMirrorFilterRuleRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The description of the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The destination CIDR block to assign to the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The destination port range.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorPortRangeRequest * _Nullable destinationPortRange; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The protocol, for example UDP, to assign to the Traffic Mirror rule.

For information about the protocol value, see Protocol Numbers on the Internet Assigned Numbers Authority (IANA) website.

*/ @property (nonatomic, strong) NSNumber * _Nullable protocols; /**

The action to take on the filtered traffic.

*/ @property (nonatomic, assign) AWSEC2TrafficMirrorRuleAction ruleAction; /**

The number of the Traffic Mirror rule. This number must be unique for each Traffic Mirror rule in a given direction. The rules are processed in ascending order by rule number.

*/ @property (nonatomic, strong) NSNumber * _Nullable ruleNumber; /**

The source CIDR block to assign to the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable sourceCidrBlock; /**

The source port range.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorPortRangeRequest * _Nullable sourcePortRange; /**

The type of traffic.

*/ @property (nonatomic, assign) AWSEC2TrafficDirection trafficDirection; /**

The ID of the filter that this rule is associated with.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterId; @end /** */ @interface AWSEC2CreateTrafficMirrorFilterRuleResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The Traffic Mirror rule.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorFilterRule * _Nullable trafficMirrorFilterRule; @end /** */ @interface AWSEC2CreateTrafficMirrorSessionRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The description of the Traffic Mirror session.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the source network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The number of bytes in each packet to mirror. These are bytes after the VXLAN header. Do not specify this parameter when you want to mirror the entire packet. To mirror a subset of the packet, set this to the length (in bytes) that you want to mirror. For example, if you set this value to 100, then the first 100 bytes that meet the filter criteria are copied to the target.

If you do not want to mirror the entire packet, use the PacketLength parameter to specify the number of bytes in each packet to mirror.

*/ @property (nonatomic, strong) NSNumber * _Nullable packetLength; /**

The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.

Valid values are 1-32766.

*/ @property (nonatomic, strong) NSNumber * _Nullable sessionNumber; /**

The tags to assign to a Traffic Mirror session.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterId; /**

The ID of the Traffic Mirror target.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorTargetId; /**

The VXLAN ID for the Traffic Mirror session. For more information about the VXLAN protocol, see RFC 7348. If you do not specify a VirtualNetworkId, an account-wide unique id is chosen at random.

*/ @property (nonatomic, strong) NSNumber * _Nullable virtualNetworkId; @end /** */ @interface AWSEC2CreateTrafficMirrorSessionResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the Traffic Mirror session.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorSession * _Nullable trafficMirrorSession; @end /** */ @interface AWSEC2CreateTrafficMirrorTargetRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The description of the Traffic Mirror target.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Gateway Load Balancer endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable gatewayLoadBalancerEndpointId; /**

The network interface ID that is associated with the target.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the target.

*/ @property (nonatomic, strong) NSString * _Nullable networkLoadBalancerArn; /**

The tags to assign to the Traffic Mirror target.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateTrafficMirrorTargetResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the Traffic Mirror target.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorTarget * _Nullable trafficMirrorTarget; @end /** */ @interface AWSEC2CreateTransitGatewayConnectPeerRequest : AWSRequest /**

The BGP options for the Connect peer.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayConnectRequestBgpOptions * _Nullable bgpOptions; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The range of inside IP addresses that are used for BGP peering. You must specify a size /29 IPv4 CIDR block from the 169.254.0.0/16 range. The first address from the range must be configured on the appliance as the BGP IP address. You can also optionally specify a size /125 IPv6 CIDR block from the fd00::/8 range.

*/ @property (nonatomic, strong) NSArray * _Nullable insideCidrBlocks; /**

The peer IP address (GRE outer IP address) on the appliance side of the Connect peer.

*/ @property (nonatomic, strong) NSString * _Nullable peerAddress; /**

The tags to apply to the Connect peer.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The peer IP address (GRE outer IP address) on the transit gateway side of the Connect peer, which must be specified from a transit gateway CIDR block. If not specified, Amazon automatically assigns the first available IP address from the transit gateway CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAddress; /**

The ID of the Connect attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /** */ @interface AWSEC2CreateTransitGatewayConnectPeerResult : AWSModel /**

Information about the Connect peer.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayConnectPeer * _Nullable transitGatewayConnectPeer; @end /** */ @interface AWSEC2CreateTransitGatewayConnectRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Connect attachment options.

*/ @property (nonatomic, strong) AWSEC2CreateTransitGatewayConnectRequestOptions * _Nullable options; /**

The tags to apply to the Connect attachment.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the transit gateway attachment. You can specify a VPC attachment or Amazon Web Services Direct Connect attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transportTransitGatewayAttachmentId; @end /**

The options for a Connect attachment.

Required parameters: [Protocol] */ @interface AWSEC2CreateTransitGatewayConnectRequestOptions : AWSModel /**

The tunnel protocol.

*/ @property (nonatomic, assign) AWSEC2ProtocolValue protocols; @end /** */ @interface AWSEC2CreateTransitGatewayConnectResult : AWSModel /**

Information about the Connect attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayConnect * _Nullable transitGatewayConnect; @end /** */ @interface AWSEC2CreateTransitGatewayMulticastDomainRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The options for the transit gateway multicast domain.

*/ @property (nonatomic, strong) AWSEC2CreateTransitGatewayMulticastDomainRequestOptions * _Nullable options; /**

The tags for the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; @end /**

The options for the transit gateway multicast domain.

*/ @interface AWSEC2CreateTransitGatewayMulticastDomainRequestOptions : AWSModel /**

Indicates whether to automatically accept cross-account subnet associations that are associated with the transit gateway multicast domain.

*/ @property (nonatomic, assign) AWSEC2AutoAcceptSharedAssociationsValue autoAcceptSharedAssociations; /**

Specify whether to enable Internet Group Management Protocol (IGMP) version 2 for the transit gateway multicast domain.

*/ @property (nonatomic, assign) AWSEC2Igmpv2SupportValue igmpv2Support; /**

Specify whether to enable support for statically configuring multicast group sources for a domain.

*/ @property (nonatomic, assign) AWSEC2StaticSourcesSupportValue staticSourcesSupport; @end /** */ @interface AWSEC2CreateTransitGatewayMulticastDomainResult : AWSModel /**

Information about the transit gateway multicast domain.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayMulticastDomain * _Nullable transitGatewayMulticastDomain; @end /** */ @interface AWSEC2CreateTransitGatewayPeeringAttachmentRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Requests a transit gateway peering attachment.

*/ @property (nonatomic, strong) AWSEC2CreateTransitGatewayPeeringAttachmentRequestOptions * _Nullable options; /**

The ID of the Amazon Web Services account that owns the peer transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable peerAccountId; /**

The Region where the peer transit gateway is located.

*/ @property (nonatomic, strong) NSString * _Nullable peerRegion; /**

The ID of the peer transit gateway with which to create the peering attachment.

*/ @property (nonatomic, strong) NSString * _Nullable peerTransitGatewayId; /**

The tags to apply to the transit gateway peering attachment.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; @end /**

Describes whether dynamic routing is enabled or disabled for the transit gateway peering request.

*/ @interface AWSEC2CreateTransitGatewayPeeringAttachmentRequestOptions : AWSModel /**

Indicates whether dynamic routing is enabled or disabled.

*/ @property (nonatomic, assign) AWSEC2DynamicRoutingValue dynamicRouting; @end /** */ @interface AWSEC2CreateTransitGatewayPeeringAttachmentResult : AWSModel /**

The transit gateway peering attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPeeringAttachment * _Nullable transitGatewayPeeringAttachment; @end /** */ @interface AWSEC2CreateTransitGatewayPolicyTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tags specification for the transit gateway policy table created during the request.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the transit gateway used for the policy table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; @end /** */ @interface AWSEC2CreateTransitGatewayPolicyTableResult : AWSModel /**

Describes the created transit gateway policy table.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPolicyTable * _Nullable transitGatewayPolicyTable; @end /** */ @interface AWSEC2CreateTransitGatewayPrefixListReferenceRequest : AWSRequest /**

Indicates whether to drop traffic that matches this route.

*/ @property (nonatomic, strong) NSNumber * _Nullable blackhole; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the prefix list that is used for destination matches.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The ID of the attachment to which traffic is routed.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2CreateTransitGatewayPrefixListReferenceResult : AWSModel /**

Information about the prefix list reference.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPrefixListReference * _Nullable transitGatewayPrefixListReference; @end /** */ @interface AWSEC2CreateTransitGatewayRequest : AWSRequest /**

A description of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The transit gateway options.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayRequestOptions * _Nullable options; /**

The tags to apply to the transit gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateTransitGatewayResult : AWSModel /**

Information about the transit gateway.

*/ @property (nonatomic, strong) AWSEC2TransitGateway * _Nullable transitGateway; @end /** */ @interface AWSEC2CreateTransitGatewayRouteRequest : AWSRequest /**

Indicates whether to drop traffic that matches this route.

*/ @property (nonatomic, strong) NSNumber * _Nullable blackhole; /**

The CIDR range used for destination matches. Routing decisions are based on the most specific match.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2CreateTransitGatewayRouteResult : AWSModel /**

Information about the route.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayRoute * _Nullable route; @end /** */ @interface AWSEC2CreateTransitGatewayRouteTableAnnouncementRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the peering attachment.

*/ @property (nonatomic, strong) NSString * _Nullable peeringAttachmentId; /**

The tags specifications applied to the transit gateway route table announcement.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2CreateTransitGatewayRouteTableAnnouncementResult : AWSModel /**

Provides details about the transit gateway route table announcement.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayRouteTableAnnouncement * _Nullable transitGatewayRouteTableAnnouncement; @end /** */ @interface AWSEC2CreateTransitGatewayRouteTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tags to apply to the transit gateway route table.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; @end /** */ @interface AWSEC2CreateTransitGatewayRouteTableResult : AWSModel /**

Information about the transit gateway route table.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayRouteTable * _Nullable transitGatewayRouteTable; @end /** */ @interface AWSEC2CreateTransitGatewayVpcAttachmentRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The VPC attachment options.

*/ @property (nonatomic, strong) AWSEC2CreateTransitGatewayVpcAttachmentRequestOptions * _Nullable options; /**

The IDs of one or more subnets. You can specify only one subnet per Availability Zone. You must specify at least one subnet, but we recommend that you specify two subnets for better availability. The transit gateway uses one IP address from each specified subnet.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; /**

The tags to apply to the VPC attachment.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes the options for a VPC attachment.

*/ @interface AWSEC2CreateTransitGatewayVpcAttachmentRequestOptions : AWSModel /**

Enable or disable support for appliance mode. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. The default is disable.

*/ @property (nonatomic, assign) AWSEC2ApplianceModeSupportValue applianceModeSupport; /**

Enable or disable DNS support. The default is enable.

*/ @property (nonatomic, assign) AWSEC2DnsSupportValue dnsSupport; /**

Enable or disable IPv6 support. The default is disable.

*/ @property (nonatomic, assign) AWSEC2Ipv6SupportValue ipv6Support; @end /** */ @interface AWSEC2CreateTransitGatewayVpcAttachmentResult : AWSModel /**

Information about the VPC attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayVpcAttachment * _Nullable transitGatewayVpcAttachment; @end /**

Describes the network interface options when creating an Amazon Web Services Verified Access endpoint using the network-interface type.

*/ @interface AWSEC2CreateVerifiedAccessEndpointEniOptions : AWSModel /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The IP port number.

*/ @property (nonatomic, strong) NSNumber * _Nullable port; /**

The IP protocol.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessEndpointProtocol protocols; @end /**

Describes the load balancer options when creating an Amazon Web Services Verified Access endpoint using the load-balancer type.

*/ @interface AWSEC2CreateVerifiedAccessEndpointLoadBalancerOptions : AWSModel /**

The ARN of the load balancer.

*/ @property (nonatomic, strong) NSString * _Nullable loadBalancerArn; /**

The IP port number.

*/ @property (nonatomic, strong) NSNumber * _Nullable port; /**

The IP protocol.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessEndpointProtocol protocols; /**

The IDs of the subnets.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; @end /** */ @interface AWSEC2CreateVerifiedAccessEndpointRequest : AWSRequest /**

The DNS name for users to reach your application.

*/ @property (nonatomic, strong) NSString * _Nullable applicationDomain; /**

The type of attachment.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessEndpointAttachmentType attachmentType; /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the Verified Access endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ARN of the public TLS/SSL certificate in Amazon Web Services Certificate Manager to associate with the endpoint. The CN in the certificate must match the DNS name your end users will use to reach your application.

*/ @property (nonatomic, strong) NSString * _Nullable domainCertificateArn; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

A custom identifier that is prepended to the DNS name that is generated for the endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable endpointDomainPrefix; /**

The type of Verified Access endpoint to create.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessEndpointType endpointType; /**

The load balancer details. This parameter is required if the endpoint type is load-balancer.

*/ @property (nonatomic, strong) AWSEC2CreateVerifiedAccessEndpointLoadBalancerOptions * _Nullable loadBalancerOptions; /**

The network interface details. This parameter is required if the endpoint type is network-interface.

*/ @property (nonatomic, strong) AWSEC2CreateVerifiedAccessEndpointEniOptions * _Nullable networkInterfaceOptions; /**

The Verified Access policy document.

*/ @property (nonatomic, strong) NSString * _Nullable policyDocument; /**

The IDs of the security groups to associate with the Verified Access endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

The tags to assign to the Verified Access endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the Verified Access group to associate the endpoint with.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessGroupId; @end /** */ @interface AWSEC2CreateVerifiedAccessEndpointResult : AWSModel /**

The ID of the Verified Access endpoint.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessEndpoint * _Nullable verifiedAccessEndpoint; @end /** */ @interface AWSEC2CreateVerifiedAccessGroupRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Verified Access policy document.

*/ @property (nonatomic, strong) NSString * _Nullable policyDocument; /**

The tags to assign to the Verified Access group.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; @end /** */ @interface AWSEC2CreateVerifiedAccessGroupResult : AWSModel /**

The ID of the Verified Access group.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessGroup * _Nullable verifiedAccessGroup; @end /** */ @interface AWSEC2CreateVerifiedAccessInstanceRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tags to assign to the Verified Access instance.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateVerifiedAccessInstanceResult : AWSModel /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessInstance * _Nullable verifiedAccessInstance; @end /**

Describes the options when creating an Amazon Web Services Verified Access trust provider using the device type.

*/ @interface AWSEC2CreateVerifiedAccessTrustProviderDeviceOptions : AWSModel /**

The ID of the tenant application with the device-identity provider.

*/ @property (nonatomic, strong) NSString * _Nullable tenantId; @end /**

Describes the options when creating an Amazon Web Services Verified Access trust provider using the user type.

*/ @interface AWSEC2CreateVerifiedAccessTrustProviderOidcOptions : AWSModel /**

The OIDC authorization endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable authorizationEndpoint; /**

The client identifier.

*/ @property (nonatomic, strong) NSString * _Nullable clientId; /**

The client secret.

*/ @property (nonatomic, strong) NSString * _Nullable clientSecret; /**

The OIDC issuer.

*/ @property (nonatomic, strong) NSString * _Nullable issuer; /**

OpenID Connect (OIDC) scopes are used by an application during authentication to authorize access to a user's details. Each scope returns a specific set of user attributes.

*/ @property (nonatomic, strong) NSString * _Nullable scope; /**

The OIDC token endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable tokenEndpoint; /**

The OIDC user info endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable userInfoEndpoint; @end /** */ @interface AWSEC2CreateVerifiedAccessTrustProviderRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the Verified Access trust provider.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The options for a device-based trust provider. This parameter is required when the provider type is device.

*/ @property (nonatomic, strong) AWSEC2CreateVerifiedAccessTrustProviderDeviceOptions * _Nullable deviceOptions; /**

The type of device-based trust provider. This parameter is required when the provider type is device.

*/ @property (nonatomic, assign) AWSEC2DeviceTrustProviderType deviceTrustProviderType; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The options for a OpenID Connect-compatible user-identity trust provider. This parameter is required when the provider type is user.

*/ @property (nonatomic, strong) AWSEC2CreateVerifiedAccessTrustProviderOidcOptions * _Nullable oidcOptions; /**

The identifier to be used when working with policy rules.

*/ @property (nonatomic, strong) NSString * _Nullable policyReferenceName; /**

The tags to assign to the Verified Access trust provider.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The type of trust provider.

*/ @property (nonatomic, assign) AWSEC2TrustProviderType trustProviderType; /**

The type of user-based trust provider. This parameter is required when the provider type is user.

*/ @property (nonatomic, assign) AWSEC2UserTrustProviderType userTrustProviderType; @end /** */ @interface AWSEC2CreateVerifiedAccessTrustProviderResult : AWSModel /**

The ID of the Verified Access trust provider.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessTrustProvider * _Nullable verifiedAccessTrustProvider; @end /**

Describes the user or group to be added or removed from the list of create volume permissions for a volume.

*/ @interface AWSEC2CreateVolumePermission : AWSModel /**

The group to be added or removed. The possible value is all.

*/ @property (nonatomic, assign) AWSEC2PermissionGroup group; /**

The ID of the Amazon Web Services account to be added or removed.

*/ @property (nonatomic, strong) NSString * _Nullable userId; @end /**

Describes modifications to the list of create volume permissions for a volume.

*/ @interface AWSEC2CreateVolumePermissionModifications : AWSModel /**

Adds the specified Amazon Web Services account ID or group to the list.

*/ @property (nonatomic, strong) NSArray * _Nullable add; /**

Removes the specified Amazon Web Services account ID or group from the list.

*/ @property (nonatomic, strong) NSArray * _Nullable remove; @end /** */ @interface AWSEC2CreateVolumeRequest : AWSRequest /**

The ID of the Availability Zone in which to create the volume. For example, us-east-1a.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether the volume should be encrypted. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Encryption by default in the Amazon Elastic Compute Cloud User Guide.

Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Supported instance types.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

The following are the supported values for each volume type:

  • gp3: 3,000-16,000 IOPS

  • io1: 100-64,000 IOPS

  • io2: 100-64,000 IOPS

io1 and io2 volumes support up to 64,000 IOPS only on Instances built on the Nitro System. Other instance families support performance up to 32,000 IOPS.

This parameter is required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS. This parameter is not supported for gp2, st1, sc1, or standard volumes.

*/ @property (nonatomic, strong) NSNumber * _Nullable iops; /**

The identifier of the Key Management Service (KMS) KMS key to use for Amazon EBS encryption. If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is specified, the encrypted state must be true.

You can specify the KMS key using any of the following:

  • Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  • Key alias. For example, alias/ExampleAlias.

  • Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  • Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, the action can appear to complete, but eventually fails.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

Indicates whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, you can attach the volume to up to 16 Instances built on the Nitro System in the same Availability Zone. This parameter is supported with io1 and io2 volumes only. For more information, see Amazon EBS Multi-Attach in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable multiAttachEnabled; /**

The Amazon Resource Name (ARN) of the Outpost.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

The following are the supported volumes sizes for each volume type:

  • gp2 and gp3: 1-16,384

  • io1 and io2: 4-16,384

  • st1 and sc1: 125-16,384

  • standard: 1-1,024

*/ @property (nonatomic, strong) NSNumber * _Nullable size; /**

The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The tags to apply to the volume during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The throughput to provision for a volume, with a maximum of 1,000 MiB/s.

This parameter is valid only for gp3 volumes.

Valid Range: Minimum value of 125. Maximum value of 1000.

*/ @property (nonatomic, strong) NSNumber * _Nullable throughput; /**

The volume type. This parameter can be one of the following values:

  • General Purpose SSD: gp2 | gp3

  • Provisioned IOPS SSD: io1 | io2

  • Throughput Optimized HDD: st1

  • Cold HDD: sc1

  • Magnetic: standard

Throughput Optimized HDD (st1) and Cold HDD (sc1) volumes can't be used as boot volumes.

For more information, see Amazon EBS volume types in the Amazon Elastic Compute Cloud User Guide.

Default: gp2

*/ @property (nonatomic, assign) AWSEC2VolumeType volumeType; @end /** */ @interface AWSEC2CreateVpcEndpointConnectionNotificationRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The endpoint events for which to receive notifications. Valid values are Accept, Connect, Delete, and Reject.

*/ @property (nonatomic, strong) NSArray * _Nullable connectionEvents; /**

The ARN of the SNS topic for the notifications.

*/ @property (nonatomic, strong) NSString * _Nullable connectionNotificationArn; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the endpoint service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; /**

The ID of the endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable vpcEndpointId; @end /** */ @interface AWSEC2CreateVpcEndpointConnectionNotificationResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the notification.

*/ @property (nonatomic, strong) AWSEC2ConnectionNotification * _Nullable connectionNotification; @end /** */ @interface AWSEC2CreateVpcEndpointRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The DNS options for the endpoint.

*/ @property (nonatomic, strong) AWSEC2DnsOptionsSpecification * _Nullable dnsOptions; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IP address type for the endpoint.

*/ @property (nonatomic, assign) AWSEC2IpAddressType ipAddressType; /**

(Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows full access to the service.

*/ @property (nonatomic, strong) NSString * _Nullable policyDocument; /**

(Interface endpoint) Indicates whether to associate a private hosted zone with the specified VPC. The private hosted zone contains a record set for the default public DNS name for the service for the Region (for example, kinesis.us-east-1.amazonaws.com), which resolves to the private IP addresses of the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead of the public DNS names that are automatically generated by the VPC endpoint service.

To use a private hosted zone, you must set the following VPC attributes to true: enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set the VPC attributes.

Default: true

*/ @property (nonatomic, strong) NSNumber * _Nullable privateDnsEnabled; /**

(Gateway endpoint) The route table IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable routeTableIds; /**

(Interface endpoint) The IDs of the security groups to associate with the endpoint network interface. If this parameter is not specified, we use the default security group for the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

The name of the endpoint service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceName; /**

(Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create an endpoint network interface. For a Gateway Load Balancer endpoint, you can specify only one subnet.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; /**

The tags to associate with the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The type of endpoint.

Default: Gateway

*/ @property (nonatomic, assign) AWSEC2VpcEndpointType vpcEndpointType; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2CreateVpcEndpointResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the endpoint.

*/ @property (nonatomic, strong) AWSEC2VpcEndpoint * _Nullable vpcEndpoint; @end /** */ @interface AWSEC2CreateVpcEndpointServiceConfigurationRequest : AWSRequest /**

Indicates whether requests from service consumers to create an endpoint to your service must be accepted manually.

*/ @property (nonatomic, strong) NSNumber * _Nullable acceptanceRequired; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Amazon Resource Names (ARNs) of the Gateway Load Balancers.

*/ @property (nonatomic, strong) NSArray * _Nullable gatewayLoadBalancerArns; /**

The Amazon Resource Names (ARNs) of the Network Load Balancers.

*/ @property (nonatomic, strong) NSArray * _Nullable networkLoadBalancerArns; /**

(Interface endpoint configuration) The private DNS name to assign to the VPC endpoint service.

*/ @property (nonatomic, strong) NSString * _Nullable privateDnsName; /**

The supported IP address types. The possible values are ipv4 and ipv6.

*/ @property (nonatomic, strong) NSArray * _Nullable supportedIpAddressTypes; /**

The tags to associate with the service.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateVpcEndpointServiceConfigurationResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Information about the service configuration.

*/ @property (nonatomic, strong) AWSEC2ServiceConfiguration * _Nullable serviceConfiguration; @end /** */ @interface AWSEC2CreateVpcPeeringConnectionRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Amazon Web Services account ID of the owner of the accepter VPC.

Default: Your Amazon Web Services account ID

*/ @property (nonatomic, strong) NSString * _Nullable peerOwnerId; /**

The Region code for the accepter VPC, if the accepter VPC is located in a Region other than the Region in which you make the request.

Default: The Region in which you make the request.

*/ @property (nonatomic, strong) NSString * _Nullable peerRegion; /**

The ID of the VPC with which you are creating the VPC peering connection. You must specify this parameter in the request.

*/ @property (nonatomic, strong) NSString * _Nullable peerVpcId; /**

The tags to assign to the peering connection.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the requester VPC. You must specify this parameter in the request.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2CreateVpcPeeringConnectionResult : AWSModel /**

Information about the VPC peering connection.

*/ @property (nonatomic, strong) AWSEC2VpcPeeringConnection * _Nullable vpcPeeringConnection; @end /** */ @interface AWSEC2CreateVpcRequest : AWSRequest /**

Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block.

*/ @property (nonatomic, strong) NSNumber * _Nullable amazonProvidedIpv6CidrBlock; /**

The IPv4 network range for the VPC, in CIDR notation. For example, 10.0.0.0/16. We modify the specified CIDR block to its canonical form; for example, if you specify 100.68.0.18/18, we modify it to 100.68.0.0/18.

*/ @property (nonatomic, strong) NSString * _Nullable cidrBlock; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tenancy options for instances launched into the VPC. For default, instances are launched with shared tenancy by default. You can launch instances with any tenancy into a shared tenancy VPC. For dedicated, instances are launched as dedicated tenancy instances by default. You can only launch instances with a tenancy of dedicated or host into a dedicated tenancy VPC.

Important: The host value cannot be used with this parameter. Use the default or dedicated values only.

Default: default

*/ @property (nonatomic, assign) AWSEC2Tenancy instanceTenancy; /**

The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable ipv4IpamPoolId; /**

The netmask length of the IPv4 CIDR you want to allocate to this VPC from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv4NetmaskLength; /**

The IPv6 CIDR block from the IPv6 address pool. You must also specify Ipv6Pool in the request.

To let Amazon choose the IPv6 CIDR block for you, omit this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlock; /**

The name of the location from which we advertise the IPV6 CIDR block. Use this parameter to limit the address to this location.

You must set AmazonProvidedIpv6CidrBlock to true to use this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlockNetworkBorderGroup; /**

The ID of an IPv6 IPAM pool which will be used to allocate this VPC an IPv6 CIDR. IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts throughout your Amazon Web Services Organization. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6IpamPoolId; /**

The netmask length of the IPv6 CIDR you want to allocate to this VPC from an Amazon VPC IP Address Manager (IPAM) pool. For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6NetmaskLength; /**

The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Pool; /**

The tags to assign to the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2CreateVpcResult : AWSModel /**

Information about the VPC.

*/ @property (nonatomic, strong) AWSEC2Vpc * _Nullable vpc; @end /**

Contains the parameters for CreateVpnConnection.

Required parameters: [CustomerGatewayId, Type] */ @interface AWSEC2CreateVpnConnectionRequest : AWSRequest /**

The ID of the customer gateway.

*/ @property (nonatomic, strong) NSString * _Nullable customerGatewayId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The options for the VPN connection.

*/ @property (nonatomic, strong) AWSEC2VpnConnectionOptionsSpecification * _Nullable options; /**

The tags to apply to the VPN connection.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The ID of the transit gateway. If you specify a transit gateway, you cannot specify a virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The type of VPN connection (ipsec.1).

*/ @property (nonatomic, strong) NSString * _Nullable types; /**

The ID of the virtual private gateway. If you specify a virtual private gateway, you cannot specify a transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable vpnGatewayId; @end /**

Contains the output of CreateVpnConnection.

*/ @interface AWSEC2CreateVpnConnectionResult : AWSModel /**

Information about the VPN connection.

*/ @property (nonatomic, strong) AWSEC2VpnConnection * _Nullable vpnConnection; @end /**

Contains the parameters for CreateVpnConnectionRoute.

Required parameters: [DestinationCidrBlock, VpnConnectionId] */ @interface AWSEC2CreateVpnConnectionRouteRequest : AWSRequest /**

The CIDR block associated with the local subnet of the customer network.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The ID of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; @end /**

Contains the parameters for CreateVpnGateway.

Required parameters: [Type] */ @interface AWSEC2CreateVpnGatewayRequest : AWSRequest /**

A private Autonomous System Number (ASN) for the Amazon side of a BGP session. If you're using a 16-bit ASN, it must be in the 64512 to 65534 range. If you're using a 32-bit ASN, it must be in the 4200000000 to 4294967294 range.

Default: 64512

*/ @property (nonatomic, strong) NSNumber * _Nullable amazonSideAsn; /**

The Availability Zone for the virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The tags to apply to the virtual private gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The type of VPN connection this virtual private gateway supports.

*/ @property (nonatomic, assign) AWSEC2GatewayType types; @end /**

Contains the output of CreateVpnGateway.

*/ @interface AWSEC2CreateVpnGatewayResult : AWSModel /**

Information about the virtual private gateway.

*/ @property (nonatomic, strong) AWSEC2VpnGateway * _Nullable vpnGateway; @end /**

Describes the credit option for CPU usage of a T instance.

*/ @interface AWSEC2CreditSpecification : AWSModel /**

The credit option for CPU usage of a T instance.

Valid values: standard | unlimited

*/ @property (nonatomic, strong) NSString * _Nullable cpuCredits; @end /**

The credit option for CPU usage of a T instance.

Required parameters: [CpuCredits] */ @interface AWSEC2CreditSpecificationRequest : AWSModel /**

The credit option for CPU usage of a T instance.

Valid values: standard | unlimited

*/ @property (nonatomic, strong) NSString * _Nullable cpuCredits; @end /**

Describes a customer gateway.

*/ @interface AWSEC2CustomerGateway : AWSModel /**

The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).

*/ @property (nonatomic, strong) NSString * _Nullable bgpAsn; /**

The Amazon Resource Name (ARN) for the customer gateway certificate.

*/ @property (nonatomic, strong) NSString * _Nullable certificateArn; /**

The ID of the customer gateway.

*/ @property (nonatomic, strong) NSString * _Nullable customerGatewayId; /**

The name of customer gateway device.

*/ @property (nonatomic, strong) NSString * _Nullable deviceName; /**

The IP address of the customer gateway device's outside interface.

*/ @property (nonatomic, strong) NSString * _Nullable ipAddress; /**

The current state of the customer gateway (pending | available | deleting | deleted).

*/ @property (nonatomic, strong) NSString * _Nullable state; /**

Any tags assigned to the customer gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The type of VPN connection the customer gateway supports (ipsec.1).

*/ @property (nonatomic, strong) NSString * _Nullable types; @end /**

A query used for retrieving network health data.

*/ @interface AWSEC2DataQuery : AWSModel /**

The Region or Availability Zone that's the target for the data query. For example, eu-north-1.

*/ @property (nonatomic, strong) NSString * _Nullable destination; /**

A user-defined ID associated with a data query that's returned in the dataResponse identifying the query. For example, if you set the Id to MyQuery01in the query, the dataResponse identifies the query as MyQuery01.

*/ @property (nonatomic, strong) NSString * _Nullable identifier; /**

The metric, aggregation-latency, indicating that network latency is aggregated for the query. This is the only supported metric.

*/ @property (nonatomic, assign) AWSEC2MetricType metric; /**

The aggregation period used for the data query.

*/ @property (nonatomic, assign) AWSEC2PeriodType period; /**

The Region or Availability Zone that's the source for the data query. For example, us-east-1.

*/ @property (nonatomic, strong) NSString * _Nullable source; /**

The metric data aggregation period, p50, between the specified startDate and endDate. For example, a metric of five_minutes is the median of all the data points gathered within those five minutes. p50 is the only supported metric.

*/ @property (nonatomic, assign) AWSEC2StatisticType statistic; @end /**

The response to a DataQuery.

*/ @interface AWSEC2DataResponse : AWSModel /**

The Region or Availability Zone that's the destination for the data query. For example, eu-west-1.

*/ @property (nonatomic, strong) NSString * _Nullable destination; /**

The ID passed in the DataQuery.

*/ @property (nonatomic, strong) NSString * _Nullable identifier; /**

The metric used for the network performance request. Only aggregate-latency is supported, which shows network latency during a specified period.

*/ @property (nonatomic, assign) AWSEC2MetricType metric; /**

A list of MetricPoint objects.

*/ @property (nonatomic, strong) NSArray * _Nullable metricPoints; /**

The period used for the network performance request.

*/ @property (nonatomic, assign) AWSEC2PeriodType period; /**

The Region or Availability Zone that's the source for the data query. For example, us-east-1.

*/ @property (nonatomic, strong) NSString * _Nullable source; /**

The statistic used for the network performance request.

*/ @property (nonatomic, assign) AWSEC2StatisticType statistic; @end /** */ @interface AWSEC2DeleteCarrierGatewayRequest : AWSRequest /**

The ID of the carrier gateway.

*/ @property (nonatomic, strong) NSString * _Nullable carrierGatewayId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DeleteCarrierGatewayResult : AWSModel /**

Information about the carrier gateway.

*/ @property (nonatomic, strong) AWSEC2CarrierGateway * _Nullable carrierGateway; @end /** */ @interface AWSEC2DeleteClientVpnEndpointRequest : AWSRequest /**

The ID of the Client VPN to be deleted.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DeleteClientVpnEndpointResult : AWSModel /**

The current state of the Client VPN endpoint.

*/ @property (nonatomic, strong) AWSEC2ClientVpnEndpointStatus * _Nullable status; @end /** */ @interface AWSEC2DeleteClientVpnRouteRequest : AWSRequest /**

The ID of the Client VPN endpoint from which the route is to be deleted.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

The IPv4 address range, in CIDR notation, of the route to be deleted.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the target subnet used by the route.

*/ @property (nonatomic, strong) NSString * _Nullable targetVpcSubnetId; @end /** */ @interface AWSEC2DeleteClientVpnRouteResult : AWSModel /**

The current state of the route.

*/ @property (nonatomic, strong) AWSEC2ClientVpnRouteStatus * _Nullable status; @end /** */ @interface AWSEC2DeleteCoipCidrRequest : AWSRequest /**

A customer-owned IP address range that you want to delete.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

The ID of the customer-owned address pool.

*/ @property (nonatomic, strong) NSString * _Nullable coipPoolId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DeleteCoipCidrResult : AWSModel /**

Information about a range of customer-owned IP addresses.

*/ @property (nonatomic, strong) AWSEC2CoipCidr * _Nullable coipCidr; @end /** */ @interface AWSEC2DeleteCoipPoolRequest : AWSRequest /**

The ID of the CoIP pool that you want to delete.

*/ @property (nonatomic, strong) NSString * _Nullable coipPoolId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DeleteCoipPoolResult : AWSModel /**

Information about the CoIP address pool.

*/ @property (nonatomic, strong) AWSEC2CoipPool * _Nullable coipPool; @end /**

Contains the parameters for DeleteCustomerGateway.

Required parameters: [CustomerGatewayId] */ @interface AWSEC2DeleteCustomerGatewayRequest : AWSRequest /**

The ID of the customer gateway.

*/ @property (nonatomic, strong) NSString * _Nullable customerGatewayId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DeleteDhcpOptionsRequest : AWSRequest /**

The ID of the DHCP options set.

*/ @property (nonatomic, strong) NSString * _Nullable dhcpOptionsId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DeleteEgressOnlyInternetGatewayRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the egress-only internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable egressOnlyInternetGatewayId; @end /** */ @interface AWSEC2DeleteEgressOnlyInternetGatewayResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returnCode; @end /**

Describes an EC2 Fleet error.

*/ @interface AWSEC2DeleteFleetError : AWSModel /**

The error code.

*/ @property (nonatomic, assign) AWSEC2DeleteFleetErrorCode code; /**

The description for the error code.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes an EC2 Fleet that was not successfully deleted.

*/ @interface AWSEC2DeleteFleetErrorItem : AWSModel /**

The error.

*/ @property (nonatomic, strong) AWSEC2DeleteFleetError * _Nullable error; /**

The ID of the EC2 Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable fleetId; @end /**

Describes an EC2 Fleet that was successfully deleted.

*/ @interface AWSEC2DeleteFleetSuccessItem : AWSModel /**

The current state of the EC2 Fleet.

*/ @property (nonatomic, assign) AWSEC2FleetStateCode currentFleetState; /**

The ID of the EC2 Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable fleetId; /**

The previous state of the EC2 Fleet.

*/ @property (nonatomic, assign) AWSEC2FleetStateCode previousFleetState; @end /** */ @interface AWSEC2DeleteFleetsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the EC2 Fleets.

*/ @property (nonatomic, strong) NSArray * _Nullable fleetIds; /**

Indicates whether to terminate the associated instances when the EC2 Fleet is deleted. The default is to terminate the instances.

To let the instances continue to run after the EC2 Fleet is deleted, specify no-terminate-instances. Supported only for fleets of type maintain and request.

For instant fleets, you cannot specify NoTerminateInstances. A deleted instant fleet with running instances is not supported.

*/ @property (nonatomic, strong) NSNumber * _Nullable terminateInstances; @end /** */ @interface AWSEC2DeleteFleetsResult : AWSModel /**

Information about the EC2 Fleets that are successfully deleted.

*/ @property (nonatomic, strong) NSArray * _Nullable successfulFleetDeletions; /**

Information about the EC2 Fleets that are not successfully deleted.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessfulFleetDeletions; @end /** */ @interface AWSEC2DeleteFlowLogsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more flow log IDs.

Constraint: Maximum of 1000 flow log IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable flowLogIds; @end /** */ @interface AWSEC2DeleteFlowLogsResult : AWSModel /**

Information about the flow logs that could not be deleted successfully.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessful; @end /** */ @interface AWSEC2DeleteFpgaImageRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable fpgaImageId; @end /** */ @interface AWSEC2DeleteFpgaImageResult : AWSModel /**

Is true if the request succeeds, and an error otherwise.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2DeleteInstanceConnectEndpointRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the EC2 Instance Connect Endpoint to delete.

*/ @property (nonatomic, strong) NSString * _Nullable instanceConnectEndpointId; @end /** */ @interface AWSEC2DeleteInstanceConnectEndpointResult : AWSModel /**

Information about the EC2 Instance Connect Endpoint.

*/ @property (nonatomic, strong) AWSEC2Ec2InstanceConnectEndpoint * _Nullable instanceConnectEndpoint; @end /** */ @interface AWSEC2DeleteInstanceEventWindowRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Specify true to force delete the event window. Use the force delete parameter if the event window is currently associated with targets.

*/ @property (nonatomic, strong) NSNumber * _Nullable forceDelete; /**

The ID of the event window.

*/ @property (nonatomic, strong) NSString * _Nullable instanceEventWindowId; @end /** */ @interface AWSEC2DeleteInstanceEventWindowResult : AWSModel /**

The state of the event window.

*/ @property (nonatomic, strong) AWSEC2InstanceEventWindowStateChange * _Nullable instanceEventWindowState; @end /** */ @interface AWSEC2DeleteInternetGatewayRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable internetGatewayId; @end /** */ @interface AWSEC2DeleteIpamPoolRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the pool to delete.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; @end /** */ @interface AWSEC2DeleteIpamPoolResult : AWSModel /**

Information about the results of the deletion.

*/ @property (nonatomic, strong) AWSEC2IpamPool * _Nullable ipamPool; @end /** */ @interface AWSEC2DeleteIpamRequest : AWSRequest /**

Enables you to quickly delete an IPAM, private scopes, pools in private scopes, and any allocations in the pools in private scopes. You cannot delete the IPAM with this option if there is a pool in your public scope. If you use this option, IPAM does the following:

  • Deallocates any CIDRs allocated to VPC resources (such as VPCs) in pools in private scopes.

    No VPC resources are deleted as a result of enabling this option. The CIDR associated with the resource will no longer be allocated from an IPAM pool, but the CIDR itself will remain unchanged.

  • Deprovisions all IPv4 CIDRs provisioned to IPAM pools in private scopes.

  • Deletes all IPAM pools in private scopes.

  • Deletes all non-default private scopes in the IPAM.

  • Deletes the default public and private scopes and the IPAM.

*/ @property (nonatomic, strong) NSNumber * _Nullable cascade; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the IPAM to delete.

*/ @property (nonatomic, strong) NSString * _Nullable ipamId; @end /** */ @interface AWSEC2DeleteIpamResourceDiscoveryRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IPAM resource discovery ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryId; @end /** */ @interface AWSEC2DeleteIpamResourceDiscoveryResult : AWSModel /**

The IPAM resource discovery.

*/ @property (nonatomic, strong) AWSEC2IpamResourceDiscovery * _Nullable ipamResourceDiscovery; @end /** */ @interface AWSEC2DeleteIpamResult : AWSModel /**

Information about the results of the deletion.

*/ @property (nonatomic, strong) AWSEC2Ipam * _Nullable ipam; @end /** */ @interface AWSEC2DeleteIpamScopeRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the scope to delete.

*/ @property (nonatomic, strong) NSString * _Nullable ipamScopeId; @end /** */ @interface AWSEC2DeleteIpamScopeResult : AWSModel /**

Information about the results of the deletion.

*/ @property (nonatomic, strong) AWSEC2IpamScope * _Nullable ipamScope; @end /** */ @interface AWSEC2DeleteKeyPairRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The name of the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

The ID of the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyPairId; @end /** */ @interface AWSEC2DeleteLaunchTemplateRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the launch template.

You must specify either the LaunchTemplateId or the LaunchTemplateName, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

You must specify either the LaunchTemplateName or the LaunchTemplateId, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; @end /** */ @interface AWSEC2DeleteLaunchTemplateResult : AWSModel /**

Information about the launch template.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplate * _Nullable launchTemplate; @end /** */ @interface AWSEC2DeleteLaunchTemplateVersionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the launch template.

You must specify either the LaunchTemplateId or the LaunchTemplateName, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

You must specify either the LaunchTemplateName or the LaunchTemplateId, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

The version numbers of one or more launch template versions to delete.

*/ @property (nonatomic, strong) NSArray * _Nullable versions; @end /**

Describes a launch template version that could not be deleted.

*/ @interface AWSEC2DeleteLaunchTemplateVersionsResponseErrorItem : AWSModel /**

The ID of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

Information about the error.

*/ @property (nonatomic, strong) AWSEC2ResponseError * _Nullable responseError; /**

The version number of the launch template.

*/ @property (nonatomic, strong) NSNumber * _Nullable versionNumber; @end /**

Describes a launch template version that was successfully deleted.

*/ @interface AWSEC2DeleteLaunchTemplateVersionsResponseSuccessItem : AWSModel /**

The ID of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

The version number of the launch template.

*/ @property (nonatomic, strong) NSNumber * _Nullable versionNumber; @end /** */ @interface AWSEC2DeleteLaunchTemplateVersionsResult : AWSModel /**

Information about the launch template versions that were successfully deleted.

*/ @property (nonatomic, strong) NSArray * _Nullable successfullyDeletedLaunchTemplateVersions; /**

Information about the launch template versions that could not be deleted.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessfullyDeletedLaunchTemplateVersions; @end /** */ @interface AWSEC2DeleteLocalGatewayRouteRequest : AWSRequest /**

The CIDR range for the route. This must match the CIDR for the route exactly.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

Use a prefix list in place of DestinationCidrBlock. You cannot use DestinationPrefixListId and DestinationCidrBlock in the same request.

*/ @property (nonatomic, strong) NSString * _Nullable destinationPrefixListId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; @end /** */ @interface AWSEC2DeleteLocalGatewayRouteResult : AWSModel /**

Information about the route.

*/ @property (nonatomic, strong) AWSEC2LocalGatewayRoute * _Nullable route; @end /** */ @interface AWSEC2DeleteLocalGatewayRouteTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; @end /** */ @interface AWSEC2DeleteLocalGatewayRouteTableResult : AWSModel /**

Information about the local gateway route table.

*/ @property (nonatomic, strong) AWSEC2LocalGatewayRouteTable * _Nullable localGatewayRouteTable; @end /** */ @interface AWSEC2DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the local gateway route table virtual interface group association.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableVirtualInterfaceGroupAssociationId; @end /** */ @interface AWSEC2DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult : AWSModel /**

Information about the association.

*/ @property (nonatomic, strong) AWSEC2LocalGatewayRouteTableVirtualInterfaceGroupAssociation * _Nullable localGatewayRouteTableVirtualInterfaceGroupAssociation; @end /** */ @interface AWSEC2DeleteLocalGatewayRouteTableVpcAssociationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the association.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableVpcAssociationId; @end /** */ @interface AWSEC2DeleteLocalGatewayRouteTableVpcAssociationResult : AWSModel /**

Information about the association.

*/ @property (nonatomic, strong) AWSEC2LocalGatewayRouteTableVpcAssociation * _Nullable localGatewayRouteTableVpcAssociation; @end /** */ @interface AWSEC2DeleteManagedPrefixListRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; @end /** */ @interface AWSEC2DeleteManagedPrefixListResult : AWSModel /**

Information about the prefix list.

*/ @property (nonatomic, strong) AWSEC2ManagedPrefixList * _Nullable prefixList; @end /** */ @interface AWSEC2DeleteNatGatewayRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; @end /** */ @interface AWSEC2DeleteNatGatewayResult : AWSModel /**

The ID of the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; @end /** */ @interface AWSEC2DeleteNetworkAclEntryRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether the rule is an egress rule.

*/ @property (nonatomic, strong) NSNumber * _Nullable egress; /**

The ID of the network ACL.

*/ @property (nonatomic, strong) NSString * _Nullable networkAclId; /**

The rule number of the entry to delete.

*/ @property (nonatomic, strong) NSNumber * _Nullable ruleNumber; @end /** */ @interface AWSEC2DeleteNetworkAclRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the network ACL.

*/ @property (nonatomic, strong) NSString * _Nullable networkAclId; @end /** */ @interface AWSEC2DeleteNetworkInsightsAccessScopeAnalysisRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Network Access Scope analysis.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeAnalysisId; @end /** */ @interface AWSEC2DeleteNetworkInsightsAccessScopeAnalysisResult : AWSModel /**

The ID of the Network Access Scope analysis.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeAnalysisId; @end /** */ @interface AWSEC2DeleteNetworkInsightsAccessScopeRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Network Access Scope.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeId; @end /** */ @interface AWSEC2DeleteNetworkInsightsAccessScopeResult : AWSModel /**

The ID of the Network Access Scope.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeId; @end /** */ @interface AWSEC2DeleteNetworkInsightsAnalysisRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the network insights analysis.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAnalysisId; @end /** */ @interface AWSEC2DeleteNetworkInsightsAnalysisResult : AWSModel /**

The ID of the network insights analysis.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAnalysisId; @end /** */ @interface AWSEC2DeleteNetworkInsightsPathRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the path.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsPathId; @end /** */ @interface AWSEC2DeleteNetworkInsightsPathResult : AWSModel /**

The ID of the path.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsPathId; @end /**

Contains the parameters for DeleteNetworkInterfacePermission.

Required parameters: [NetworkInterfacePermissionId] */ @interface AWSEC2DeleteNetworkInterfacePermissionRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Specify true to remove the permission even if the network interface is attached to an instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable force; /**

The ID of the network interface permission.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfacePermissionId; @end /**

Contains the output for DeleteNetworkInterfacePermission.

*/ @interface AWSEC2DeleteNetworkInterfacePermissionResult : AWSModel /**

Returns true if the request succeeds, otherwise returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /**

Contains the parameters for DeleteNetworkInterface.

Required parameters: [NetworkInterfaceId] */ @interface AWSEC2DeleteNetworkInterfaceRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; @end /** */ @interface AWSEC2DeletePlacementGroupRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The name of the placement group.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; @end /** */ @interface AWSEC2DeletePublicIpv4PoolRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the public IPv4 pool you want to delete.

*/ @property (nonatomic, strong) NSString * _Nullable poolId; @end /** */ @interface AWSEC2DeletePublicIpv4PoolResult : AWSModel /**

Information about the result of deleting the public IPv4 pool.

*/ @property (nonatomic, strong) NSNumber * _Nullable returnValue; @end /**

Describes the error for a Reserved Instance whose queued purchase could not be deleted.

*/ @interface AWSEC2DeleteQueuedReservedInstancesError : AWSModel /**

The error code.

*/ @property (nonatomic, assign) AWSEC2DeleteQueuedReservedInstancesErrorCode code; /**

The error message.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /** */ @interface AWSEC2DeleteQueuedReservedInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the Reserved Instances.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstancesIds; @end /** */ @interface AWSEC2DeleteQueuedReservedInstancesResult : AWSModel /**

Information about the queued purchases that could not be deleted.

*/ @property (nonatomic, strong) NSArray * _Nullable failedQueuedPurchaseDeletions; /**

Information about the queued purchases that were successfully deleted.

*/ @property (nonatomic, strong) NSArray * _Nullable successfulQueuedPurchaseDeletions; @end /** */ @interface AWSEC2DeleteRouteRequest : AWSRequest /**

The IPv4 CIDR range for the route. The value you specify must match the CIDR for the route exactly.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The IPv6 CIDR range for the route. The value you specify must match the CIDR for the route exactly.

*/ @property (nonatomic, strong) NSString * _Nullable destinationIpv6CidrBlock; /**

The ID of the prefix list for the route.

*/ @property (nonatomic, strong) NSString * _Nullable destinationPrefixListId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the route table.

*/ @property (nonatomic, strong) NSString * _Nullable routeTableId; @end /** */ @interface AWSEC2DeleteRouteTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the route table.

*/ @property (nonatomic, strong) NSString * _Nullable routeTableId; @end /** */ @interface AWSEC2DeleteSecurityGroupRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

[Default VPC] The name of the security group. You can specify either the security group name or the security group ID. For security groups in a nondefault VPC, you must specify the security group ID.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; @end /** */ @interface AWSEC2DeleteSnapshotRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the EBS snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; @end /**

Contains the parameters for DeleteSpotDatafeedSubscription.

*/ @interface AWSEC2DeleteSpotDatafeedSubscriptionRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DeleteSubnetCidrReservationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the subnet CIDR reservation.

*/ @property (nonatomic, strong) NSString * _Nullable subnetCidrReservationId; @end /** */ @interface AWSEC2DeleteSubnetCidrReservationResult : AWSModel /**

Information about the deleted subnet CIDR reservation.

*/ @property (nonatomic, strong) AWSEC2SubnetCidrReservation * _Nullable deletedSubnetCidrReservation; @end /** */ @interface AWSEC2DeleteSubnetRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /** */ @interface AWSEC2DeleteTagsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the resources, separated by spaces.

Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.

*/ @property (nonatomic, strong) NSArray * _Nullable resources; /**

The tags to delete. Specify a tag key and an optional tag value to delete specific tags. If you specify a tag key without a tag value, we delete any tag with this key regardless of its value. If you specify a tag key with an empty string as the tag value, we delete the tag only if its value is an empty string.

If you omit this parameter, we delete all user-defined tags for the specified resources. We do not delete Amazon Web Services-generated tags (tags that have the aws: prefix).

Constraints: Up to 1000 tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /** */ @interface AWSEC2DeleteTrafficMirrorFilterRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterId; @end /** */ @interface AWSEC2DeleteTrafficMirrorFilterResult : AWSModel /**

The ID of the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterId; @end /** */ @interface AWSEC2DeleteTrafficMirrorFilterRuleRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterRuleId; @end /** */ @interface AWSEC2DeleteTrafficMirrorFilterRuleResult : AWSModel /**

The ID of the deleted Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterRuleId; @end /** */ @interface AWSEC2DeleteTrafficMirrorSessionRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Traffic Mirror session.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorSessionId; @end /** */ @interface AWSEC2DeleteTrafficMirrorSessionResult : AWSModel /**

The ID of the deleted Traffic Mirror session.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorSessionId; @end /** */ @interface AWSEC2DeleteTrafficMirrorTargetRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Traffic Mirror target.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorTargetId; @end /** */ @interface AWSEC2DeleteTrafficMirrorTargetResult : AWSModel /**

The ID of the deleted Traffic Mirror target.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorTargetId; @end /** */ @interface AWSEC2DeleteTransitGatewayConnectPeerRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Connect peer.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayConnectPeerId; @end /** */ @interface AWSEC2DeleteTransitGatewayConnectPeerResult : AWSModel /**

Information about the deleted Connect peer.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayConnectPeer * _Nullable transitGatewayConnectPeer; @end /** */ @interface AWSEC2DeleteTransitGatewayConnectRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Connect attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /** */ @interface AWSEC2DeleteTransitGatewayConnectResult : AWSModel /**

Information about the deleted Connect attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayConnect * _Nullable transitGatewayConnect; @end /** */ @interface AWSEC2DeleteTransitGatewayMulticastDomainRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /** */ @interface AWSEC2DeleteTransitGatewayMulticastDomainResult : AWSModel /**

Information about the deleted transit gateway multicast domain.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayMulticastDomain * _Nullable transitGatewayMulticastDomain; @end /** */ @interface AWSEC2DeleteTransitGatewayPeeringAttachmentRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the transit gateway peering attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /** */ @interface AWSEC2DeleteTransitGatewayPeeringAttachmentResult : AWSModel /**

The transit gateway peering attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPeeringAttachment * _Nullable transitGatewayPeeringAttachment; @end /** */ @interface AWSEC2DeleteTransitGatewayPolicyTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The transit gateway policy table to delete.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayPolicyTableId; @end /** */ @interface AWSEC2DeleteTransitGatewayPolicyTableResult : AWSModel /**

Provides details about the deleted transit gateway policy table.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPolicyTable * _Nullable transitGatewayPolicyTable; @end /** */ @interface AWSEC2DeleteTransitGatewayPrefixListReferenceRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The ID of the route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2DeleteTransitGatewayPrefixListReferenceResult : AWSModel /**

Information about the deleted prefix list reference.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPrefixListReference * _Nullable transitGatewayPrefixListReference; @end /** */ @interface AWSEC2DeleteTransitGatewayRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; @end /** */ @interface AWSEC2DeleteTransitGatewayResult : AWSModel /**

Information about the deleted transit gateway.

*/ @property (nonatomic, strong) AWSEC2TransitGateway * _Nullable transitGateway; @end /** */ @interface AWSEC2DeleteTransitGatewayRouteRequest : AWSRequest /**

The CIDR range for the route. This must match the CIDR for the route exactly.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2DeleteTransitGatewayRouteResult : AWSModel /**

Information about the route.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayRoute * _Nullable route; @end /** */ @interface AWSEC2DeleteTransitGatewayRouteTableAnnouncementRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The transit gateway route table ID that's being deleted.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableAnnouncementId; @end /** */ @interface AWSEC2DeleteTransitGatewayRouteTableAnnouncementResult : AWSModel /**

Provides details about a deleted transit gateway route table.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayRouteTableAnnouncement * _Nullable transitGatewayRouteTableAnnouncement; @end /** */ @interface AWSEC2DeleteTransitGatewayRouteTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2DeleteTransitGatewayRouteTableResult : AWSModel /**

Information about the deleted transit gateway route table.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayRouteTable * _Nullable transitGatewayRouteTable; @end /** */ @interface AWSEC2DeleteTransitGatewayVpcAttachmentRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /** */ @interface AWSEC2DeleteTransitGatewayVpcAttachmentResult : AWSModel /**

Information about the deleted VPC attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayVpcAttachment * _Nullable transitGatewayVpcAttachment; @end /** */ @interface AWSEC2DeleteVerifiedAccessEndpointRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Verified Access endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessEndpointId; @end /** */ @interface AWSEC2DeleteVerifiedAccessEndpointResult : AWSModel /**

The ID of the Verified Access endpoint.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessEndpoint * _Nullable verifiedAccessEndpoint; @end /** */ @interface AWSEC2DeleteVerifiedAccessGroupRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessGroupId; @end /** */ @interface AWSEC2DeleteVerifiedAccessGroupResult : AWSModel /**

The ID of the Verified Access group.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessGroup * _Nullable verifiedAccessGroup; @end /** */ @interface AWSEC2DeleteVerifiedAccessInstanceRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; @end /** */ @interface AWSEC2DeleteVerifiedAccessInstanceResult : AWSModel /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessInstance * _Nullable verifiedAccessInstance; @end /** */ @interface AWSEC2DeleteVerifiedAccessTrustProviderRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Verified Access trust provider.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessTrustProviderId; @end /** */ @interface AWSEC2DeleteVerifiedAccessTrustProviderResult : AWSModel /**

The ID of the Verified Access trust provider.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessTrustProvider * _Nullable verifiedAccessTrustProvider; @end /** */ @interface AWSEC2DeleteVolumeRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /** */ @interface AWSEC2DeleteVpcEndpointConnectionNotificationsRequest : AWSRequest /**

The IDs of the notifications.

*/ @property (nonatomic, strong) NSArray * _Nullable connectionNotificationIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DeleteVpcEndpointConnectionNotificationsResult : AWSModel /**

Information about the notifications that could not be deleted successfully.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessful; @end /** */ @interface AWSEC2DeleteVpcEndpointServiceConfigurationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the services.

*/ @property (nonatomic, strong) NSArray * _Nullable serviceIds; @end /** */ @interface AWSEC2DeleteVpcEndpointServiceConfigurationsResult : AWSModel /**

Information about the service configurations that were not deleted, if applicable.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessful; @end /** */ @interface AWSEC2DeleteVpcEndpointsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the VPC endpoints.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcEndpointIds; @end /** */ @interface AWSEC2DeleteVpcEndpointsResult : AWSModel /**

Information about the VPC endpoints that were not successfully deleted.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessful; @end /** */ @interface AWSEC2DeleteVpcPeeringConnectionRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPC peering connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /** */ @interface AWSEC2DeleteVpcPeeringConnectionResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2DeleteVpcRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Contains the parameters for DeleteVpnConnection.

Required parameters: [VpnConnectionId] */ @interface AWSEC2DeleteVpnConnectionRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; @end /**

Contains the parameters for DeleteVpnConnectionRoute.

Required parameters: [DestinationCidrBlock, VpnConnectionId] */ @interface AWSEC2DeleteVpnConnectionRouteRequest : AWSRequest /**

The CIDR block associated with the local subnet of the customer network.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The ID of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; @end /**

Contains the parameters for DeleteVpnGateway.

Required parameters: [VpnGatewayId] */ @interface AWSEC2DeleteVpnGatewayRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable vpnGatewayId; @end /** */ @interface AWSEC2DeprovisionByoipCidrRequest : AWSRequest /**

The address range, in CIDR notation. The prefix must be the same prefix that you specified when you provisioned the address range.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DeprovisionByoipCidrResult : AWSModel /**

Information about the address range.

*/ @property (nonatomic, strong) AWSEC2ByoipCidr * _Nullable byoipCidr; @end /** */ @interface AWSEC2DeprovisionIpamPoolCidrRequest : AWSRequest /**

The CIDR which you want to deprovision from the pool.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the pool that has the CIDR you want to deprovision.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; @end /** */ @interface AWSEC2DeprovisionIpamPoolCidrResult : AWSModel /**

The deprovisioned pool CIDR.

*/ @property (nonatomic, strong) AWSEC2IpamPoolCidr * _Nullable ipamPoolCidr; @end /** */ @interface AWSEC2DeprovisionPublicIpv4PoolCidrRequest : AWSRequest /**

The CIDR you want to deprovision from the pool. Enter the CIDR you want to deprovision with a netmask of /32. You must rerun this command for each IP address in the CIDR range. If your CIDR is a /24, you will have to run this command to deprovision each of the 256 IP addresses in the /24 CIDR.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the pool that you want to deprovision the CIDR from.

*/ @property (nonatomic, strong) NSString * _Nullable poolId; @end /** */ @interface AWSEC2DeprovisionPublicIpv4PoolCidrResult : AWSModel /**

The deprovisioned CIDRs.

*/ @property (nonatomic, strong) NSArray * _Nullable deprovisionedAddresses; /**

The ID of the pool that you deprovisioned the CIDR from.

*/ @property (nonatomic, strong) NSString * _Nullable poolId; @end /**

Contains the parameters for DeregisterImage.

Required parameters: [ImageId] */ @interface AWSEC2DeregisterImageRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2DeregisterInstanceEventNotificationAttributesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Information about the tag keys to deregister.

*/ @property (nonatomic, strong) AWSEC2DeregisterInstanceTagAttributeRequest * _Nullable instanceTagAttribute; @end /** */ @interface AWSEC2DeregisterInstanceEventNotificationAttributesResult : AWSModel /**

The resulting set of tag keys.

*/ @property (nonatomic, strong) AWSEC2InstanceTagNotificationAttribute * _Nullable instanceTagAttribute; @end /**

Information about the tag keys to deregister for the current Region. You can either specify individual tag keys or deregister all tag keys in the current Region. You must specify either IncludeAllTagsOfInstance or InstanceTagKeys in the request

*/ @interface AWSEC2DeregisterInstanceTagAttributeRequest : AWSModel /**

Indicates whether to deregister all tag keys in the current Region. Specify false to deregister all tag keys.

*/ @property (nonatomic, strong) NSNumber * _Nullable includeAllTagsOfInstance; /**

Information about the tag keys to deregister.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTagKeys; @end /** */ @interface AWSEC2DeregisterTransitGatewayMulticastGroupMembersRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IP address assigned to the transit gateway multicast group.

*/ @property (nonatomic, strong) NSString * _Nullable groupIpAddress; /**

The IDs of the group members' network interfaces.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaceIds; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /** */ @interface AWSEC2DeregisterTransitGatewayMulticastGroupMembersResult : AWSModel /**

Information about the deregistered members.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayMulticastDeregisteredGroupMembers * _Nullable deregisteredMulticastGroupMembers; @end /** */ @interface AWSEC2DeregisterTransitGatewayMulticastGroupSourcesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IP address assigned to the transit gateway multicast group.

*/ @property (nonatomic, strong) NSString * _Nullable groupIpAddress; /**

The IDs of the group sources' network interfaces.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaceIds; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /** */ @interface AWSEC2DeregisterTransitGatewayMulticastGroupSourcesResult : AWSModel /**

Information about the deregistered group sources.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayMulticastDeregisteredGroupSources * _Nullable deregisteredMulticastGroupSources; @end /** */ @interface AWSEC2DescribeAccountAttributesRequest : AWSRequest /**

The account attribute names.

*/ @property (nonatomic, strong) NSArray * _Nullable attributeNames; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DescribeAccountAttributesResult : AWSModel /**

Information about the account attributes.

*/ @property (nonatomic, strong) NSArray * _Nullable accountAttributes; @end /** */ @interface AWSEC2DescribeAddressTransfersRequest : AWSRequest /**

The allocation IDs of Elastic IP addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable allocationIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of address transfers to return in one page of results.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

Specify the pagination token from a previous request to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeAddressTransfersResult : AWSModel /**

The Elastic IP address transfer.

*/ @property (nonatomic, strong) NSArray * _Nullable addressTransfers; /**

Specify the pagination token from a previous request to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeAddressesAttributeRequest : AWSRequest /**

[EC2-VPC] The allocation IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable allocationIds; /**

The attribute of the IP address.

*/ @property (nonatomic, assign) AWSEC2AddressAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeAddressesAttributeResult : AWSModel /**

Information about the IP addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable addresses; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeAddressesRequest : AWSRequest /**

Information about the allocation IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable allocationIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

  • allocation-id - The allocation ID for the address.

  • association-id - The association ID for the address.

  • instance-id - The ID of the instance the address is associated with, if any.

  • network-border-group - A unique set of Availability Zones, Local Zones, or Wavelength Zones from where Amazon Web Services advertises IP addresses.

  • network-interface-id - The ID of the network interface that the address is associated with, if any.

  • network-interface-owner-id - The Amazon Web Services account ID of the owner.

  • private-ip-address - The private IP address associated with the Elastic IP address.

  • public-ip - The Elastic IP address, or the carrier IP address.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

One or more Elastic IP addresses.

Default: Describes all your Elastic IP addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable publicIps; @end /** */ @interface AWSEC2DescribeAddressesResult : AWSModel /**

Information about the Elastic IP addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable addresses; @end /** */ @interface AWSEC2DescribeAggregateIdFormatRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DescribeAggregateIdFormatResult : AWSModel /**

Information about each resource's ID format.

*/ @property (nonatomic, strong) NSArray * _Nullable statuses; /**

Indicates whether all resource types in the Region are configured to use longer IDs. This value is only true if all users are configured to use longer IDs for all resources types in the Region.

*/ @property (nonatomic, strong) NSNumber * _Nullable useLongIdsAggregated; @end /** */ @interface AWSEC2DescribeAvailabilityZonesRequest : AWSRequest /**

Include all Availability Zones, Local Zones, and Wavelength Zones regardless of your opt-in status.

If you do not use this parameter, the results include only the zones for the Regions where you have chosen the option to opt in.

*/ @property (nonatomic, strong) NSNumber * _Nullable allAvailabilityZones; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • group-name - For Availability Zones, use the Region name. For Local Zones, use the name of the group associated with the Local Zone (for example, us-west-2-lax-1) For Wavelength Zones, use the name of the group associated with the Wavelength Zone (for example, us-east-1-wl1-bos-wlz-1).

  • message - The Zone message.

  • opt-in-status - The opt-in status (opted-in | not-opted-in | opt-in-not-required).

  • parent-zoneID - The ID of the zone that handles some of the Local Zone and Wavelength Zone control plane operations, such as API calls.

  • parent-zoneName - The ID of the zone that handles some of the Local Zone and Wavelength Zone control plane operations, such as API calls.

  • region-name - The name of the Region for the Zone (for example, us-east-1).

  • state - The state of the Availability Zone, the Local Zone, or the Wavelength Zone (available).

  • zone-id - The ID of the Availability Zone (for example, use1-az1), the Local Zone (for example, usw2-lax1-az1), or the Wavelength Zone (for example, us-east-1-wl1-bos-wlz-1).

  • zone-name - The name of the Availability Zone (for example, us-east-1a), the Local Zone (for example, us-west-2-lax-1a), or the Wavelength Zone (for example, us-east-1-wl1-bos-wlz-1).

  • zone-type - The type of zone (availability-zone | local-zone | wavelength-zone).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the Availability Zones, Local Zones, and Wavelength Zones.

*/ @property (nonatomic, strong) NSArray * _Nullable zoneIds; /**

The names of the Availability Zones, Local Zones, and Wavelength Zones.

*/ @property (nonatomic, strong) NSArray * _Nullable zoneNames; @end /** */ @interface AWSEC2DescribeAvailabilityZonesResult : AWSModel /**

Information about the Availability Zones, Local Zones, and Wavelength Zones.

*/ @property (nonatomic, strong) NSArray * _Nullable availabilityZones; @end /** */ @interface AWSEC2DescribeAwsNetworkPerformanceMetricSubscriptionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeAwsNetworkPerformanceMetricSubscriptionsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Describes the current Infrastructure Performance subscriptions.

*/ @property (nonatomic, strong) NSArray * _Nullable subscriptions; @end /** */ @interface AWSEC2DescribeBundleTasksRequest : AWSRequest /**

The bundle task IDs.

Default: Describes all your bundle tasks.

*/ @property (nonatomic, strong) NSArray * _Nullable bundleIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • bundle-id - The ID of the bundle task.

  • error-code - If the task failed, the error code returned.

  • error-message - If the task failed, the error message returned.

  • instance-id - The ID of the instance.

  • progress - The level of task completion, as a percentage (for example, 20%).

  • s3-bucket - The Amazon S3 bucket to store the AMI.

  • s3-prefix - The beginning of the AMI name.

  • start-time - The time the task started (for example, 2013-09-15T17:15:20.000Z).

  • state - The state of the task (pending | waiting-for-shutdown | bundling | storing | cancelling | complete | failed).

  • update-time - The time of the most recent update for the task.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; @end /** */ @interface AWSEC2DescribeBundleTasksResult : AWSModel /**

Information about the bundle tasks.

*/ @property (nonatomic, strong) NSArray * _Nullable bundleTasks; @end /** */ @interface AWSEC2DescribeByoipCidrsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeByoipCidrsResult : AWSModel /**

Information about your address ranges.

*/ @property (nonatomic, strong) NSArray * _Nullable byoipCidrs; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeCapacityReservationFleetsRequest : AWSRequest /**

The IDs of the Capacity Reservation Fleets to describe.

*/ @property (nonatomic, strong) NSArray * _Nullable capacityReservationFleetIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • state - The state of the Fleet (submitted | modifying | active | partially_fulfilled | expiring | expired | cancelling | cancelled | failed).

  • instance-match-criteria - The instance matching criteria for the Fleet. Only open is supported.

  • tenancy - The tenancy of the Fleet (default | dedicated).

  • allocation-strategy - The allocation strategy used by the Fleet. Only prioritized is supported.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to use to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeCapacityReservationFleetsResult : AWSModel /**

Information about the Capacity Reservation Fleets.

*/ @property (nonatomic, strong) NSArray * _Nullable capacityReservationFleets; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeCapacityReservationsRequest : AWSRequest /**

The ID of the Capacity Reservation.

*/ @property (nonatomic, strong) NSArray * _Nullable capacityReservationIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • instance-type - The type of instance for which the Capacity Reservation reserves capacity.

  • owner-id - The ID of the Amazon Web Services account that owns the Capacity Reservation.

  • instance-platform - The type of operating system for which the Capacity Reservation reserves capacity.

  • availability-zone - The Availability Zone of the Capacity Reservation.

  • tenancy - Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can have one of the following tenancy settings:

    • default - The Capacity Reservation is created on hardware that is shared with other Amazon Web Services accounts.

    • dedicated - The Capacity Reservation is created on single-tenant hardware that is dedicated to a single Amazon Web Services account.

  • outpost-arn - The Amazon Resource Name (ARN) of the Outpost on which the Capacity Reservation was created.

  • state - The current state of the Capacity Reservation. A Capacity Reservation can be in one of the following states:

    • active- The Capacity Reservation is active and the capacity is available for your use.

    • expired - The Capacity Reservation expired automatically at the date and time specified in your request. The reserved capacity is no longer available for your use.

    • cancelled - The Capacity Reservation was cancelled. The reserved capacity is no longer available for your use.

    • pending - The Capacity Reservation request was successful but the capacity provisioning is still pending.

    • failed - The Capacity Reservation request has failed. A request might fail due to invalid request parameters, capacity constraints, or instance limit constraints. Failed requests are retained for 60 minutes.

  • start-date - The date and time at which the Capacity Reservation was started.

  • end-date - The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. The Capacity Reservation's state changes to expired when it reaches its end date and time.

  • end-date-type - Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end types:

    • unlimited - The Capacity Reservation remains active until you explicitly cancel it.

    • limited - The Capacity Reservation expires automatically at a specified date and time.

  • instance-match-criteria - Indicates the type of instance launches that the Capacity Reservation accepts. The options include:

    • open - The Capacity Reservation accepts all instances that have matching attributes (instance type, platform, and Availability Zone). Instances that have matching attributes launch into the Capacity Reservation automatically without specifying any additional parameters.

    • targeted - The Capacity Reservation only accepts instances that have matching attributes (instance type, platform, and Availability Zone), and explicitly target the Capacity Reservation. This ensures that only permitted instances can use the reserved capacity.

  • placement-group-arn - The ARN of the cluster placement group in which the Capacity Reservation was created.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to use to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeCapacityReservationsResult : AWSModel /**

Information about the Capacity Reservations.

*/ @property (nonatomic, strong) NSArray * _Nullable capacityReservations; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeCarrierGatewaysRequest : AWSRequest /**

One or more carrier gateway IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable carrierGatewayIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • carrier-gateway-id - The ID of the carrier gateway.

  • state - The state of the carrier gateway (pending | failed | available | deleting | deleted).

  • owner-id - The Amazon Web Services account ID of the owner of the carrier gateway.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC associated with the carrier gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeCarrierGatewaysResult : AWSModel /**

Information about the carrier gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable carrierGateways; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeClassicLinkInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • group-id - The ID of a VPC security group that's associated with the instance.

  • instance-id - The ID of the instance.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC to which the instance is linked.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The instance IDs. Must be instances linked to a VPC through ClassicLink.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

Constraint: If the value is greater than 1000, we return only 1000 items.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeClassicLinkInstancesResult : AWSModel /**

Information about one or more linked EC2-Classic instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instances; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeClientVpnAuthorizationRulesRequest : AWSRequest /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

  • description - The description of the authorization rule.

  • destination-cidr - The CIDR of the network to which the authorization rule applies.

  • group-id - The ID of the Active Directory group to which the authorization rule grants access.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeClientVpnAuthorizationRulesResult : AWSModel /**

Information about the authorization rules.

*/ @property (nonatomic, strong) NSArray * _Nullable authorizationRules; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeClientVpnConnectionsRequest : AWSRequest /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

  • connection-id - The ID of the connection.

  • username - For Active Directory client authentication, the user name of the client who established the client connection.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeClientVpnConnectionsResult : AWSModel /**

Information about the active and terminated client connections.

*/ @property (nonatomic, strong) NSArray * _Nullable connections; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeClientVpnEndpointsRequest : AWSRequest /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable clientVpnEndpointIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

  • endpoint-id - The ID of the Client VPN endpoint.

  • transport-protocol - The transport protocol (tcp | udp).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeClientVpnEndpointsResult : AWSModel /**

Information about the Client VPN endpoints.

*/ @property (nonatomic, strong) NSArray * _Nullable clientVpnEndpoints; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeClientVpnRoutesRequest : AWSRequest /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

  • destination-cidr - The CIDR of the route destination.

  • origin - How the route was associated with the Client VPN endpoint (associate | add-route).

  • target-subnet - The ID of the subnet through which traffic is routed.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeClientVpnRoutesResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the Client VPN endpoint routes.

*/ @property (nonatomic, strong) NSArray * _Nullable routes; @end /** */ @interface AWSEC2DescribeClientVpnTargetNetworksRequest : AWSRequest /**

The IDs of the target network associations.

*/ @property (nonatomic, strong) NSArray * _Nullable associationIds; /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

  • association-id - The ID of the association.

  • target-network-id - The ID of the subnet specified as the target network.

  • vpc-id - The ID of the VPC in which the target network is located.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeClientVpnTargetNetworksResult : AWSModel /**

Information about the associated target networks.

*/ @property (nonatomic, strong) NSArray * _Nullable clientVpnTargetNetworks; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeCoipPoolsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • coip-pool.local-gateway-route-table-id - The ID of the local gateway route table.

  • coip-pool.pool-id - The ID of the address pool.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the address pools.

*/ @property (nonatomic, strong) NSArray * _Nullable poolIds; @end /** */ @interface AWSEC2DescribeCoipPoolsResult : AWSModel /**

Information about the address pools.

*/ @property (nonatomic, strong) NSArray * _Nullable coipPools; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeConversionTasksRequest : AWSRequest /**

The conversion task IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable conversionTaskIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DescribeConversionTasksResult : AWSModel /**

Information about the conversion tasks.

*/ @property (nonatomic, strong) NSArray * _Nullable conversionTasks; @end /**

Contains the parameters for DescribeCustomerGateways.

*/ @interface AWSEC2DescribeCustomerGatewaysRequest : AWSRequest /**

One or more customer gateway IDs.

Default: Describes all your customer gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable customerGatewayIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • bgp-asn - The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).

  • customer-gateway-id - The ID of the customer gateway.

  • ip-address - The IP address of the customer gateway device's external interface.

  • state - The state of the customer gateway (pending | available | deleting | deleted).

  • type - The type of customer gateway. Currently, the only supported type is ipsec.1.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; @end /**

Contains the output of DescribeCustomerGateways.

*/ @interface AWSEC2DescribeCustomerGatewaysResult : AWSModel /**

Information about one or more customer gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable customerGateways; @end /** */ @interface AWSEC2DescribeDhcpOptionsRequest : AWSRequest /**

The IDs of one or more DHCP options sets.

Default: Describes all your DHCP options sets.

*/ @property (nonatomic, strong) NSArray * _Nullable dhcpOptionsIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • dhcp-options-id - The ID of a DHCP options set.

  • key - The key for one of the options (for example, domain-name).

  • value - The value for one of the options.

  • owner-id - The ID of the Amazon Web Services account that owns the DHCP options set.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeDhcpOptionsResult : AWSModel /**

Information about one or more DHCP options sets.

*/ @property (nonatomic, strong) NSArray * _Nullable dhcpOptions; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeEgressOnlyInternetGatewaysRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the egress-only internet gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable egressOnlyInternetGatewayIds; /**

The filters.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeEgressOnlyInternetGatewaysResult : AWSModel /**

Information about the egress-only internet gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable egressOnlyInternetGateways; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeElasticGpusRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Elastic Graphics accelerator IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable elasticGpuIds; /**

The filters.

  • availability-zone - The Availability Zone in which the Elastic Graphics accelerator resides.

  • elastic-gpu-health - The status of the Elastic Graphics accelerator (OK | IMPAIRED).

  • elastic-gpu-state - The state of the Elastic Graphics accelerator (ATTACHED).

  • elastic-gpu-type - The type of Elastic Graphics accelerator; for example, eg1.medium.

  • instance-id - The ID of the instance to which the Elastic Graphics accelerator is associated.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 5 and 1000.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to request the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeElasticGpusResult : AWSModel /**

Information about the Elastic Graphics accelerators.

*/ @property (nonatomic, strong) NSArray * _Nullable elasticGpuSet; /**

The total number of items to return. If the total number of items available is more than the value specified in max-items then a Next-Token will be provided in the output that you can use to resume pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeExportImageTasksRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the export image tasks.

*/ @property (nonatomic, strong) NSArray * _Nullable exportImageTaskIds; /**

Filter tasks using the task-state filter and one of the following values: active, completed, deleting, or deleted.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return in a single call.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

A token that indicates the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeExportImageTasksResult : AWSModel /**

Information about the export image tasks.

*/ @property (nonatomic, strong) NSArray * _Nullable exportImageTasks; /**

The token to use to get the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeExportTasksRequest : AWSRequest /**

The export task IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable exportTaskIds; /**

the filters for the export tasks.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; @end /** */ @interface AWSEC2DescribeExportTasksResult : AWSModel /**

Information about the export tasks.

*/ @property (nonatomic, strong) NSArray * _Nullable exportTasks; @end /** */ @interface AWSEC2DescribeFastLaunchImagesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Use the following filters to streamline results.

  • resource-type - The resource type for pre-provisioning.

  • launch-template - The launch template that is associated with the pre-provisioned Windows AMI.

  • owner-id - The owner ID for the pre-provisioning resource.

  • state - The current state of fast launching for the Windows AMI.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

Details for one or more Windows AMI image IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable imageIds; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeFastLaunchImagesResult : AWSModel /**

A collection of details about the fast-launch enabled Windows images that meet the requested criteria.

*/ @property (nonatomic, strong) NSArray * _Nullable fastLaunchImages; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /**

Describe details about a fast-launch enabled Windows image that meets the requested criteria. Criteria are defined by the DescribeFastLaunchImages action filters.

*/ @interface AWSEC2DescribeFastLaunchImagesSuccessItem : AWSModel /**

The image ID that identifies the fast-launch enabled Windows image.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The launch template that the fast-launch enabled Windows AMI uses when it launches Windows instances from pre-provisioned snapshots.

*/ @property (nonatomic, strong) AWSEC2FastLaunchLaunchTemplateSpecificationResponse * _Nullable launchTemplate; /**

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows faster launching.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxParallelLaunches; /**

The owner ID for the fast-launch enabled Windows AMI.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The resource type that is used for pre-provisioning the Windows AMI. Supported values include: snapshot.

*/ @property (nonatomic, assign) AWSEC2FastLaunchResourceType resourceType; /**

A group of parameters that are used for pre-provisioning the associated Windows AMI using snapshots.

*/ @property (nonatomic, strong) AWSEC2FastLaunchSnapshotConfigurationResponse * _Nullable snapshotConfiguration; /**

The current state of faster launching for the specified Windows AMI.

*/ @property (nonatomic, assign) AWSEC2FastLaunchStateCode state; /**

The reason that faster launching for the Windows AMI changed to the current state.

*/ @property (nonatomic, strong) NSString * _Nullable stateTransitionReason; /**

The time that faster launching for the Windows AMI changed to the current state.

*/ @property (nonatomic, strong) NSDate * _Nullable stateTransitionTime; @end /**

Describes fast snapshot restores for a snapshot.

*/ @interface AWSEC2DescribeFastSnapshotRestoreSuccessItem : AWSModel /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The time at which fast snapshot restores entered the disabled state.

*/ @property (nonatomic, strong) NSDate * _Nullable disabledTime; /**

The time at which fast snapshot restores entered the disabling state.

*/ @property (nonatomic, strong) NSDate * _Nullable disablingTime; /**

The time at which fast snapshot restores entered the enabled state.

*/ @property (nonatomic, strong) NSDate * _Nullable enabledTime; /**

The time at which fast snapshot restores entered the enabling state.

*/ @property (nonatomic, strong) NSDate * _Nullable enablingTime; /**

The time at which fast snapshot restores entered the optimizing state.

*/ @property (nonatomic, strong) NSDate * _Nullable optimizingTime; /**

The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.

*/ @property (nonatomic, strong) NSString * _Nullable ownerAlias; /**

The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The state of fast snapshot restores.

*/ @property (nonatomic, assign) AWSEC2FastSnapshotRestoreStateCode state; /**

The reason for the state transition. The possible values are as follows:

  • Client.UserInitiated - The state successfully transitioned to enabling or disabling.

  • Client.UserInitiated - Lifecycle state transition - The state successfully transitioned to optimizing, enabled, or disabled.

*/ @property (nonatomic, strong) NSString * _Nullable stateTransitionReason; @end /** */ @interface AWSEC2DescribeFastSnapshotRestoresRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters. The possible values are:

  • availability-zone: The Availability Zone of the snapshot.

  • owner-id: The ID of the Amazon Web Services account that enabled fast snapshot restore on the snapshot.

  • snapshot-id: The ID of the snapshot.

  • state: The state of fast snapshot restores for the snapshot (enabling | optimizing | enabled | disabling | disabled).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeFastSnapshotRestoresResult : AWSModel /**

Information about the state of fast snapshot restores.

*/ @property (nonatomic, strong) NSArray * _Nullable fastSnapshotRestores; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /**

Describes the instances that could not be launched by the fleet.

*/ @interface AWSEC2DescribeFleetError : AWSModel /**

The error code that indicates why the instance could not be launched. For more information about error codes, see Error codes.

*/ @property (nonatomic, strong) NSString * _Nullable errorCode; /**

The error message that describes why the instance could not be launched. For more information about error messages, see Error codes.

*/ @property (nonatomic, strong) NSString * _Nullable errorMessage; /**

The launch templates and overrides that were used for launching the instances. The values that you specify in the Overrides replace the values in the launch template.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateAndOverridesResponse * _Nullable launchTemplateAndOverrides; /**

Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.

*/ @property (nonatomic, assign) AWSEC2InstanceLifecycle lifecycle; @end /** */ @interface AWSEC2DescribeFleetHistoryRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The type of events to describe. By default, all events are described.

*/ @property (nonatomic, assign) AWSEC2FleetEventType eventType; /**

The ID of the EC2 Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable fleetId; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The start date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; @end /** */ @interface AWSEC2DescribeFleetHistoryResult : AWSModel /**

The ID of the EC Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable fleetId; /**

Information about the events in the history of the EC2 Fleet.

*/ @property (nonatomic, strong) NSArray * _Nullable historyRecords; /**

The last date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). All records up to this time were retrieved.

If nextToken indicates that there are more items, this value is not present.

*/ @property (nonatomic, strong) NSDate * _Nullable lastEvaluatedTime; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The start date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; @end /** */ @interface AWSEC2DescribeFleetInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • instance-type - The instance type.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The ID of the EC2 Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable fleetId; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeFleetInstancesResult : AWSModel /**

The running instances. This list is refreshed periodically and might be out of date.

*/ @property (nonatomic, strong) NSArray * _Nullable activeInstances; /**

The ID of the EC2 Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable fleetId; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /**

Describes the instances that were launched by the fleet.

*/ @interface AWSEC2DescribeFleetsInstances : AWSModel /**

The IDs of the instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; /**

The instance type.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The launch templates and overrides that were used for launching the instances. The values that you specify in the Overrides replace the values in the launch template.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateAndOverridesResponse * _Nullable launchTemplateAndOverrides; /**

Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.

*/ @property (nonatomic, assign) AWSEC2InstanceLifecycle lifecycle; /**

The value is Windows for Windows instances. Otherwise, the value is blank.

*/ @property (nonatomic, assign) AWSEC2PlatformValues platform; @end /** */ @interface AWSEC2DescribeFleetsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • activity-status - The progress of the EC2 Fleet ( error | pending-fulfillment | pending-termination | fulfilled).

  • excess-capacity-termination-policy - Indicates whether to terminate running instances if the target capacity is decreased below the current EC2 Fleet size (true | false).

  • fleet-state - The state of the EC2 Fleet (submitted | active | deleted | failed | deleted-running | deleted-terminating | modifying).

  • replace-unhealthy-instances - Indicates whether EC2 Fleet should replace unhealthy instances (true | false).

  • type - The type of request (instant | request | maintain).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the EC2 Fleets.

If a fleet is of type instant, you must specify the fleet ID, otherwise it does not appear in the response.

*/ @property (nonatomic, strong) NSArray * _Nullable fleetIds; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeFleetsResult : AWSModel /**

Information about the EC2 Fleets.

*/ @property (nonatomic, strong) NSArray * _Nullable fleets; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeFlowLogsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • deliver-log-status - The status of the logs delivery (SUCCESS | FAILED).

  • log-destination-type - The type of destination for the flow log data (cloud-watch-logs | s3 | kinesis-data-firehose).

  • flow-log-id - The ID of the flow log.

  • log-group-name - The name of the log group.

  • resource-id - The ID of the VPC, subnet, or network interface.

  • traffic-type - The type of traffic (ACCEPT | REJECT | ALL).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filter; /**

One or more flow log IDs.

Constraint: Maximum of 1000 flow log IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable flowLogIds; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to request the next page of items. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeFlowLogsResult : AWSModel /**

Information about the flow logs.

*/ @property (nonatomic, strong) NSArray * _Nullable flowLogs; /**

The token to request the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeFpgaImageAttributeRequest : AWSRequest /**

The AFI attribute.

*/ @property (nonatomic, assign) AWSEC2FpgaImageAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable fpgaImageId; @end /** */ @interface AWSEC2DescribeFpgaImageAttributeResult : AWSModel /**

Information about the attribute.

*/ @property (nonatomic, strong) AWSEC2FpgaImageAttribute * _Nullable fpgaImageAttribute; @end /** */ @interface AWSEC2DescribeFpgaImagesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • create-time - The creation time of the AFI.

  • fpga-image-id - The FPGA image identifier (AFI ID).

  • fpga-image-global-id - The global FPGA image identifier (AGFI ID).

  • name - The name of the AFI.

  • owner-id - The Amazon Web Services account ID of the AFI owner.

  • product-code - The product code.

  • shell-version - The version of the Amazon Web Services Shell that was used to create the bitstream.

  • state - The state of the AFI (pending | failed | available | unavailable).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • update-time - The time of the most recent update.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The AFI IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable fpgaImageIds; /**

The maximum number of results to return in a single call.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Filters the AFI by owner. Specify an Amazon Web Services account ID, self (owner is the sender of the request), or an Amazon Web Services owner alias (valid values are amazon | aws-marketplace).

*/ @property (nonatomic, strong) NSArray * _Nullable owners; @end /** */ @interface AWSEC2DescribeFpgaImagesResult : AWSModel /**

Information about the FPGA images.

*/ @property (nonatomic, strong) NSArray * _Nullable fpgaImages; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeHostReservationOfferingsRequest : AWSRequest /**

The filters.

  • instance-family - The instance family of the offering (for example, m4).

  • payment-option - The payment option (NoUpfront | PartialUpfront | AllUpfront).

*/ @property (nonatomic, strong) NSArray * _Nullable filter; /**

This is the maximum duration of the reservation to purchase, specified in seconds. Reservations are available in one-year and three-year terms. The number of seconds specified must be the number of seconds in a year (365x24x60x60) times one of the supported durations (1 or 3). For example, specify 94608000 for three years.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxDuration; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

This is the minimum duration of the reservation you'd like to purchase, specified in seconds. Reservations are available in one-year and three-year terms. The number of seconds specified must be the number of seconds in a year (365x24x60x60) times one of the supported durations (1 or 3). For example, specify 31536000 for one year.

*/ @property (nonatomic, strong) NSNumber * _Nullable minDuration; /**

The token to use to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the reservation offering.

*/ @property (nonatomic, strong) NSString * _Nullable offeringId; @end /** */ @interface AWSEC2DescribeHostReservationOfferingsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the offerings.

*/ @property (nonatomic, strong) NSArray * _Nullable offeringSet; @end /** */ @interface AWSEC2DescribeHostReservationsRequest : AWSRequest /**

The filters.

  • instance-family - The instance family (for example, m4).

  • payment-option - The payment option (NoUpfront | PartialUpfront | AllUpfront).

  • state - The state of the reservation (payment-pending | payment-failed | active | retired).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filter; /**

The host reservation IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable hostReservationIdSet; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to use to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeHostReservationsResult : AWSModel /**

Details about the reservation's configuration.

*/ @property (nonatomic, strong) NSArray * _Nullable hostReservationSet; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeHostsRequest : AWSRequest /**

The filters.

  • auto-placement - Whether auto-placement is enabled or disabled (on | off).

  • availability-zone - The Availability Zone of the host.

  • client-token - The idempotency token that you provided when you allocated the host.

  • host-reservation-id - The ID of the reservation assigned to this host.

  • instance-type - The instance type size that the Dedicated Host is configured to support.

  • state - The allocation state of the Dedicated Host (available | under-assessment | permanent-failure | released | released-permanent-failure).

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filter; /**

The IDs of the Dedicated Hosts. The IDs are used for targeted instance launches.

*/ @property (nonatomic, strong) NSArray * _Nullable hostIds; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

You cannot specify this parameter and the host IDs parameter in the same request.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to use to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeHostsResult : AWSModel /**

Information about the Dedicated Hosts.

*/ @property (nonatomic, strong) NSArray * _Nullable hosts; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIamInstanceProfileAssociationsRequest : AWSRequest /**

The IAM instance profile associations.

*/ @property (nonatomic, strong) NSArray * _Nullable associationIds; /**

The filters.

  • instance-id - The ID of the instance.

  • state - The state of the association (associating | associated | disassociating).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIamInstanceProfileAssociationsResult : AWSModel /**

Information about the IAM instance profile associations.

*/ @property (nonatomic, strong) NSArray * _Nullable iamInstanceProfileAssociations; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIdFormatRequest : AWSRequest /**

The type of resource: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway

*/ @property (nonatomic, strong) NSString * _Nullable resource; @end /** */ @interface AWSEC2DescribeIdFormatResult : AWSModel /**

Information about the ID format for the resource.

*/ @property (nonatomic, strong) NSArray * _Nullable statuses; @end /** */ @interface AWSEC2DescribeIdentityIdFormatRequest : AWSRequest /**

The ARN of the principal, which can be an IAM role, IAM user, or the root user.

*/ @property (nonatomic, strong) NSString * _Nullable principalArn; /**

The type of resource: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway

*/ @property (nonatomic, strong) NSString * _Nullable resource; @end /** */ @interface AWSEC2DescribeIdentityIdFormatResult : AWSModel /**

Information about the ID format for the resources.

*/ @property (nonatomic, strong) NSArray * _Nullable statuses; @end /**

Contains the parameters for DescribeImageAttribute.

Required parameters: [Attribute, ImageId] */ @interface AWSEC2DescribeImageAttributeRequest : AWSRequest /**

The AMI attribute.

Note: The blockDeviceMapping attribute is deprecated. Using this attribute returns the Client.AuthFailure error. To get information about the block device mappings for an AMI, use the DescribeImages action.

*/ @property (nonatomic, assign) AWSEC2ImageAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2DescribeImagesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Scopes the images by users with explicit launch permissions. Specify an Amazon Web Services account ID, self (the sender of the request), or all (public AMIs).

  • If you specify an Amazon Web Services account ID that is not your own, only AMIs shared with that specific Amazon Web Services account ID are returned. However, AMIs that are shared with the account’s organization or organizational unit (OU) are not returned.

  • If you specify self or your own Amazon Web Services account ID, AMIs shared with your account are returned. In addition, AMIs that are shared with the organization or OU of which you are member are also returned.

  • If you specify all, all public AMIs are returned.

*/ @property (nonatomic, strong) NSArray * _Nullable executableUsers; /**

The filters.

  • architecture - The image architecture (i386 | x86_64 | arm64 | x86_64_mac | arm64_mac).

  • block-device-mapping.delete-on-termination - A Boolean value that indicates whether the Amazon EBS volume is deleted on instance termination.

  • block-device-mapping.device-name - The device name specified in the block device mapping (for example, /dev/sdh or xvdh).

  • block-device-mapping.snapshot-id - The ID of the snapshot used for the Amazon EBS volume.

  • block-device-mapping.volume-size - The volume size of the Amazon EBS volume, in GiB.

  • block-device-mapping.volume-type - The volume type of the Amazon EBS volume (io1 | io2 | gp2 | gp3 | sc1 | st1 | standard).

  • block-device-mapping.encrypted - A Boolean that indicates whether the Amazon EBS volume is encrypted.

  • creation-date - The time when the image was created, in the ISO 8601 format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for example, 2021-09-29T11:04:43.305Z. You can use a wildcard (*), for example, 2021-09-29T*, which matches an entire day.

  • description - The description of the image (provided during image creation).

  • ena-support - A Boolean that indicates whether enhanced networking with ENA is enabled.

  • hypervisor - The hypervisor type (ovm | xen).

  • image-id - The ID of the image.

  • image-type - The image type (machine | kernel | ramdisk).

  • is-public - A Boolean that indicates whether the image is public.

  • kernel-id - The kernel ID.

  • manifest-location - The location of the image manifest.

  • name - The name of the AMI (provided during image creation).

  • owner-alias - The owner alias (amazon | aws-marketplace). The valid aliases are defined in an Amazon-maintained list. This is not the Amazon Web Services account alias that can be set using the IAM console. We recommend that you use the Owner request parameter instead of this filter.

  • owner-id - The Amazon Web Services account ID of the owner. We recommend that you use the Owner request parameter instead of this filter.

  • platform - The platform. The only supported value is windows.

  • product-code - The product code.

  • product-code.type - The type of the product code (marketplace).

  • ramdisk-id - The RAM disk ID.

  • root-device-name - The device name of the root device volume (for example, /dev/sda1).

  • root-device-type - The type of the root device volume (ebs | instance-store).

  • state - The state of the image (available | pending | failed).

  • state-reason-code - The reason code for the state change.

  • state-reason-message - The message for the state change.

  • sriov-net-support - A value of simple indicates that enhanced networking with the Intel 82599 VF interface is enabled.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • virtualization-type - The virtualization type (paravirtual | hvm).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The image IDs.

Default: Describes all images available to you.

*/ @property (nonatomic, strong) NSArray * _Nullable imageIds; /**

Specifies whether to include deprecated AMIs.

Default: No deprecated AMIs are included in the response.

If you are the AMI owner, all deprecated AMIs appear in the response regardless of what you specify for this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable includeDeprecated; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Scopes the results to images with the specified owners. You can specify a combination of Amazon Web Services account IDs, self, amazon, and aws-marketplace. If you omit this parameter, the results include all images for which you have launch permissions, regardless of ownership.

*/ @property (nonatomic, strong) NSArray * _Nullable owners; @end /** */ @interface AWSEC2DescribeImagesResult : AWSModel /**

Information about the images.

*/ @property (nonatomic, strong) NSArray * _Nullable images; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeImportImageTasksRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Filter tasks using the task-state filter and one of the following values: active, completed, deleting, or deleted.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the import image tasks.

*/ @property (nonatomic, strong) NSArray * _Nullable importTaskIds; /**

The maximum number of results to return in a single call.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

A token that indicates the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeImportImageTasksResult : AWSModel /**

A list of zero or more import image tasks that are currently active or were completed or canceled in the previous 7 days.

*/ @property (nonatomic, strong) NSArray * _Nullable importImageTasks; /**

The token to use to get the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeImportSnapshotTasksRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

A list of import snapshot task IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable importTaskIds; /**

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

A token that indicates the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeImportSnapshotTasksResult : AWSModel /**

A list of zero or more import snapshot tasks that are currently active or were completed or canceled in the previous 7 days.

*/ @property (nonatomic, strong) NSArray * _Nullable importSnapshotTasks; /**

The token to use to get the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceAttributeRequest : AWSRequest /**

The instance attribute.

Note: The enaSupport attribute is not supported at this time.

*/ @property (nonatomic, assign) AWSEC2InstanceAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /** */ @interface AWSEC2DescribeInstanceConnectEndpointsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • instance-connect-endpoint-id - The ID of the EC2 Instance Connect Endpoint.

  • state - The state of the EC2 Instance Connect Endpoint (create-in-progress | create-complete | create-failed | delete-in-progress | delete-complete | delete-failed).

  • subnet-id - The ID of the subnet in which the EC2 Instance Connect Endpoint was created.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • tag-value - The value of a tag assigned to the resource. Use this filter to find all resources that have a tag with a specific value, regardless of tag key.

  • vpc-id - The ID of the VPC in which the EC2 Instance Connect Endpoint was created.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

One or more EC2 Instance Connect Endpoint IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceConnectEndpointIds; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceConnectEndpointsResult : AWSModel /**

Information about the EC2 Instance Connect Endpoints.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceConnectEndpoints; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceCreditSpecificationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • instance-id - The ID of the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The instance IDs.

Default: Describes all your instances.

Constraints: Maximum 1000 explicitly specified instance IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

You cannot specify this parameter and the instance IDs parameter in the same call.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceCreditSpecificationsResult : AWSModel /**

Information about the credit option for CPU usage of an instance.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceCreditSpecifications; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceEventNotificationAttributesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DescribeInstanceEventNotificationAttributesResult : AWSModel /**

Information about the registered tag keys.

*/ @property (nonatomic, strong) AWSEC2InstanceTagNotificationAttribute * _Nullable instanceTagAttribute; @end /** Describe instance event windows by InstanceEventWindow. */ @interface AWSEC2DescribeInstanceEventWindowsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • dedicated-host-id - The event windows associated with the specified Dedicated Host ID.

  • event-window-name - The event windows associated with the specified names.

  • instance-id - The event windows associated with the specified instance ID.

  • instance-tag - The event windows associated with the specified tag and value.

  • instance-tag-key - The event windows associated with the specified tag key, regardless of the value.

  • instance-tag-value - The event windows associated with the specified tag value, regardless of the key.

  • tag:<key> - The key/value combination of a tag assigned to the event window. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value CMX, specify tag:Owner for the filter name and CMX for the filter value.

  • tag-key - The key of a tag assigned to the event window. Use this filter to find all event windows that have a tag with a specific key, regardless of the tag value.

  • tag-value - The value of a tag assigned to the event window. Use this filter to find all event windows that have a tag with a specific value, regardless of the tag key.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the event windows.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceEventWindowIds; /**

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 20 and 500. You cannot specify this parameter and the event window IDs parameter in the same call.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to request the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceEventWindowsResult : AWSModel /**

Information about the event windows.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceEventWindows; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceStatusRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • availability-zone - The Availability Zone of the instance.

  • event.code - The code for the scheduled event (instance-reboot | system-reboot | system-maintenance | instance-retirement | instance-stop).

  • event.description - A description of the event.

  • event.instance-event-id - The ID of the event whose date and time you are modifying.

  • event.not-after - The latest end time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

  • event.not-before - The earliest start time for the scheduled event (for example, 2014-09-15T17:15:20.000Z).

  • event.not-before-deadline - The deadline for starting the event (for example, 2014-09-15T17:15:20.000Z).

  • instance-state-code - The code for the instance state, as a 16-bit unsigned integer. The high byte is used for internal purposes and should be ignored. The low byte is set based on the state represented. The valid values are 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

  • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

  • instance-status.reachability - Filters on instance status where the name is reachability (passed | failed | initializing | insufficient-data).

  • instance-status.status - The status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

  • system-status.reachability - Filters on system status where the name is reachability (passed | failed | initializing | insufficient-data).

  • system-status.status - The system status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

When true, includes the health status for all instances. When false, includes the health status for running instances only.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable includeAllInstances; /**

The instance IDs.

Default: Describes all your instances.

Constraints: Maximum 100 explicitly specified instance IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

You cannot specify this parameter and the instance IDs parameter in the same request.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceStatusResult : AWSModel /**

Information about the status of the instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceStatuses; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceTypeOfferingsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

  • location - This depends on the location type. For example, if the location type is region (default), the location is the Region code (for example, us-east-2.)

  • instance-type - The instance type. For example, c5.2xlarge.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The location type.

*/ @property (nonatomic, assign) AWSEC2LocationType locationType; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceTypeOfferingsResult : AWSModel /**

The instance types offered.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTypeOfferings; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceTypesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

  • auto-recovery-supported - Indicates whether Amazon CloudWatch action based recovery is supported (true | false).

  • bare-metal - Indicates whether it is a bare metal instance type (true | false).

  • burstable-performance-supported - Indicates whether the instance type is a burstable performance T instance type (true | false).

  • current-generation - Indicates whether this instance type is the latest generation instance type of an instance family (true | false).

  • ebs-info.ebs-optimized-info.baseline-bandwidth-in-mbps - The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.

  • ebs-info.ebs-optimized-info.baseline-iops - The baseline input/output storage operations per second for an EBS-optimized instance type.

  • ebs-info.ebs-optimized-info.baseline-throughput-in-mbps - The baseline throughput performance for an EBS-optimized instance type, in MB/s.

  • ebs-info.ebs-optimized-info.maximum-bandwidth-in-mbps - The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.

  • ebs-info.ebs-optimized-info.maximum-iops - The maximum input/output storage operations per second for an EBS-optimized instance type.

  • ebs-info.ebs-optimized-info.maximum-throughput-in-mbps - The maximum throughput performance for an EBS-optimized instance type, in MB/s.

  • ebs-info.ebs-optimized-support - Indicates whether the instance type is EBS-optimized (supported | unsupported | default).

  • ebs-info.encryption-support - Indicates whether EBS encryption is supported (supported | unsupported).

  • ebs-info.nvme-support - Indicates whether non-volatile memory express (NVMe) is supported for EBS volumes (required | supported | unsupported).

  • free-tier-eligible - Indicates whether the instance type is eligible to use in the free tier (true | false).

  • hibernation-supported - Indicates whether On-Demand hibernation is supported (true | false).

  • hypervisor - The hypervisor (nitro | xen).

  • instance-storage-info.disk.count - The number of local disks.

  • instance-storage-info.disk.size-in-gb - The storage size of each instance storage disk, in GB.

  • instance-storage-info.disk.type - The storage technology for the local instance storage disks (hdd | ssd).

  • instance-storage-info.encryption-support - Indicates whether data is encrypted at rest (required | supported | unsupported).

  • instance-storage-info.nvme-support - Indicates whether non-volatile memory express (NVMe) is supported for instance store (required | supported | unsupported).

  • instance-storage-info.total-size-in-gb - The total amount of storage available from all local instance storage, in GB.

  • instance-storage-supported - Indicates whether the instance type has local instance storage (true | false).

  • instance-type - The instance type (for example c5.2xlarge or c5*).

  • memory-info.size-in-mib - The memory size.

  • network-info.efa-info.maximum-efa-interfaces - The maximum number of Elastic Fabric Adapters (EFAs) per instance.

  • network-info.efa-supported - Indicates whether the instance type supports Elastic Fabric Adapter (EFA) (true | false).

  • network-info.ena-support - Indicates whether Elastic Network Adapter (ENA) is supported or required (required | supported | unsupported).

  • network-info.encryption-in-transit-supported - Indicates whether the instance type automatically encrypts in-transit traffic between instances (true | false).

  • network-info.ipv4-addresses-per-interface - The maximum number of private IPv4 addresses per network interface.

  • network-info.ipv6-addresses-per-interface - The maximum number of private IPv6 addresses per network interface.

  • network-info.ipv6-supported - Indicates whether the instance type supports IPv6 (true | false).

  • network-info.maximum-network-cards - The maximum number of network cards per instance.

  • network-info.maximum-network-interfaces - The maximum number of network interfaces per instance.

  • network-info.network-performance - The network performance (for example, "25 Gigabit").

  • nitro-enclaves-support - Indicates whether Nitro Enclaves is supported (supported | unsupported).

  • nitro-tpm-support - Indicates whether NitroTPM is supported (supported | unsupported).

  • nitro-tpm-info.supported-versions - The supported NitroTPM version (2.0).

  • processor-info.supported-architecture - The CPU architecture (arm64 | i386 | x86_64).

  • processor-info.sustained-clock-speed-in-ghz - The CPU clock speed, in GHz.

  • processor-info.supported-features - The supported CPU features (amd-sev-snp).

  • supported-boot-mode - The boot mode (legacy-bios | uefi).

  • supported-root-device-type - The root device type (ebs | instance-store).

  • supported-usage-class - The usage class (on-demand | spot).

  • supported-virtualization-type - The virtualization type (hvm | paravirtual).

  • vcpu-info.default-cores - The default number of cores for the instance type.

  • vcpu-info.default-threads-per-core - The default number of threads per core for the instance type.

  • vcpu-info.default-vcpus - The default number of vCPUs for the instance type.

  • vcpu-info.valid-cores - The number of cores that can be configured for the instance type.

  • vcpu-info.valid-threads-per-core - The number of threads per core that can be configured for the instance type. For example, "1" or "1,2".

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The instance types. For more information, see Instance types in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTypes; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstanceTypesResult : AWSModel /**

The instance type. For more information, see Instance types in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTypes; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • affinity - The affinity setting for an instance running on a Dedicated Host (default | host).

  • architecture - The instance architecture (i386 | x86_64 | arm64).

  • availability-zone - The Availability Zone of the instance.

  • block-device-mapping.attach-time - The attach time for an EBS volume mapped to the instance, for example, 2010-09-15T17:15:20.000Z.

  • block-device-mapping.delete-on-termination - A Boolean that indicates whether the EBS volume is deleted on instance termination.

  • block-device-mapping.device-name - The device name specified in the block device mapping (for example, /dev/sdh or xvdh).

  • block-device-mapping.status - The status for the EBS volume (attaching | attached | detaching | detached).

  • block-device-mapping.volume-id - The volume ID of the EBS volume.

  • capacity-reservation-id - The ID of the Capacity Reservation into which the instance was launched.

  • client-token - The idempotency token you provided when you launched the instance.

  • dns-name - The public DNS name of the instance.

  • hibernation-options.configured - A Boolean that indicates whether the instance is enabled for hibernation. A value of true means that the instance is enabled for hibernation.

  • host-id - The ID of the Dedicated Host on which the instance is running, if applicable.

  • hypervisor - The hypervisor type of the instance (ovm | xen). The value xen is used for both Xen and Nitro hypervisors.

  • iam-instance-profile.arn - The instance profile associated with the instance. Specified as an ARN.

  • image-id - The ID of the image used to launch the instance.

  • instance-id - The ID of the instance.

  • instance-lifecycle - Indicates whether this is a Spot Instance or a Scheduled Instance (spot | scheduled).

  • instance-state-code - The state of the instance, as a 16-bit unsigned integer. The high byte is used for internal purposes and should be ignored. The low byte is set based on the state represented. The valid values are: 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped).

  • instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped).

  • instance-type - The type of instance (for example, t2.micro).

  • instance.group-id - The ID of the security group for the instance.

  • instance.group-name - The name of the security group for the instance.

  • ip-address - The public IPv4 address of the instance.

  • kernel-id - The kernel ID.

  • key-name - The name of the key pair used when the instance was launched.

  • launch-index - When launching multiple instances, this is the index for the instance in the launch group (for example, 0, 1, 2, and so on).

  • launch-time - The time when the instance was launched, in the ISO 8601 format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for example, 2021-09-29T11:04:43.305Z. You can use a wildcard (*), for example, 2021-09-29T*, which matches an entire day.

  • metadata-options.http-tokens - The metadata request authorization state (optional | required)

  • metadata-options.http-put-response-hop-limit - The HTTP metadata request put response hop limit (integer, possible values 1 to 64)

  • metadata-options.http-endpoint - The status of access to the HTTP metadata endpoint on your instance (enabled | disabled)

  • metadata-options.instance-metadata-tags - The status of access to instance tags from the instance metadata (enabled | disabled)

  • monitoring-state - Indicates whether detailed monitoring is enabled (disabled | enabled).

  • network-interface.addresses.private-ip-address - The private IPv4 address associated with the network interface.

  • network-interface.addresses.primary - Specifies whether the IPv4 address of the network interface is the primary private IPv4 address.

  • network-interface.addresses.association.public-ip - The ID of the association of an Elastic IP address (IPv4) with a network interface.

  • network-interface.addresses.association.ip-owner-id - The owner ID of the private IPv4 address associated with the network interface.

  • network-interface.association.public-ip - The address of the Elastic IP address (IPv4) bound to the network interface.

  • network-interface.association.ip-owner-id - The owner of the Elastic IP address (IPv4) associated with the network interface.

  • network-interface.association.allocation-id - The allocation ID returned when you allocated the Elastic IP address (IPv4) for your network interface.

  • network-interface.association.association-id - The association ID returned when the network interface was associated with an IPv4 address.

  • network-interface.attachment.attachment-id - The ID of the interface attachment.

  • network-interface.attachment.instance-id - The ID of the instance to which the network interface is attached.

  • network-interface.attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

  • network-interface.attachment.device-index - The device index to which the network interface is attached.

  • network-interface.attachment.status - The status of the attachment (attaching | attached | detaching | detached).

  • network-interface.attachment.attach-time - The time that the network interface was attached to an instance.

  • network-interface.attachment.delete-on-termination - Specifies whether the attachment is deleted when an instance is terminated.

  • network-interface.availability-zone - The Availability Zone for the network interface.

  • network-interface.description - The description of the network interface.

  • network-interface.group-id - The ID of a security group associated with the network interface.

  • network-interface.group-name - The name of a security group associated with the network interface.

  • network-interface.ipv6-addresses.ipv6-address - The IPv6 address associated with the network interface.

  • network-interface.mac-address - The MAC address of the network interface.

  • network-interface.network-interface-id - The ID of the network interface.

  • network-interface.owner-id - The ID of the owner of the network interface.

  • network-interface.private-dns-name - The private DNS name of the network interface.

  • network-interface.requester-id - The requester ID for the network interface.

  • network-interface.requester-managed - Indicates whether the network interface is being managed by Amazon Web Services.

  • network-interface.status - The status of the network interface (available) | in-use).

  • network-interface.source-dest-check - Whether the network interface performs source/destination checking. A value of true means that checking is enabled, and false means that checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • network-interface.subnet-id - The ID of the subnet for the network interface.

  • network-interface.vpc-id - The ID of the VPC for the network interface.

  • outpost-arn - The Amazon Resource Name (ARN) of the Outpost.

  • owner-id - The Amazon Web Services account ID of the instance owner.

  • placement-group-name - The name of the placement group for the instance.

  • placement-partition-number - The partition in which the instance is located.

  • platform - The platform. To list only Windows instances, use windows.

  • private-dns-name - The private IPv4 DNS name of the instance.

  • private-ip-address - The private IPv4 address of the instance.

  • product-code - The product code associated with the AMI used to launch the instance.

  • product-code.type - The type of product code (devpay | marketplace).

  • ramdisk-id - The RAM disk ID.

  • reason - The reason for the current state of the instance (for example, shows "User Initiated [date]" when you stop or terminate the instance). Similar to the state-reason-code filter.

  • requester-id - The ID of the entity that launched the instance on your behalf (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • reservation-id - The ID of the instance's reservation. A reservation ID is created any time you launch an instance. A reservation ID has a one-to-one relationship with an instance launch request, but can be associated with more than one instance if you launch multiple instances using the same launch request. For example, if you launch one instance, you get one reservation ID. If you launch ten instances using the same launch request, you also get one reservation ID.

  • root-device-name - The device name of the root device volume (for example, /dev/sda1).

  • root-device-type - The type of the root device volume (ebs | instance-store).

  • source-dest-check - Indicates whether the instance performs source/destination checking. A value of true means that checking is enabled, and false means that checking is disabled. The value must be false for the instance to perform network address translation (NAT) in your VPC.

  • spot-instance-request-id - The ID of the Spot Instance request.

  • state-reason-code - The reason code for the state change.

  • state-reason-message - A message that describes the state change.

  • subnet-id - The ID of the subnet for the instance.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources that have a tag with a specific key, regardless of the tag value.

  • tenancy - The tenancy of an instance (dedicated | default | host).

  • virtualization-type - The virtualization type of the instance (paravirtual | hvm).

  • vpc-id - The ID of the VPC that the instance is running in.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The instance IDs.

Default: Describes all your instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

You cannot specify this parameter and the instance IDs parameter in the same request.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInstancesResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the reservations.

*/ @property (nonatomic, strong) NSArray * _Nullable reservations; @end /** */ @interface AWSEC2DescribeInternetGatewaysRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • attachment.state - The current state of the attachment between the gateway and the VPC (available). Present only if a VPC is attached.

  • attachment.vpc-id - The ID of an attached VPC.

  • internet-gateway-id - The ID of the Internet gateway.

  • owner-id - The ID of the Amazon Web Services account that owns the internet gateway.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the internet gateways.

Default: Describes all your internet gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable internetGatewayIds; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeInternetGatewaysResult : AWSModel /**

Information about one or more internet gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable internetGateways; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIpamPoolsRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters for the request. For more information about filtering, see Filtering CLI output.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the IPAM pools you would like information on.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamPoolIds; /**

The maximum number of results to return in the request.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIpamPoolsResult : AWSModel /**

Information about the IPAM pools.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamPools; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIpamResourceDiscoveriesRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The resource discovery filters.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IPAM resource discovery IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamResourceDiscoveryIds; /**

The maximum number of resource discoveries to return in one page of results.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

Specify the pagination token from a previous request to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIpamResourceDiscoveriesResult : AWSModel /**

The resource discoveries.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamResourceDiscoveries; /**

Specify the pagination token from a previous request to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIpamResourceDiscoveryAssociationsRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The resource discovery association filters.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The resource discovery association IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamResourceDiscoveryAssociationIds; /**

The maximum number of resource discovery associations to return in one page of results.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

Specify the pagination token from a previous request to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIpamResourceDiscoveryAssociationsResult : AWSModel /**

The resource discovery associations.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamResourceDiscoveryAssociations; /**

Specify the pagination token from a previous request to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIpamScopesRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters for the request. For more information about filtering, see Filtering CLI output.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the scopes you want information on.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamScopeIds; /**

The maximum number of results to return in the request.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIpamScopesResult : AWSModel /**

The scopes you want information on.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamScopes; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIpamsRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters for the request. For more information about filtering, see Filtering CLI output.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the IPAMs you want information on.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamIds; /**

The maximum number of results to return in the request.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIpamsResult : AWSModel /**

Information about the IPAMs.

*/ @property (nonatomic, strong) NSArray * _Nullable ipams; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeIpv6PoolsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the IPv6 address pools.

*/ @property (nonatomic, strong) NSArray * _Nullable poolIds; @end /** */ @interface AWSEC2DescribeIpv6PoolsResult : AWSModel /**

Information about the IPv6 address pools.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Pools; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeKeyPairsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • key-pair-id - The ID of the key pair.

  • fingerprint - The fingerprint of the key pair.

  • key-name - The name of the key pair.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

If true, the public key material is included in the response.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable includePublicKey; /**

The key pair names.

Default: Describes all of your key pairs.

*/ @property (nonatomic, strong) NSArray * _Nullable keyNames; /**

The IDs of the key pairs.

*/ @property (nonatomic, strong) NSArray * _Nullable keyPairIds; @end /** */ @interface AWSEC2DescribeKeyPairsResult : AWSModel /**

Information about the key pairs.

*/ @property (nonatomic, strong) NSArray * _Nullable keyPairs; @end /** */ @interface AWSEC2DescribeLaunchTemplateVersionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • create-time - The time the launch template version was created.

  • ebs-optimized - A boolean that indicates whether the instance is optimized for Amazon EBS I/O.

  • http-endpoint - Indicates whether the HTTP metadata endpoint on your instances is enabled (enabled | disabled).

  • http-protocol-ipv4 - Indicates whether the IPv4 endpoint for the instance metadata service is enabled (enabled | disabled).

  • host-resource-group-arn - The ARN of the host resource group in which to launch the instances.

  • http-tokens - The state of token usage for your instance metadata requests (optional | required).

  • iam-instance-profile - The ARN of the IAM instance profile.

  • image-id - The ID of the AMI.

  • instance-type - The instance type.

  • is-default-version - A boolean that indicates whether the launch template version is the default version.

  • kernel-id - The kernel ID.

  • license-configuration-arn - The ARN of the license configuration.

  • network-card-index - The index of the network card.

  • ram-disk-id - The RAM disk ID.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The ID of the launch template.

To describe one or more versions of a specified launch template, you must specify either the LaunchTemplateId or the LaunchTemplateName, but not both.

To describe all the latest or default launch template versions in your account, you must omit this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

To describe one or more versions of a specified launch template, you must specify either the LaunchTemplateName or the LaunchTemplateId, but not both.

To describe all the latest or default launch template versions in your account, you must omit this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 1 and 200.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The version number up to which to describe launch template versions.

*/ @property (nonatomic, strong) NSString * _Nullable maxVersion; /**

The version number after which to describe launch template versions.

*/ @property (nonatomic, strong) NSString * _Nullable minVersion; /**

The token to request the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

If true, and if a Systems Manager parameter is specified for ImageId, the AMI ID is displayed in the response for imageId.

If false, and if a Systems Manager parameter is specified for ImageId, the parameter is displayed in the response for imageId.

For more information, see Use a Systems Manager parameter instead of an AMI ID in the Amazon Elastic Compute Cloud User Guide.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable resolveAlias; /**

One or more versions of the launch template. Valid values depend on whether you are describing a specified launch template (by ID or name) or all launch templates in your account.

To describe one or more versions of a specified launch template, valid values are $Latest, $Default, and numbers.

To describe all launch templates in your account that are defined as the latest version, the valid value is $Latest. To describe all launch templates in your account that are defined as the default version, the valid value is $Default. You can specify $Latest and $Default in the same request. You cannot specify numbers.

*/ @property (nonatomic, strong) NSArray * _Nullable versions; @end /** */ @interface AWSEC2DescribeLaunchTemplateVersionsResult : AWSModel /**

Information about the launch template versions.

*/ @property (nonatomic, strong) NSArray * _Nullable launchTemplateVersions; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLaunchTemplatesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • create-time - The time the launch template was created.

  • launch-template-name - The name of the launch template.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

One or more launch template IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable launchTemplateIds; /**

One or more launch template names.

*/ @property (nonatomic, strong) NSArray * _Nullable launchTemplateNames; /**

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 1 and 200.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to request the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLaunchTemplatesResult : AWSModel /**

Information about the launch templates.

*/ @property (nonatomic, strong) NSArray * _Nullable launchTemplates; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • local-gateway-id - The ID of a local gateway.

  • local-gateway-route-table-arn - The Amazon Resource Name (ARN) of the local gateway route table for the virtual interface group.

  • local-gateway-route-table-id - The ID of the local gateway route table.

  • local-gateway-route-table-virtual-interface-group-association-id - The ID of the association.

  • local-gateway-route-table-virtual-interface-group-id - The ID of the virtual interface group.

  • owner-id - The ID of the Amazon Web Services account that owns the local gateway virtual interface group association.

  • state - The state of the association.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the associations.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayRouteTableVirtualInterfaceGroupAssociationIds; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult : AWSModel /**

Information about the associations.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayRouteTableVirtualInterfaceGroupAssociations; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewayRouteTableVpcAssociationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • local-gateway-id - The ID of a local gateway.

  • local-gateway-route-table-arn - The Amazon Resource Name (ARN) of the local gateway route table for the association.

  • local-gateway-route-table-id - The ID of the local gateway route table.

  • local-gateway-route-table-vpc-association-id - The ID of the association.

  • owner-id - The ID of the Amazon Web Services account that owns the local gateway route table for the association.

  • state - The state of the association.

  • vpc-id - The ID of the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the associations.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayRouteTableVpcAssociationIds; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewayRouteTableVpcAssociationsResult : AWSModel /**

Information about the associations.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayRouteTableVpcAssociations; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewayRouteTablesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • local-gateway-id - The ID of a local gateway.

  • local-gateway-route-table-arn - The Amazon Resource Name (ARN) of the local gateway route table.

  • local-gateway-route-table-id - The ID of a local gateway route table.

  • outpost-arn - The Amazon Resource Name (ARN) of the Outpost.

  • owner-id - The ID of the Amazon Web Services account that owns the local gateway route table.

  • state - The state of the local gateway route table.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the local gateway route tables.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayRouteTableIds; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewayRouteTablesResult : AWSModel /**

Information about the local gateway route tables.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayRouteTables; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewayVirtualInterfaceGroupsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • local-gateway-id - The ID of a local gateway.

  • local-gateway-virtual-interface-group-id - The ID of the virtual interface group.

  • local-gateway-virtual-interface-id - The ID of the virtual interface.

  • owner-id - The ID of the Amazon Web Services account that owns the local gateway virtual interface group.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the virtual interface groups.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayVirtualInterfaceGroupIds; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewayVirtualInterfaceGroupsResult : AWSModel /**

The virtual interface groups.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayVirtualInterfaceGroups; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewayVirtualInterfacesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • local-address - The local address.

  • local-bgp-asn - The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the local gateway.

  • local-gateway-id - The ID of the local gateway.

  • local-gateway-virtual-interface-id - The ID of the virtual interface.

  • owner-id - The ID of the Amazon Web Services account that owns the local gateway virtual interface.

  • peer-address - The peer address.

  • peer-bgp-asn - The peer BGP ASN.

  • vlan - The ID of the VLAN.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the virtual interfaces.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayVirtualInterfaceIds; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewayVirtualInterfacesResult : AWSModel /**

Information about the virtual interfaces.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayVirtualInterfaces; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewaysRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • local-gateway-id - The ID of a local gateway.

  • outpost-arn - The Amazon Resource Name (ARN) of the Outpost.

  • owner-id - The ID of the Amazon Web Services account that owns the local gateway.

  • state - The state of the association.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the local gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayIds; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeLocalGatewaysResult : AWSModel /**

Information about the local gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable localGateways; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeManagedPrefixListsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • owner-id - The ID of the prefix list owner.

  • prefix-list-id - The ID of the prefix list.

  • prefix-list-name - The name of the prefix list.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

One or more prefix list IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable prefixListIds; @end /** */ @interface AWSEC2DescribeManagedPrefixListsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the prefix lists.

*/ @property (nonatomic, strong) NSArray * _Nullable prefixLists; @end /** */ @interface AWSEC2DescribeMovingAddressesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • moving-status - The status of the Elastic IP address (MovingToVpc | RestoringToClassic).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value outside of this range, an error is returned.

Default: If no value is provided, the default is 1000.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

One or more Elastic IP addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable publicIps; @end /** */ @interface AWSEC2DescribeMovingAddressesResult : AWSModel /**

The status for each Elastic IP address.

*/ @property (nonatomic, strong) NSArray * _Nullable movingAddressStatuses; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNatGatewaysRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • nat-gateway-id - The ID of the NAT gateway.

  • state - The state of the NAT gateway (pending | failed | available | deleting | deleted).

  • subnet-id - The ID of the subnet in which the NAT gateway resides.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC in which the NAT gateway resides.

*/ @property (nonatomic, strong) NSArray * _Nullable filter; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The IDs of the NAT gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable natGatewayIds; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNatGatewaysResult : AWSModel /**

Information about the NAT gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable natGateways; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNetworkAclsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • association.association-id - The ID of an association ID for the ACL.

  • association.network-acl-id - The ID of the network ACL involved in the association.

  • association.subnet-id - The ID of the subnet involved in the association.

  • default - Indicates whether the ACL is the default network ACL for the VPC.

  • entry.cidr - The IPv4 CIDR range specified in the entry.

  • entry.icmp.code - The ICMP code specified in the entry, if any.

  • entry.icmp.type - The ICMP type specified in the entry, if any.

  • entry.ipv6-cidr - The IPv6 CIDR range specified in the entry.

  • entry.port-range.from - The start of the port range specified in the entry.

  • entry.port-range.to - The end of the port range specified in the entry.

  • entry.protocol - The protocol specified in the entry (tcp | udp | icmp or a protocol number).

  • entry.rule-action - Allows or denies the matching traffic (allow | deny).

  • entry.egress - A Boolean that indicates the type of rule. Specify true for egress rules, or false for ingress rules.

  • entry.rule-number - The number of an entry (in other words, rule) in the set of ACL entries.

  • network-acl-id - The ID of the network ACL.

  • owner-id - The ID of the Amazon Web Services account that owns the network ACL.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC for the network ACL.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The IDs of the network ACLs.

Default: Describes all your network ACLs.

*/ @property (nonatomic, strong) NSArray * _Nullable networkAclIds; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNetworkAclsResult : AWSModel /**

Information about one or more network ACLs.

*/ @property (nonatomic, strong) NSArray * _Nullable networkAcls; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNetworkInsightsAccessScopeAnalysesRequest : AWSRequest /**

Filters the results based on the start time. The analysis must have started on or after this time.

*/ @property (nonatomic, strong) NSDate * _Nullable analysisStartTimeBegin; /**

Filters the results based on the start time. The analysis must have started on or before this time.

*/ @property (nonatomic, strong) NSDate * _Nullable analysisStartTimeEnd; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

There are no supported filters.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The IDs of the Network Access Scope analyses.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInsightsAccessScopeAnalysisIds; /**

The ID of the Network Access Scope.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeId; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNetworkInsightsAccessScopeAnalysesResult : AWSModel /**

The Network Access Scope analyses.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInsightsAccessScopeAnalyses; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNetworkInsightsAccessScopesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

There are no supported filters.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The IDs of the Network Access Scopes.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInsightsAccessScopeIds; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNetworkInsightsAccessScopesResult : AWSModel /**

The Network Access Scopes.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInsightsAccessScopes; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNetworkInsightsAnalysesRequest : AWSRequest /**

The time when the network insights analyses ended.

*/ @property (nonatomic, strong) NSDate * _Nullable analysisEndTime; /**

The time when the network insights analyses started.

*/ @property (nonatomic, strong) NSDate * _Nullable analysisStartTime; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters. The following are the possible values:

  • path-found - A Boolean value that indicates whether a feasible path is found.

  • status - The status of the analysis (running | succeeded | failed).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The ID of the network insights analyses. You must specify either analysis IDs or a path ID.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInsightsAnalysisIds; /**

The ID of the path. You must specify either a path ID or analysis IDs.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsPathId; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNetworkInsightsAnalysesResult : AWSModel /**

Information about the network insights analyses.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInsightsAnalyses; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNetworkInsightsPathsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters. The following are the possible values:

  • destination - The ID of the resource.

  • filter-at-source.source-address - The source IPv4 address at the source.

  • filter-at-source.source-port-range - The source port range at the source.

  • filter-at-source.destination-address - The destination IPv4 address at the source.

  • filter-at-source.destination-port-range - The destination port range at the source.

  • filter-at-destination.source-address - The source IPv4 address at the destination.

  • filter-at-destination.source-port-range - The source port range at the destination.

  • filter-at-destination.destination-address - The destination IPv4 address at the destination.

  • filter-at-destination.destination-port-range - The destination port range at the destination.

  • protocol - The protocol.

  • source - The ID of the resource.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The IDs of the paths.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInsightsPathIds; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNetworkInsightsPathsResult : AWSModel /**

Information about the paths.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInsightsPaths; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /**

Contains the parameters for DescribeNetworkInterfaceAttribute.

Required parameters: [NetworkInterfaceId] */ @interface AWSEC2DescribeNetworkInterfaceAttributeRequest : AWSRequest /**

The attribute of the network interface. This parameter is required.

*/ @property (nonatomic, assign) AWSEC2NetworkInterfaceAttribute attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; @end /**

Contains the output of DescribeNetworkInterfaceAttribute.

*/ @interface AWSEC2DescribeNetworkInterfaceAttributeResult : AWSModel /**

The attachment (if any) of the network interface.

*/ @property (nonatomic, strong) AWSEC2NetworkInterfaceAttachment * _Nullable attachment; /**

The description of the network interface.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable detail; /**

The security groups associated with the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

Indicates whether source/destination checking is enabled.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable sourceDestCheck; @end /**

Contains the parameters for DescribeNetworkInterfacePermissions.

*/ @interface AWSEC2DescribeNetworkInterfacePermissionsRequest : AWSRequest /**

One or more filters.

  • network-interface-permission.network-interface-permission-id - The ID of the permission.

  • network-interface-permission.network-interface-id - The ID of the network interface.

  • network-interface-permission.aws-account-id - The Amazon Web Services account ID.

  • network-interface-permission.aws-service - The Amazon Web Service.

  • network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. If this parameter is not specified, up to 50 results are returned by default. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The network interface permission IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfacePermissionIds; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /**

Contains the output for DescribeNetworkInterfacePermissions.

*/ @interface AWSEC2DescribeNetworkInterfacePermissionsResult : AWSModel /**

The network interface permissions.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfacePermissions; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /**

Contains the parameters for DescribeNetworkInterfaces.

*/ @interface AWSEC2DescribeNetworkInterfacesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • addresses.private-ip-address - The private IPv4 addresses associated with the network interface.

  • addresses.primary - Whether the private IPv4 address is the primary IP address associated with the network interface.

  • addresses.association.public-ip - The association ID returned when the network interface was associated with the Elastic IP address (IPv4).

  • addresses.association.owner-id - The owner ID of the addresses associated with the network interface.

  • association.association-id - The association ID returned when the network interface was associated with an IPv4 address.

  • association.allocation-id - The allocation ID returned when you allocated the Elastic IP address (IPv4) for your network interface.

  • association.ip-owner-id - The owner of the Elastic IP address (IPv4) associated with the network interface.

  • association.public-ip - The address of the Elastic IP address (IPv4) bound to the network interface.

  • association.public-dns-name - The public DNS name for the network interface (IPv4).

  • attachment.attachment-id - The ID of the interface attachment.

  • attachment.attach-time - The time that the network interface was attached to an instance.

  • attachment.delete-on-termination - Indicates whether the attachment is deleted when an instance is terminated.

  • attachment.device-index - The device index to which the network interface is attached.

  • attachment.instance-id - The ID of the instance to which the network interface is attached.

  • attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached.

  • attachment.status - The status of the attachment (attaching | attached | detaching | detached).

  • availability-zone - The Availability Zone of the network interface.

  • description - The description of the network interface.

  • group-id - The ID of a security group associated with the network interface.

  • group-name - The name of a security group associated with the network interface.

  • ipv6-addresses.ipv6-address - An IPv6 address associated with the network interface.

  • interface-type - The type of network interface (api_gateway_managed | aws_codestar_connections_managed | branch | efa | gateway_load_balancer | gateway_load_balancer_endpoint | global_accelerator_managed | interface | iot_rules_managed | lambda | load_balancer | nat_gateway | network_load_balancer | quicksight | transit_gateway | trunk | vpc_endpoint).

  • mac-address - The MAC address of the network interface.

  • network-interface-id - The ID of the network interface.

  • owner-id - The Amazon Web Services account ID of the network interface owner.

  • private-ip-address - The private IPv4 address or addresses of the network interface.

  • private-dns-name - The private DNS name of the network interface (IPv4).

  • requester-id - The alias or Amazon Web Services account ID of the principal or service that created the network interface.

  • requester-managed - Indicates whether the network interface is being managed by an Amazon Web Service (for example, Amazon Web Services Management Console, Auto Scaling, and so on).

  • source-dest-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC.

  • status - The status of the network interface. If the network interface is not attached to an instance, the status is available; if a network interface is attached to an instance the status is in-use.

  • subnet-id - The ID of the subnet for the network interface.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC for the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. You cannot specify this parameter and the network interface IDs parameter in the same request. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The network interface IDs.

Default: Describes all your network interfaces.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaceIds; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeNetworkInterfacesResult : AWSModel /**

Information about one or more network interfaces.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaces; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribePlacementGroupsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • group-name - The name of the placement group.

  • group-arn - The Amazon Resource Name (ARN) of the placement group.

  • spread-level - The spread level for the placement group (host | rack).

  • state - The state of the placement group (pending | available | deleting | deleted).

  • strategy - The strategy of the placement group (cluster | spread | partition).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources that have a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the placement groups.

*/ @property (nonatomic, strong) NSArray * _Nullable groupIds; /**

The names of the placement groups.

Default: Describes all your placement groups, or only those otherwise specified.

*/ @property (nonatomic, strong) NSArray * _Nullable groupNames; @end /** */ @interface AWSEC2DescribePlacementGroupsResult : AWSModel /**

Information about the placement groups.

*/ @property (nonatomic, strong) NSArray * _Nullable placementGroups; @end /** */ @interface AWSEC2DescribePrefixListsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • prefix-list-id: The ID of a prefix list.

  • prefix-list-name: The name of a prefix list.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

One or more prefix list IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable prefixListIds; @end /** */ @interface AWSEC2DescribePrefixListsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

All available prefix lists.

*/ @property (nonatomic, strong) NSArray * _Nullable prefixLists; @end /** */ @interface AWSEC2DescribePrincipalIdFormatRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to request the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The type of resource: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway

*/ @property (nonatomic, strong) NSArray * _Nullable resources; @end /** */ @interface AWSEC2DescribePrincipalIdFormatResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the ID format settings for the ARN.

*/ @property (nonatomic, strong) NSArray * _Nullable principals; @end /** */ @interface AWSEC2DescribePublicIpv4PoolsRequest : AWSRequest /**

One or more filters.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the address pools.

*/ @property (nonatomic, strong) NSArray * _Nullable poolIds; @end /** */ @interface AWSEC2DescribePublicIpv4PoolsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the address pools.

*/ @property (nonatomic, strong) NSArray * _Nullable publicIpv4Pools; @end /** */ @interface AWSEC2DescribeRegionsRequest : AWSRequest /**

Indicates whether to display all Regions, including Regions that are disabled for your account.

*/ @property (nonatomic, strong) NSNumber * _Nullable allRegions; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • endpoint - The endpoint of the Region (for example, ec2.us-east-1.amazonaws.com).

  • opt-in-status - The opt-in status of the Region (opt-in-not-required | opted-in | not-opted-in).

  • region-name - The name of the Region (for example, us-east-1).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The names of the Regions. You can specify any Regions, whether they are enabled and disabled for your account.

*/ @property (nonatomic, strong) NSArray * _Nullable regionNames; @end /** */ @interface AWSEC2DescribeRegionsResult : AWSModel /**

Information about the Regions.

*/ @property (nonatomic, strong) NSArray * _Nullable regions; @end /** */ @interface AWSEC2DescribeReplaceRootVolumeTasksRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Filter to use:

  • instance-id - The ID of the instance for which the root volume replacement task was created.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the root volume replacement task to view.

*/ @property (nonatomic, strong) NSArray * _Nullable replaceRootVolumeTaskIds; @end /** */ @interface AWSEC2DescribeReplaceRootVolumeTasksResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the root volume replacement task.

*/ @property (nonatomic, strong) NSArray * _Nullable replaceRootVolumeTasks; @end /**

Contains the parameters for DescribeReservedInstancesListings.

*/ @interface AWSEC2DescribeReservedInstancesListingsRequest : AWSRequest /**

One or more filters.

  • reserved-instances-id - The ID of the Reserved Instances.

  • reserved-instances-listing-id - The ID of the Reserved Instances listing.

  • status - The status of the Reserved Instance listing (pending | active | cancelled | closed).

  • status-message - The reason for the status.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

One or more Reserved Instance IDs.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesId; /**

One or more Reserved Instance listing IDs.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesListingId; @end /**

Contains the output of DescribeReservedInstancesListings.

*/ @interface AWSEC2DescribeReservedInstancesListingsResult : AWSModel /**

Information about the Reserved Instance listing.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstancesListings; @end /**

Contains the parameters for DescribeReservedInstancesModifications.

*/ @interface AWSEC2DescribeReservedInstancesModificationsRequest : AWSRequest /**

One or more filters.

  • client-token - The idempotency token for the modification request.

  • create-date - The time when the modification request was created.

  • effective-date - The time when the modification becomes effective.

  • modification-result.reserved-instances-id - The ID for the Reserved Instances created as part of the modification request. This ID is only available when the status of the modification is fulfilled.

  • modification-result.target-configuration.availability-zone - The Availability Zone for the new Reserved Instances.

  • modification-result.target-configuration.instance-count - The number of new Reserved Instances.

  • modification-result.target-configuration.instance-type - The instance type of the new Reserved Instances.

  • reserved-instances-id - The ID of the Reserved Instances modified.

  • reserved-instances-modification-id - The ID of the modification request.

  • status - The status of the Reserved Instances modification request (processing | fulfilled | failed).

  • status-message - The reason for the status.

  • update-date - The time when the modification request was last updated.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The token to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

IDs for the submitted modification request.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstancesModificationIds; @end /**

Contains the output of DescribeReservedInstancesModifications.

*/ @interface AWSEC2DescribeReservedInstancesModificationsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The Reserved Instance modification information.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstancesModifications; @end /**

Contains the parameters for DescribeReservedInstancesOfferings.

*/ @interface AWSEC2DescribeReservedInstancesOfferingsRequest : AWSRequest /**

The Availability Zone in which the Reserved Instance can be used.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • availability-zone - The Availability Zone where the Reserved Instance can be used.

  • duration - The duration of the Reserved Instance (for example, one year or three years), in seconds (31536000 | 94608000).

  • fixed-price - The purchase price of the Reserved Instance (for example, 9800.0).

  • instance-type - The instance type that is covered by the reservation.

  • marketplace - Set to true to show only Reserved Instance Marketplace offerings. When this filter is not used, which is the default behavior, all offerings from both Amazon Web Services and the Reserved Instance Marketplace are listed.

  • product-description - The Reserved Instance product platform description (Linux/UNIX | Linux with SQL Server Standard | Linux with SQL Server Web | Linux with SQL Server Enterprise | SUSE Linux | Red Hat Enterprise Linux | Red Hat Enterprise Linux with HA | Windows | Windows with SQL Server Standard | Windows with SQL Server Web | Windows with SQL Server Enterprise).

  • reserved-instances-offering-id - The Reserved Instances offering ID.

  • scope - The scope of the Reserved Instance (Availability Zone or Region).

  • usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

Include Reserved Instance Marketplace offerings in the response.

*/ @property (nonatomic, strong) NSNumber * _Nullable includeMarketplace; /**

The tenancy of the instances covered by the reservation. A Reserved Instance with a tenancy of dedicated is applied to instances that run in a VPC on single-tenant hardware (i.e., Dedicated Instances).

Important: The host value cannot be used with this parameter. Use the default or dedicated values only.

Default: default

*/ @property (nonatomic, assign) AWSEC2Tenancy instanceTenancy; /**

The instance type that the reservation will cover (for example, m1.small). For more information, see Instance types in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The maximum duration (in seconds) to filter when searching for offerings.

Default: 94608000 (3 years)

*/ @property (nonatomic, strong) NSNumber * _Nullable maxDuration; /**

The maximum number of instances to filter when searching for offerings.

Default: 20

*/ @property (nonatomic, strong) NSNumber * _Nullable maxInstanceCount; /**

The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. The maximum is 100.

Default: 100

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The minimum duration (in seconds) to filter when searching for offerings.

Default: 2592000 (1 month)

*/ @property (nonatomic, strong) NSNumber * _Nullable minDuration; /**

The token to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The offering class of the Reserved Instance. Can be standard or convertible.

*/ @property (nonatomic, assign) AWSEC2OfferingClassType offeringClass; /**

The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.

*/ @property (nonatomic, assign) AWSEC2OfferingTypeValues offeringType; /**

The Reserved Instance product platform description. Instances that include (Amazon VPC) in the description are for use with Amazon VPC.

*/ @property (nonatomic, assign) AWSEC2RIProductDescription productDescription; /**

One or more Reserved Instances offering IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstancesOfferingIds; @end /**

Contains the output of DescribeReservedInstancesOfferings.

*/ @interface AWSEC2DescribeReservedInstancesOfferingsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

A list of Reserved Instances offerings.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstancesOfferings; @end /**

Contains the parameters for DescribeReservedInstances.

*/ @interface AWSEC2DescribeReservedInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • availability-zone - The Availability Zone where the Reserved Instance can be used.

  • duration - The duration of the Reserved Instance (one year or three years), in seconds (31536000 | 94608000).

  • end - The time when the Reserved Instance expires (for example, 2015-08-07T11:54:42.000Z).

  • fixed-price - The purchase price of the Reserved Instance (for example, 9800.0).

  • instance-type - The instance type that is covered by the reservation.

  • scope - The scope of the Reserved Instance (Region or Availability Zone).

  • product-description - The Reserved Instance product platform description (Linux/UNIX | Linux with SQL Server Standard | Linux with SQL Server Web | Linux with SQL Server Enterprise | SUSE Linux | Red Hat Enterprise Linux | Red Hat Enterprise Linux with HA | Windows | Windows with SQL Server Standard | Windows with SQL Server Web | Windows with SQL Server Enterprise).

  • reserved-instances-id - The ID of the Reserved Instance.

  • start - The time at which the Reserved Instance purchase request was placed (for example, 2014-08-07T11:54:42.000Z).

  • state - The state of the Reserved Instance (payment-pending | active | payment-failed | retired).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

Describes whether the Reserved Instance is Standard or Convertible.

*/ @property (nonatomic, assign) AWSEC2OfferingClassType offeringClass; /**

The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.

*/ @property (nonatomic, assign) AWSEC2OfferingTypeValues offeringType; /**

One or more Reserved Instance IDs.

Default: Describes all your Reserved Instances, or only those otherwise specified.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstancesIds; @end /**

Contains the output for DescribeReservedInstances.

*/ @interface AWSEC2DescribeReservedInstancesResult : AWSModel /**

A list of Reserved Instances.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstances; @end /** */ @interface AWSEC2DescribeRouteTablesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • association.route-table-association-id - The ID of an association ID for the route table.

  • association.route-table-id - The ID of the route table involved in the association.

  • association.subnet-id - The ID of the subnet involved in the association.

  • association.main - Indicates whether the route table is the main route table for the VPC (true | false). Route tables that do not have an association ID are not returned in the response.

  • owner-id - The ID of the Amazon Web Services account that owns the route table.

  • route-table-id - The ID of the route table.

  • route.destination-cidr-block - The IPv4 CIDR range specified in a route in the table.

  • route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table.

  • route.destination-prefix-list-id - The ID (prefix) of the Amazon Web Service specified in a route in the table.

  • route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table.

  • route.gateway-id - The ID of a gateway specified in a route in the table.

  • route.instance-id - The ID of an instance specified in a route in the table.

  • route.nat-gateway-id - The ID of a NAT gateway.

  • route.transit-gateway-id - The ID of a transit gateway.

  • route.origin - Describes how the route was created. CreateRouteTable indicates that the route was automatically created when the route table was created; CreateRoute indicates that the route was manually added to the route table; EnableVgwRoutePropagation indicates that the route was propagated by route propagation.

  • route.state - The state of a route in the route table (active | blackhole). The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, the specified NAT instance has been terminated, and so on).

  • route.vpc-peering-connection-id - The ID of a VPC peering connection specified in a route in the table.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC for the route table.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the route tables.

Default: Describes all your route tables.

*/ @property (nonatomic, strong) NSArray * _Nullable routeTableIds; @end /**

Contains the output of DescribeRouteTables.

*/ @interface AWSEC2DescribeRouteTablesResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about one or more route tables.

*/ @property (nonatomic, strong) NSArray * _Nullable routeTables; @end /**

Contains the parameters for DescribeScheduledInstanceAvailability.

Required parameters: [FirstSlotStartTimeRange, Recurrence] */ @interface AWSEC2DescribeScheduledInstanceAvailabilityRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • availability-zone - The Availability Zone (for example, us-west-2a).

  • instance-type - The instance type (for example, c4.large).

  • platform - The platform (Linux/UNIX or Windows).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The time period for the first schedule to start.

*/ @property (nonatomic, strong) AWSEC2SlotDateTimeRangeRequest * _Nullable firstSlotStartTimeRange; /**

The maximum number of results to return in a single call. This value can be between 5 and 300. The default value is 300. To retrieve the remaining results, make another call with the returned NextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The maximum available duration, in hours. This value must be greater than MinSlotDurationInHours and less than 1,720.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxSlotDurationInHours; /**

The minimum available duration, in hours. The minimum required duration is 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.

*/ @property (nonatomic, strong) NSNumber * _Nullable minSlotDurationInHours; /**

The token for the next set of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The schedule recurrence.

*/ @property (nonatomic, strong) AWSEC2ScheduledInstanceRecurrenceRequest * _Nullable recurrence; @end /**

Contains the output of DescribeScheduledInstanceAvailability.

*/ @interface AWSEC2DescribeScheduledInstanceAvailabilityResult : AWSModel /**

The token required to retrieve the next set of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the available Scheduled Instances.

*/ @property (nonatomic, strong) NSArray * _Nullable scheduledInstanceAvailabilitySet; @end /**

Contains the parameters for DescribeScheduledInstances.

*/ @interface AWSEC2DescribeScheduledInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • availability-zone - The Availability Zone (for example, us-west-2a).

  • instance-type - The instance type (for example, c4.large).

  • platform - The platform (Linux/UNIX or Windows).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return in a single call. This value can be between 5 and 300. The default value is 100. To retrieve the remaining results, make another call with the returned NextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next set of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The Scheduled Instance IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable scheduledInstanceIds; /**

The time period for the first schedule to start.

*/ @property (nonatomic, strong) AWSEC2SlotStartTimeRangeRequest * _Nullable slotStartTimeRange; @end /**

Contains the output of DescribeScheduledInstances.

*/ @interface AWSEC2DescribeScheduledInstancesResult : AWSModel /**

The token required to retrieve the next set of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the Scheduled Instances.

*/ @property (nonatomic, strong) NSArray * _Nullable scheduledInstanceSet; @end /** */ @interface AWSEC2DescribeSecurityGroupReferencesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the security groups in your account.

*/ @property (nonatomic, strong) NSArray * _Nullable groupId; @end /** */ @interface AWSEC2DescribeSecurityGroupReferencesResult : AWSModel /**

Information about the VPCs with the referencing security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupReferenceSet; @end /** */ @interface AWSEC2DescribeSecurityGroupRulesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • group-id - The ID of the security group.

  • security-group-rule-id - The ID of the security group rule.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. This value can be between 5 and 1000. If this parameter is not specified, then all items are returned. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the security group rules.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupRuleIds; @end /** */ @interface AWSEC2DescribeSecurityGroupRulesResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about security group rules.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupRules; @end /** */ @interface AWSEC2DescribeSecurityGroupsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters. If using multiple filters for rules, the results include security groups for which any combination of rules - not necessarily a single rule - match all filters.

  • description - The description of the security group.

  • egress.ip-permission.cidr - An IPv4 CIDR block for an outbound security group rule.

  • egress.ip-permission.from-port - For an outbound rule, the start of port range for the TCP and UDP protocols, or an ICMP type number.

  • egress.ip-permission.group-id - The ID of a security group that has been referenced in an outbound security group rule.

  • egress.ip-permission.group-name - The name of a security group that is referenced in an outbound security group rule.

  • egress.ip-permission.ipv6-cidr - An IPv6 CIDR block for an outbound security group rule.

  • egress.ip-permission.prefix-list-id - The ID of a prefix list to which a security group rule allows outbound access.

  • egress.ip-permission.protocol - The IP protocol for an outbound security group rule (tcp | udp | icmp, a protocol number, or -1 for all protocols).

  • egress.ip-permission.to-port - For an outbound rule, the end of port range for the TCP and UDP protocols, or an ICMP code.

  • egress.ip-permission.user-id - The ID of an Amazon Web Services account that has been referenced in an outbound security group rule.

  • group-id - The ID of the security group.

  • group-name - The name of the security group.

  • ip-permission.cidr - An IPv4 CIDR block for an inbound security group rule.

  • ip-permission.from-port - For an inbound rule, the start of port range for the TCP and UDP protocols, or an ICMP type number.

  • ip-permission.group-id - The ID of a security group that has been referenced in an inbound security group rule.

  • ip-permission.group-name - The name of a security group that is referenced in an inbound security group rule.

  • ip-permission.ipv6-cidr - An IPv6 CIDR block for an inbound security group rule.

  • ip-permission.prefix-list-id - The ID of a prefix list from which a security group rule allows inbound access.

  • ip-permission.protocol - The IP protocol for an inbound security group rule (tcp | udp | icmp, a protocol number, or -1 for all protocols).

  • ip-permission.to-port - For an inbound rule, the end of port range for the TCP and UDP protocols, or an ICMP code.

  • ip-permission.user-id - The ID of an Amazon Web Services account that has been referenced in an inbound security group rule.

  • owner-id - The Amazon Web Services account ID of the owner of the security group.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC specified when the security group was created.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The IDs of the security groups. Required for security groups in a nondefault VPC.

Default: Describes all of your security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable groupIds; /**

[Default VPC] The names of the security groups. You can specify either the security group name or the security group ID.

Default: Describes all of your security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable groupNames; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. This value can be between 5 and 1000. If this parameter is not specified, then all items are returned. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeSecurityGroupsResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroups; @end /** */ @interface AWSEC2DescribeSnapshotAttributeRequest : AWSRequest /**

The snapshot attribute you would like to view.

*/ @property (nonatomic, assign) AWSEC2SnapshotAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the EBS snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; @end /** */ @interface AWSEC2DescribeSnapshotAttributeResult : AWSModel /**

The users and groups that have the permissions for creating volumes from the snapshot.

*/ @property (nonatomic, strong) NSArray * _Nullable createVolumePermissions; /**

The product codes.

*/ @property (nonatomic, strong) NSArray * _Nullable productCodes; /**

The ID of the EBS snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; @end /** */ @interface AWSEC2DescribeSnapshotTierStatusRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • snapshot-id - The snapshot ID.

  • volume-id - The ID of the volume the snapshot is for.

  • last-tiering-operation - The state of the last archive or restore action. (archival-in-progress | archival-completed | archival-failed | permanent-restore-in-progress | permanent-restore-completed | permanent-restore-failed | temporary-restore-in-progress | temporary-restore-completed | temporary-restore-failed)

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeSnapshotTierStatusResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the snapshot's storage tier.

*/ @property (nonatomic, strong) NSArray * _Nullable snapshotTierStatuses; @end /** */ @interface AWSEC2DescribeSnapshotsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • description - A description of the snapshot.

  • encrypted - Indicates whether the snapshot is encrypted (true | false)

  • owner-alias - The owner alias, from an Amazon-maintained list (amazon). This is not the user-configured Amazon Web Services account alias set using the IAM console. We recommend that you use the related parameter instead of this filter.

  • owner-id - The Amazon Web Services account ID of the owner. We recommend that you use the related parameter instead of this filter.

  • progress - The progress of the snapshot, as a percentage (for example, 80%).

  • snapshot-id - The snapshot ID.

  • start-time - The time stamp when the snapshot was initiated.

  • status - The status of the snapshot (pending | completed | error).

  • storage-tier - The storage tier of the snapshot (archive | standard).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • volume-id - The ID of the volume the snapshot is for.

  • volume-size - The size of the volume, in GiB.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of snapshots to return for this request. This value can be between 5 and 1,000; if this value is larger than 1,000, only 1,000 results are returned. If this parameter is not used, then the request returns all snapshots. You cannot specify this parameter and the snapshot IDs parameter in the same request. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Scopes the results to snapshots with the specified owners. You can specify a combination of Amazon Web Services account IDs, self, and amazon.

*/ @property (nonatomic, strong) NSArray * _Nullable ownerIds; /**

The IDs of the Amazon Web Services accounts that can create volumes from the snapshot.

*/ @property (nonatomic, strong) NSArray * _Nullable restorableByUserIds; /**

The snapshot IDs.

Default: Describes the snapshots for which you have create volume permissions.

*/ @property (nonatomic, strong) NSArray * _Nullable snapshotIds; @end /** */ @interface AWSEC2DescribeSnapshotsResult : AWSModel /**

The token to include in another request to return the next page of snapshots. This value is null when there are no more snapshots to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the snapshots.

*/ @property (nonatomic, strong) NSArray * _Nullable snapshots; @end /**

Contains the parameters for DescribeSpotDatafeedSubscription.

*/ @interface AWSEC2DescribeSpotDatafeedSubscriptionRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /**

Contains the output of DescribeSpotDatafeedSubscription.

*/ @interface AWSEC2DescribeSpotDatafeedSubscriptionResult : AWSModel /**

The Spot Instance data feed subscription.

*/ @property (nonatomic, strong) AWSEC2SpotDatafeedSubscription * _Nullable spotDatafeedSubscription; @end /**

Contains the parameters for DescribeSpotFleetInstances.

Required parameters: [SpotFleetRequestId] */ @interface AWSEC2DescribeSpotFleetInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the Spot Fleet request.

*/ @property (nonatomic, strong) NSString * _Nullable spotFleetRequestId; @end /**

Contains the output of DescribeSpotFleetInstances.

*/ @interface AWSEC2DescribeSpotFleetInstancesResponse : AWSModel /**

The running instances. This list is refreshed periodically and might be out of date.

*/ @property (nonatomic, strong) NSArray * _Nullable activeInstances; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the Spot Fleet request.

*/ @property (nonatomic, strong) NSString * _Nullable spotFleetRequestId; @end /**

Contains the parameters for DescribeSpotFleetRequestHistory.

Required parameters: [SpotFleetRequestId, StartTime] */ @interface AWSEC2DescribeSpotFleetRequestHistoryRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The type of events to describe. By default, all events are described.

*/ @property (nonatomic, assign) AWSEC2EventType eventType; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the Spot Fleet request.

*/ @property (nonatomic, strong) NSString * _Nullable spotFleetRequestId; /**

The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; @end /**

Contains the output of DescribeSpotFleetRequestHistory.

*/ @interface AWSEC2DescribeSpotFleetRequestHistoryResponse : AWSModel /**

Information about the events in the history of the Spot Fleet request.

*/ @property (nonatomic, strong) NSArray * _Nullable historyRecords; /**

The last date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). All records up to this time were retrieved.

If nextToken indicates that there are more items, this value is not present.

*/ @property (nonatomic, strong) NSDate * _Nullable lastEvaluatedTime; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the Spot Fleet request.

*/ @property (nonatomic, strong) NSString * _Nullable spotFleetRequestId; /**

The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; @end /**

Contains the parameters for DescribeSpotFleetRequests.

*/ @interface AWSEC2DescribeSpotFleetRequestsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the Spot Fleet requests.

*/ @property (nonatomic, strong) NSArray * _Nullable spotFleetRequestIds; @end /**

Contains the output of DescribeSpotFleetRequests.

*/ @interface AWSEC2DescribeSpotFleetRequestsResponse : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the configuration of your Spot Fleet.

*/ @property (nonatomic, strong) NSArray * _Nullable spotFleetRequestConfigs; @end /**

Contains the parameters for DescribeSpotInstanceRequests.

*/ @interface AWSEC2DescribeSpotInstanceRequestsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • availability-zone-group - The Availability Zone group.

  • create-time - The time stamp when the Spot Instance request was created.

  • fault-code - The fault code related to the request.

  • fault-message - The fault message related to the request.

  • instance-id - The ID of the instance that fulfilled the request.

  • launch-group - The Spot Instance launch group.

  • launch.block-device-mapping.delete-on-termination - Indicates whether the EBS volume is deleted on instance termination.

  • launch.block-device-mapping.device-name - The device name for the volume in the block device mapping (for example, /dev/sdh or xvdh).

  • launch.block-device-mapping.snapshot-id - The ID of the snapshot for the EBS volume.

  • launch.block-device-mapping.volume-size - The size of the EBS volume, in GiB.

  • launch.block-device-mapping.volume-type - The type of EBS volume: gp2 for General Purpose SSD, io1 or io2 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1for Cold HDD, or standard for Magnetic.

  • launch.group-id - The ID of the security group for the instance.

  • launch.group-name - The name of the security group for the instance.

  • launch.image-id - The ID of the AMI.

  • launch.instance-type - The type of instance (for example, m3.medium).

  • launch.kernel-id - The kernel ID.

  • launch.key-name - The name of the key pair the instance launched with.

  • launch.monitoring-enabled - Whether detailed monitoring is enabled for the Spot Instance.

  • launch.ramdisk-id - The RAM disk ID.

  • launched-availability-zone - The Availability Zone in which the request is launched.

  • network-interface.addresses.primary - Indicates whether the IP address is the primary private IP address.

  • network-interface.delete-on-termination - Indicates whether the network interface is deleted when the instance is terminated.

  • network-interface.description - A description of the network interface.

  • network-interface.device-index - The index of the device for the network interface attachment on the instance.

  • network-interface.group-id - The ID of the security group associated with the network interface.

  • network-interface.network-interface-id - The ID of the network interface.

  • network-interface.private-ip-address - The primary private IP address of the network interface.

  • network-interface.subnet-id - The ID of the subnet for the instance.

  • product-description - The product description associated with the instance (Linux/UNIX | Windows).

  • spot-instance-request-id - The Spot Instance request ID.

  • spot-price - The maximum hourly price for any Spot Instance launched to fulfill the request.

  • state - The state of the Spot Instance request (open | active | closed | cancelled | failed). Spot request status information can help you track your Amazon EC2 Spot Instance requests. For more information, see Spot request status in the Amazon EC2 User Guide for Linux Instances.

  • status-code - The short code describing the most recent evaluation of your Spot Instance request.

  • status-message - The message explaining the status of the Spot Instance request.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • type - The type of Spot Instance request (one-time | persistent).

  • valid-from - The start date of the request.

  • valid-until - The end date of the request.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the Spot Instance requests.

*/ @property (nonatomic, strong) NSArray * _Nullable spotInstanceRequestIds; @end /**

Contains the output of DescribeSpotInstanceRequests.

*/ @interface AWSEC2DescribeSpotInstanceRequestsResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The Spot Instance requests.

*/ @property (nonatomic, strong) NSArray * _Nullable spotInstanceRequests; @end /**

Contains the parameters for DescribeSpotPriceHistory.

*/ @interface AWSEC2DescribeSpotPriceHistoryRequest : AWSRequest /**

Filters the results by the specified Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The date and time, up to the current date, from which to stop retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable endTime; /**

The filters.

  • availability-zone - The Availability Zone for which prices should be returned.

  • instance-type - The type of instance (for example, m3.medium).

  • product-description - The product description for the Spot price (Linux/UNIX | Red Hat Enterprise Linux | SUSE Linux | Windows | Linux/UNIX (Amazon VPC) | Red Hat Enterprise Linux (Amazon VPC) | SUSE Linux (Amazon VPC) | Windows (Amazon VPC)).

  • spot-price - The Spot price. The value must match exactly (or use wildcards; greater than or less than comparison is not supported).

  • timestamp - The time stamp of the Spot price history, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). You can use wildcards (* and ?). Greater than or less than comparison is not supported.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

Filters the results by the specified instance types.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTypes; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Filters the results by the specified basic product descriptions.

*/ @property (nonatomic, strong) NSArray * _Nullable productDescriptions; /**

The date and time, up to the past 90 days, from which to start retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; @end /**

Contains the output of DescribeSpotPriceHistory.

*/ @interface AWSEC2DescribeSpotPriceHistoryResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The historical Spot prices.

*/ @property (nonatomic, strong) NSArray * _Nullable spotPriceHistory; @end /** */ @interface AWSEC2DescribeStaleSecurityGroupsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2DescribeStaleSecurityGroupsResult : AWSModel /**

The token to include in another request to get the next page of items. If there are no additional items to return, the string is empty.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the stale security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable staleSecurityGroupSet; @end /** */ @interface AWSEC2DescribeStoreImageTasksRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • task-state - Returns tasks in a certain state (InProgress | Completed | Failed)

  • bucket - Returns task information for tasks that targeted a specific bucket. For the filter value, specify the bucket name.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The AMI IDs for which to show progress. Up to 20 AMI IDs can be included in a request.

*/ @property (nonatomic, strong) NSArray * _Nullable imageIds; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

You cannot specify this parameter and the ImageIDs parameter in the same call.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeStoreImageTasksResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The information about the AMI store tasks.

*/ @property (nonatomic, strong) NSArray * _Nullable storeImageTaskResults; @end /** */ @interface AWSEC2DescribeSubnetsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • availability-zone - The Availability Zone for the subnet. You can also use availabilityZone as the filter name.

  • availability-zone-id - The ID of the Availability Zone for the subnet. You can also use availabilityZoneId as the filter name.

  • available-ip-address-count - The number of IPv4 addresses in the subnet that are available.

  • cidr-block - The IPv4 CIDR block of the subnet. The CIDR block you specify must exactly match the subnet's CIDR block for information to be returned for the subnet. You can also use cidr or cidrBlock as the filter names.

  • customer-owned-ipv4-pool - The customer-owned IPv4 address pool associated with the subnet.

  • default-for-az - Indicates whether this is the default subnet for the Availability Zone (true | false). You can also use defaultForAz as the filter name.

  • enable-dns64 - Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet should return synthetic IPv6 addresses for IPv4-only destinations.

  • enable-lni-at-device-index - Indicates the device position for local network interfaces in this subnet. For example, 1 indicates local network interfaces in this subnet are the secondary network interface (eth1).

  • ipv6-cidr-block-association.ipv6-cidr-block - An IPv6 CIDR block associated with the subnet.

  • ipv6-cidr-block-association.association-id - An association ID for an IPv6 CIDR block associated with the subnet.

  • ipv6-cidr-block-association.state - The state of an IPv6 CIDR block associated with the subnet.

  • ipv6-native - Indicates whether this is an IPv6 only subnet (true | false).

  • map-customer-owned-ip-on-launch - Indicates whether a network interface created in this subnet (including a network interface created by RunInstances) receives a customer-owned IPv4 address.

  • map-public-ip-on-launch - Indicates whether instances launched in this subnet receive a public IPv4 address.

  • outpost-arn - The Amazon Resource Name (ARN) of the Outpost.

  • owner-id - The ID of the Amazon Web Services account that owns the subnet.

  • private-dns-name-options-on-launch.hostname-type - The type of hostname to assign to instances in the subnet at launch. For IPv4-only and dual-stack (IPv4 and IPv6) subnets, an instance DNS name can be based on the instance IPv4 address (ip-name) or the instance ID (resource-name). For IPv6 only subnets, an instance DNS name must be based on the instance ID (resource-name).

  • private-dns-name-options-on-launch.enable-resource-name-dns-a-record - Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

  • private-dns-name-options-on-launch.enable-resource-name-dns-aaaa-record - Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

  • state - The state of the subnet (pending | available).

  • subnet-arn - The Amazon Resource Name (ARN) of the subnet.

  • subnet-id - The ID of the subnet.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC for the subnet.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the subnets.

Default: Describes all your subnets.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; @end /** */ @interface AWSEC2DescribeSubnetsResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about one or more subnets.

*/ @property (nonatomic, strong) NSArray * _Nullable subnets; @end /** */ @interface AWSEC2DescribeTagsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • key - The tag key.

  • resource-id - The ID of the resource.

  • resource-type - The resource type (customer-gateway | dedicated-host | dhcp-options | elastic-ip | fleet | fpga-image | host-reservation | image | instance | internet-gateway | key-pair | launch-template | natgateway | network-acl | network-interface | placement-group | reserved-instances | route-table | security-group | snapshot | spot-instances-request | subnet | volume | vpc | vpc-endpoint | vpc-endpoint-service | vpc-peering-connection | vpn-connection | vpn-gateway).

  • tag:<key> - The key/value combination of the tag. For example, specify "tag:Owner" for the filter name and "TeamA" for the filter value to find resources with the tag "Owner=TeamA".

  • value - The tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. This value can be between 5 and 1000. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeTagsResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /** */ @interface AWSEC2DescribeTrafficMirrorFiltersRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • description: The Traffic Mirror filter description.

  • traffic-mirror-filter-id: The ID of the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSArray * _Nullable trafficMirrorFilterIds; @end /** */ @interface AWSEC2DescribeTrafficMirrorFiltersResult : AWSModel /**

The token to use to retrieve the next page of results. The value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about one or more Traffic Mirror filters.

*/ @property (nonatomic, strong) NSArray * _Nullable trafficMirrorFilters; @end /** */ @interface AWSEC2DescribeTrafficMirrorSessionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • description: The Traffic Mirror session description.

  • network-interface-id: The ID of the Traffic Mirror session network interface.

  • owner-id: The ID of the account that owns the Traffic Mirror session.

  • packet-length: The assigned number of packets to mirror.

  • session-number: The assigned session number.

  • traffic-mirror-filter-id: The ID of the Traffic Mirror filter.

  • traffic-mirror-session-id: The ID of the Traffic Mirror session.

  • traffic-mirror-target-id: The ID of the Traffic Mirror target.

  • virtual-network-id: The virtual network ID of the Traffic Mirror session.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the Traffic Mirror session.

*/ @property (nonatomic, strong) NSArray * _Nullable trafficMirrorSessionIds; @end /** */ @interface AWSEC2DescribeTrafficMirrorSessionsResult : AWSModel /**

The token to use to retrieve the next page of results. The value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. Alternatively, you can filter the results.

*/ @property (nonatomic, strong) NSArray * _Nullable trafficMirrorSessions; @end /** */ @interface AWSEC2DescribeTrafficMirrorTargetsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • description: The Traffic Mirror target description.

  • network-interface-id: The ID of the Traffic Mirror session network interface.

  • network-load-balancer-arn: The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the session.

  • owner-id: The ID of the account that owns the Traffic Mirror session.

  • traffic-mirror-target-id: The ID of the Traffic Mirror target.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the Traffic Mirror targets.

*/ @property (nonatomic, strong) NSArray * _Nullable trafficMirrorTargetIds; @end /** */ @interface AWSEC2DescribeTrafficMirrorTargetsResult : AWSModel /**

The token to use to retrieve the next page of results. The value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about one or more Traffic Mirror targets.

*/ @property (nonatomic, strong) NSArray * _Nullable trafficMirrorTargets; @end /** */ @interface AWSEC2DescribeTransitGatewayAttachmentsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • association.state - The state of the association (associating | associated | disassociating).

  • association.transit-gateway-route-table-id - The ID of the route table for the transit gateway.

  • resource-id - The ID of the resource.

  • resource-owner-id - The ID of the Amazon Web Services account that owns the resource.

  • resource-type - The resource type. Valid values are vpc | vpn | direct-connect-gateway | peering | connect.

  • state - The state of the attachment. Valid values are available | deleted | deleting | failed | failing | initiatingRequest | modifying | pendingAcceptance | pending | rollingBack | rejected | rejecting.

  • transit-gateway-attachment-id - The ID of the attachment.

  • transit-gateway-id - The ID of the transit gateway.

  • transit-gateway-owner-id - The ID of the Amazon Web Services account that owns the transit gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the attachments.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayAttachmentIds; @end /** */ @interface AWSEC2DescribeTransitGatewayAttachmentsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the attachments.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayAttachments; @end /** */ @interface AWSEC2DescribeTransitGatewayConnectPeersRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • state - The state of the Connect peer (pending | available | deleting | deleted).

  • transit-gateway-attachment-id - The ID of the attachment.

  • transit-gateway-connect-peer-id - The ID of the Connect peer.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the Connect peers.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayConnectPeerIds; @end /** */ @interface AWSEC2DescribeTransitGatewayConnectPeersResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the Connect peers.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayConnectPeers; @end /** */ @interface AWSEC2DescribeTransitGatewayConnectsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • options.protocol - The tunnel protocol (gre).

  • state - The state of the attachment (initiating | initiatingRequest | pendingAcceptance | rollingBack | pending | available | modifying | deleting | deleted | failed | rejected | rejecting | failing).

  • transit-gateway-attachment-id - The ID of the Connect attachment.

  • transit-gateway-id - The ID of the transit gateway.

  • transport-transit-gateway-attachment-id - The ID of the transit gateway attachment from which the Connect attachment was created.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the attachments.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayAttachmentIds; @end /** */ @interface AWSEC2DescribeTransitGatewayConnectsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the Connect attachments.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayConnects; @end /** */ @interface AWSEC2DescribeTransitGatewayMulticastDomainsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • state - The state of the transit gateway multicast domain. Valid values are pending | available | deleting | deleted.

  • transit-gateway-id - The ID of the transit gateway.

  • transit-gateway-multicast-domain-id - The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayMulticastDomainIds; @end /** */ @interface AWSEC2DescribeTransitGatewayMulticastDomainsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the transit gateway multicast domains.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayMulticastDomains; @end /** */ @interface AWSEC2DescribeTransitGatewayPeeringAttachmentsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • transit-gateway-attachment-id - The ID of the transit gateway attachment.

  • local-owner-id - The ID of your Amazon Web Services account.

  • remote-owner-id - The ID of the Amazon Web Services account in the remote Region that owns the transit gateway.

  • state - The state of the peering attachment. Valid values are available | deleted | deleting | failed | failing | initiatingRequest | modifying | pendingAcceptance | pending | rollingBack | rejected | rejecting).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources that have a tag with a specific key, regardless of the tag value.

  • transit-gateway-id - The ID of the transit gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

One or more IDs of the transit gateway peering attachments.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayAttachmentIds; @end /** */ @interface AWSEC2DescribeTransitGatewayPeeringAttachmentsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The transit gateway peering attachments.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayPeeringAttachments; @end /** */ @interface AWSEC2DescribeTransitGatewayPolicyTablesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters associated with the transit gateway policy table.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the transit gateway policy tables.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayPolicyTableIds; @end /** */ @interface AWSEC2DescribeTransitGatewayPolicyTablesResult : AWSModel /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Describes the transit gateway policy tables.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayPolicyTables; @end /** */ @interface AWSEC2DescribeTransitGatewayRouteTableAnnouncementsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters associated with the transit gateway policy table.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the transit gateway route tables that are being advertised.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayRouteTableAnnouncementIds; @end /** */ @interface AWSEC2DescribeTransitGatewayRouteTableAnnouncementsResult : AWSModel /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Describes the transit gateway route table announcement.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayRouteTableAnnouncements; @end /** */ @interface AWSEC2DescribeTransitGatewayRouteTablesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • default-association-route-table - Indicates whether this is the default association route table for the transit gateway (true | false).

  • default-propagation-route-table - Indicates whether this is the default propagation route table for the transit gateway (true | false).

  • state - The state of the route table (available | deleting | deleted | pending).

  • transit-gateway-id - The ID of the transit gateway.

  • transit-gateway-route-table-id - The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the transit gateway route tables.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayRouteTableIds; @end /** */ @interface AWSEC2DescribeTransitGatewayRouteTablesResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the transit gateway route tables.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayRouteTables; @end /** */ @interface AWSEC2DescribeTransitGatewayVpcAttachmentsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • state - The state of the attachment. Valid values are available | deleted | deleting | failed | failing | initiatingRequest | modifying | pendingAcceptance | pending | rollingBack | rejected | rejecting.

  • transit-gateway-attachment-id - The ID of the attachment.

  • transit-gateway-id - The ID of the transit gateway.

  • vpc-id - The ID of the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the attachments.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayAttachmentIds; @end /** */ @interface AWSEC2DescribeTransitGatewayVpcAttachmentsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the VPC attachments.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayVpcAttachments; @end /** */ @interface AWSEC2DescribeTransitGatewaysRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • options.propagation-default-route-table-id - The ID of the default propagation route table.

  • options.amazon-side-asn - The private ASN for the Amazon side of a BGP session.

  • options.association-default-route-table-id - The ID of the default association route table.

  • options.auto-accept-shared-attachments - Indicates whether there is automatic acceptance of attachment requests (enable | disable).

  • options.default-route-table-association - Indicates whether resource attachments are automatically associated with the default association route table (enable | disable).

  • options.default-route-table-propagation - Indicates whether resource attachments automatically propagate routes to the default propagation route table (enable | disable).

  • options.dns-support - Indicates whether DNS support is enabled (enable | disable).

  • options.vpn-ecmp-support - Indicates whether Equal Cost Multipath Protocol support is enabled (enable | disable).

  • owner-id - The ID of the Amazon Web Services account that owns the transit gateway.

  • state - The state of the transit gateway (available | deleted | deleting | modifying | pending).

  • transit-gateway-id - The ID of the transit gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the transit gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayIds; @end /** */ @interface AWSEC2DescribeTransitGatewaysResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the transit gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGateways; @end /** */ @interface AWSEC2DescribeTrunkInterfaceAssociationsRequest : AWSRequest /**

The IDs of the associations.

*/ @property (nonatomic, strong) NSArray * _Nullable associationIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • gre-key - The ID of a trunk interface association.

  • interface-protocol - The interface protocol. Valid values are VLAN and GRE.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeTrunkInterfaceAssociationsResult : AWSModel /**

Information about the trunk associations.

*/ @property (nonatomic, strong) NSArray * _Nullable interfaceAssociations; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeVerifiedAccessEndpointsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the Verified Access endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable verifiedAccessEndpointIds; /**

The ID of the Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessGroupId; /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; @end /** */ @interface AWSEC2DescribeVerifiedAccessEndpointsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the Verified Access endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable verifiedAccessEndpoints; @end /** */ @interface AWSEC2DescribeVerifiedAccessGroupsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the Verified Access groups.

*/ @property (nonatomic, strong) NSArray * _Nullable verifiedAccessGroupIds; /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; @end /** */ @interface AWSEC2DescribeVerifiedAccessGroupsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the Verified Access group.

*/ @property (nonatomic, strong) NSArray * _Nullable verifiedAccessGroups; @end /** */ @interface AWSEC2DescribeVerifiedAccessInstanceLoggingConfigurationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the Verified Access instances.

*/ @property (nonatomic, strong) NSArray * _Nullable verifiedAccessInstanceIds; @end /** */ @interface AWSEC2DescribeVerifiedAccessInstanceLoggingConfigurationsResult : AWSModel /**

The current logging configuration for the Verified Access instances.

*/ @property (nonatomic, strong) NSArray * _Nullable loggingConfigurations; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeVerifiedAccessInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the Verified Access instances.

*/ @property (nonatomic, strong) NSArray * _Nullable verifiedAccessInstanceIds; @end /** */ @interface AWSEC2DescribeVerifiedAccessInstancesResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the Verified Access instances.

*/ @property (nonatomic, strong) NSArray * _Nullable verifiedAccessInstances; @end /** */ @interface AWSEC2DescribeVerifiedAccessTrustProvidersRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. Filter names and values are case-sensitive.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the Verified Access trust providers.

*/ @property (nonatomic, strong) NSArray * _Nullable verifiedAccessTrustProviderIds; @end /** */ @interface AWSEC2DescribeVerifiedAccessTrustProvidersResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the Verified Access trust providers.

*/ @property (nonatomic, strong) NSArray * _Nullable verifiedAccessTrustProviders; @end /** */ @interface AWSEC2DescribeVolumeAttributeRequest : AWSRequest /**

The attribute of the volume. This parameter is required.

*/ @property (nonatomic, assign) AWSEC2VolumeAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /** */ @interface AWSEC2DescribeVolumeAttributeResult : AWSModel /**

The state of autoEnableIO attribute.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable autoEnableIO; /**

A list of product codes.

*/ @property (nonatomic, strong) NSArray * _Nullable productCodes; /**

The ID of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /** */ @interface AWSEC2DescribeVolumeStatusRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • action.code - The action code for the event (for example, enable-volume-io).

  • action.description - A description of the action.

  • action.event-id - The event ID associated with the action.

  • availability-zone - The Availability Zone of the instance.

  • event.description - A description of the event.

  • event.event-id - The event ID.

  • event.event-type - The event type (for io-enabled: passed | failed; for io-performance: io-performance:degraded | io-performance:severely-degraded | io-performance:stalled).

  • event.not-after - The latest end time for the event.

  • event.not-before - The earliest start time for the event.

  • volume-status.details-name - The cause for volume-status.status (io-enabled | io-performance).

  • volume-status.details-status - The status of volume-status.details-name (for io-enabled: passed | failed; for io-performance: normal | degraded | severely-degraded | stalled).

  • volume-status.status - The status of the volume (ok | impaired | warning | insufficient-data).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. This value can be between 5 and 1,000; if the value is larger than 1,000, only 1,000 results are returned. If this parameter is not used, then all items are returned. You cannot specify this parameter and the volume IDs parameter in the same request. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the volumes.

Default: Describes all your volumes.

*/ @property (nonatomic, strong) NSArray * _Nullable volumeIds; @end /** */ @interface AWSEC2DescribeVolumeStatusResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the status of the volumes.

*/ @property (nonatomic, strong) NSArray * _Nullable volumeStatuses; @end /** */ @interface AWSEC2DescribeVolumesModificationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • modification-state - The current modification state (modifying | optimizing | completed | failed).

  • original-iops - The original IOPS rate of the volume.

  • original-size - The original size of the volume, in GiB.

  • original-volume-type - The original volume type of the volume (standard | io1 | io2 | gp2 | sc1 | st1).

  • originalMultiAttachEnabled - Indicates whether Multi-Attach support was enabled (true | false).

  • start-time - The modification start time.

  • target-iops - The target IOPS rate of the volume.

  • target-size - The target size of the volume, in GiB.

  • target-volume-type - The target volume type of the volume (standard | io1 | io2 | gp2 | sc1 | st1).

  • targetMultiAttachEnabled - Indicates whether Multi-Attach support is to be enabled (true | false).

  • volume-id - The ID of the volume.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results (up to a limit of 500) to be returned in a paginated request. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned by a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the volumes.

*/ @property (nonatomic, strong) NSArray * _Nullable volumeIds; @end /** */ @interface AWSEC2DescribeVolumesModificationsResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null if there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the volume modifications.

*/ @property (nonatomic, strong) NSArray * _Nullable volumesModifications; @end /** */ @interface AWSEC2DescribeVolumesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • attachment.attach-time - The time stamp when the attachment initiated.

  • attachment.delete-on-termination - Whether the volume is deleted on instance termination.

  • attachment.device - The device name specified in the block device mapping (for example, /dev/sda1).

  • attachment.instance-id - The ID of the instance the volume is attached to.

  • attachment.status - The attachment state (attaching | attached | detaching).

  • availability-zone - The Availability Zone in which the volume was created.

  • create-time - The time stamp when the volume was created.

  • encrypted - Indicates whether the volume is encrypted (true | false)

  • multi-attach-enabled - Indicates whether the volume is enabled for Multi-Attach (true | false)

  • fast-restored - Indicates whether the volume was created from a snapshot that is enabled for fast snapshot restore (true | false).

  • size - The size of the volume, in GiB.

  • snapshot-id - The snapshot from which the volume was created.

  • status - The state of the volume (creating | available | in-use | deleting | deleted | error).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • volume-id - The volume ID.

  • volume-type - The Amazon EBS volume type (gp2 | gp3 | io1 | io2 | st1 | sc1| standard)

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of volumes to return for this request. This value can be between 5 and 500; if you specify a value larger than 500, only 500 items are returned. If this parameter is not used, then all items are returned. You cannot specify this parameter and the volume IDs parameter in the same request. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned from the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The volume IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable volumeIds; @end /** */ @interface AWSEC2DescribeVolumesResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the volumes.

*/ @property (nonatomic, strong) NSArray * _Nullable volumes; @end /** */ @interface AWSEC2DescribeVpcAttributeRequest : AWSRequest /**

The VPC attribute.

*/ @property (nonatomic, assign) AWSEC2VpcAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2DescribeVpcAttributeResult : AWSModel /**

Indicates whether the instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable enableDnsHostnames; /**

Indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for your instances to their corresponding IP addresses; otherwise, it does not.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable enableDnsSupport; /**

Indicates whether Network Address Usage metrics are enabled for your VPC.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable enableNetworkAddressUsageMetrics; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2DescribeVpcClassicLinkDnsSupportRequest : AWSRequest /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the VPCs.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcIds; @end /** */ @interface AWSEC2DescribeVpcClassicLinkDnsSupportResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the ClassicLink DNS support status of the VPCs.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcs; @end /** */ @interface AWSEC2DescribeVpcClassicLinkRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • is-classic-link-enabled - Whether the VPC is enabled for ClassicLink (true | false).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The VPCs for which you want to describe the ClassicLink status.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcIds; @end /** */ @interface AWSEC2DescribeVpcClassicLinkResult : AWSModel /**

The ClassicLink status of the VPCs.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcs; @end /** */ @interface AWSEC2DescribeVpcEndpointConnectionNotificationsRequest : AWSRequest /**

The ID of the notification.

*/ @property (nonatomic, strong) NSString * _Nullable connectionNotificationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • connection-notification-arn - The ARN of the SNS topic for the notification.

  • connection-notification-id - The ID of the notification.

  • connection-notification-state - The state of the notification (Enabled | Disabled).

  • connection-notification-type - The type of notification (Topic).

  • service-id - The ID of the endpoint service.

  • vpc-endpoint-id - The ID of the VPC endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return in a single call. To retrieve the remaining results, make another request with the returned NextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to request the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeVpcEndpointConnectionNotificationsResult : AWSModel /**

The notifications.

*/ @property (nonatomic, strong) NSArray * _Nullable connectionNotificationSet; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeVpcEndpointConnectionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • ip-address-type - The IP address type (ipv4 | ipv6).

  • service-id - The ID of the service.

  • vpc-endpoint-owner - The ID of the Amazon Web Services account ID that owns the endpoint.

  • vpc-endpoint-state - The state of the endpoint (pendingAcceptance | pending | available | deleting | deleted | rejected | failed).

  • vpc-endpoint-id - The ID of the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1,000; if MaxResults is given a value larger than 1,000, only 1,000 results are returned.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeVpcEndpointConnectionsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the VPC endpoint connections.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcEndpointConnections; @end /** */ @interface AWSEC2DescribeVpcEndpointServiceConfigurationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • service-name - The name of the service.

  • service-id - The ID of the service.

  • service-state - The state of the service (Pending | Available | Deleting | Deleted | Failed).

  • supported-ip-address-types - The IP address type (ipv4 | ipv6).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1,000; if MaxResults is given a value larger than 1,000, only 1,000 results are returned.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the endpoint services.

*/ @property (nonatomic, strong) NSArray * _Nullable serviceIds; @end /** */ @interface AWSEC2DescribeVpcEndpointServiceConfigurationsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the services.

*/ @property (nonatomic, strong) NSArray * _Nullable serviceConfigurations; @end /** */ @interface AWSEC2DescribeVpcEndpointServicePermissionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • principal - The ARN of the principal.

  • principal-type - The principal type (All | Service | OrganizationUnit | Account | User | Role).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1,000; if MaxResults is given a value larger than 1,000, only 1,000 results are returned.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; @end /** */ @interface AWSEC2DescribeVpcEndpointServicePermissionsResult : AWSModel /**

Information about the allowed principals.

*/ @property (nonatomic, strong) NSArray * _Nullable allowedPrincipals; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2DescribeVpcEndpointServicesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • owner - The ID or alias of the Amazon Web Services account that owns the service.

  • service-name - The name of the service.

  • service-type - The type of service (Interface | Gateway | GatewayLoadBalancer).

  • supported-ip-address-types - The IP address type (ipv4 | ipv6).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

Constraint: If the value is greater than 1,000, we return only 1,000 items.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next set of items to return. (You received this token from a prior call.)

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The service names.

*/ @property (nonatomic, strong) NSArray * _Nullable serviceNames; @end /** */ @interface AWSEC2DescribeVpcEndpointServicesResult : AWSModel /**

The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the service.

*/ @property (nonatomic, strong) NSArray * _Nullable serviceDetails; /**

The supported services.

*/ @property (nonatomic, strong) NSArray * _Nullable serviceNames; @end /** */ @interface AWSEC2DescribeVpcEndpointsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • ip-address-type - The IP address type (ipv4 | ipv6).

  • service-name - The name of the service.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC in which the endpoint resides.

  • vpc-endpoint-id - The ID of the endpoint.

  • vpc-endpoint-state - The state of the endpoint (pendingAcceptance | pending | available | deleting | deleted | rejected | failed).

  • vpc-endpoint-type - The type of VPC endpoint (Interface | Gateway | GatewayLoadBalancer).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.

Constraint: If the value is greater than 1,000, we return only 1,000 items.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next set of items to return. (You received this token from a prior call.)

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the VPC endpoints.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcEndpointIds; @end /** */ @interface AWSEC2DescribeVpcEndpointsResult : AWSModel /**

The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the endpoints.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcEndpoints; @end /** */ @interface AWSEC2DescribeVpcPeeringConnectionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • accepter-vpc-info.cidr-block - The IPv4 CIDR block of the accepter VPC.

  • accepter-vpc-info.owner-id - The ID of the Amazon Web Services account that owns the accepter VPC.

  • accepter-vpc-info.vpc-id - The ID of the accepter VPC.

  • expiration-time - The expiration date and time for the VPC peering connection.

  • requester-vpc-info.cidr-block - The IPv4 CIDR block of the requester's VPC.

  • requester-vpc-info.owner-id - The ID of the Amazon Web Services account that owns the requester VPC.

  • requester-vpc-info.vpc-id - The ID of the requester VPC.

  • status-code - The status of the VPC peering connection (pending-acceptance | failed | expired | provisioning | active | deleting | deleted | rejected).

  • status-message - A message that provides more information about the status of the VPC peering connection, if applicable.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-peering-connection-id - The ID of the VPC peering connection.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the VPC peering connections.

Default: Describes all your VPC peering connections.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcPeeringConnectionIds; @end /** */ @interface AWSEC2DescribeVpcPeeringConnectionsResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the VPC peering connections.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcPeeringConnections; @end /** */ @interface AWSEC2DescribeVpcsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters.

  • cidr - The primary IPv4 CIDR block of the VPC. The CIDR block you specify must exactly match the VPC's CIDR block for information to be returned for the VPC. Must contain the slash followed by one or two digits (for example, /28).

  • cidr-block-association.cidr-block - An IPv4 CIDR block associated with the VPC.

  • cidr-block-association.association-id - The association ID for an IPv4 CIDR block associated with the VPC.

  • cidr-block-association.state - The state of an IPv4 CIDR block associated with the VPC.

  • dhcp-options-id - The ID of a set of DHCP options.

  • ipv6-cidr-block-association.ipv6-cidr-block - An IPv6 CIDR block associated with the VPC.

  • ipv6-cidr-block-association.ipv6-pool - The ID of the IPv6 address pool from which the IPv6 CIDR block is allocated.

  • ipv6-cidr-block-association.association-id - The association ID for an IPv6 CIDR block associated with the VPC.

  • ipv6-cidr-block-association.state - The state of an IPv6 CIDR block associated with the VPC.

  • is-default - Indicates whether the VPC is the default VPC.

  • owner-id - The ID of the Amazon Web Services account that owns the VPC.

  • state - The state of the VPC (pending | available).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • vpc-id - The ID of the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the VPCs.

Default: Describes all your VPCs.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcIds; @end /** */ @interface AWSEC2DescribeVpcsResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about one or more VPCs.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcs; @end /**

Contains the parameters for DescribeVpnConnections.

*/ @interface AWSEC2DescribeVpnConnectionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • customer-gateway-configuration - The configuration information for the customer gateway.

  • customer-gateway-id - The ID of a customer gateway associated with the VPN connection.

  • state - The state of the VPN connection (pending | available | deleting | deleted).

  • option.static-routes-only - Indicates whether the connection has static routes only. Used for devices that do not support Border Gateway Protocol (BGP).

  • route.destination-cidr-block - The destination CIDR block. This corresponds to the subnet used in a customer data center.

  • bgp-asn - The BGP Autonomous System Number (ASN) associated with a BGP device.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • type - The type of VPN connection. Currently the only supported type is ipsec.1.

  • vpn-connection-id - The ID of the VPN connection.

  • vpn-gateway-id - The ID of a virtual private gateway associated with the VPN connection.

  • transit-gateway-id - The ID of a transit gateway associated with the VPN connection.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

One or more VPN connection IDs.

Default: Describes your VPN connections.

*/ @property (nonatomic, strong) NSArray * _Nullable vpnConnectionIds; @end /**

Contains the output of DescribeVpnConnections.

*/ @interface AWSEC2DescribeVpnConnectionsResult : AWSModel /**

Information about one or more VPN connections.

*/ @property (nonatomic, strong) NSArray * _Nullable vpnConnections; @end /**

Contains the parameters for DescribeVpnGateways.

*/ @interface AWSEC2DescribeVpnGatewaysRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • amazon-side-asn - The Autonomous System Number (ASN) for the Amazon side of the gateway.

  • attachment.state - The current state of the attachment between the gateway and the VPC (attaching | attached | detaching | detached).

  • attachment.vpc-id - The ID of an attached VPC.

  • availability-zone - The Availability Zone for the virtual private gateway (if applicable).

  • state - The state of the virtual private gateway (pending | available | deleting | deleted).

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

  • type - The type of virtual private gateway. Currently the only supported type is ipsec.1.

  • vpn-gateway-id - The ID of the virtual private gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

One or more virtual private gateway IDs.

Default: Describes all your virtual private gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable vpnGatewayIds; @end /**

Contains the output of DescribeVpnGateways.

*/ @interface AWSEC2DescribeVpnGatewaysResult : AWSModel /**

Information about one or more virtual private gateways.

*/ @property (nonatomic, strong) NSArray * _Nullable vpnGateways; @end /**

Describes the destination options for a flow log.

*/ @interface AWSEC2DestinationOptionsRequest : AWSModel /**

The format for the flow log. The default is plain-text.

*/ @property (nonatomic, assign) AWSEC2DestinationFileFormat fileFormat; /**

Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3. The default is false.

*/ @property (nonatomic, strong) NSNumber * _Nullable hiveCompatiblePartitions; /**

Indicates whether to partition the flow log per hour. This reduces the cost and response time for queries. The default is false.

*/ @property (nonatomic, strong) NSNumber * _Nullable perHourPartition; @end /**

Describes the destination options for a flow log.

*/ @interface AWSEC2DestinationOptionsResponse : AWSModel /**

The format for the flow log.

*/ @property (nonatomic, assign) AWSEC2DestinationFileFormat fileFormat; /**

Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3.

*/ @property (nonatomic, strong) NSNumber * _Nullable hiveCompatiblePartitions; /**

Indicates whether to partition the flow log per hour.

*/ @property (nonatomic, strong) NSNumber * _Nullable perHourPartition; @end /** */ @interface AWSEC2DetachClassicLinkVpcRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance to unlink from the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The ID of the VPC to which the instance is linked.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2DetachClassicLinkVpcResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2DetachInternetGatewayRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable internetGatewayId; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Contains the parameters for DetachNetworkInterface.

Required parameters: [AttachmentId] */ @interface AWSEC2DetachNetworkInterfaceRequest : AWSRequest /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable attachmentId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Specifies whether to force a detachment.

  • Use the Force parameter only as a last resort to detach a network interface from a failed instance.

  • If you use the Force parameter to detach a network interface, you might not be able to attach a different network interface to the same index on the instance without first stopping and starting the instance.

  • If you force the detachment of a network interface, the instance metadata might not get updated. This means that the attributes associated with the detached network interface might still be visible. The instance metadata will get updated when you stop and start the instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable force; @end /** */ @interface AWSEC2DetachVerifiedAccessTrustProviderRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; /**

The ID of the Verified Access trust provider.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessTrustProviderId; @end /** */ @interface AWSEC2DetachVerifiedAccessTrustProviderResult : AWSModel /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessInstance * _Nullable verifiedAccessInstance; /**

The ID of the Verified Access trust provider.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessTrustProvider * _Nullable verifiedAccessTrustProvider; @end /** */ @interface AWSEC2DetachVolumeRequest : AWSRequest /**

The device name.

*/ @property (nonatomic, strong) NSString * _Nullable device; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Forces detachment if the previous detachment attempt did not occur cleanly (for example, logging into an instance, unmounting the volume, and detaching normally). This option can lead to data loss or a corrupted file system. Use this option only as a last resort to detach a volume from a failed instance. The instance won't have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures.

*/ @property (nonatomic, strong) NSNumber * _Nullable force; /**

The ID of the instance. If you are detaching a Multi-Attach enabled volume, you must specify an instance ID.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The ID of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /**

Contains the parameters for DetachVpnGateway.

Required parameters: [VpcId, VpnGatewayId] */ @interface AWSEC2DetachVpnGatewayRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; /**

The ID of the virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable vpnGatewayId; @end /**

Describes the options for an Amazon Web Services Verified Access device-identity based trust provider.

*/ @interface AWSEC2DeviceOptions : AWSModel /**

The ID of the tenant application with the device-identity provider.

*/ @property (nonatomic, strong) NSString * _Nullable tenantId; @end /**

Describes a DHCP configuration option.

*/ @interface AWSEC2DhcpConfiguration : AWSModel /**

The name of a DHCP option.

*/ @property (nonatomic, strong) NSString * _Nullable key; /**

The values for the DHCP option.

*/ @property (nonatomic, strong) NSArray * _Nullable values; @end /**

The set of DHCP options.

*/ @interface AWSEC2DhcpOptions : AWSModel /**

The DHCP options in the set.

*/ @property (nonatomic, strong) NSArray * _Nullable dhcpConfigurations; /**

The ID of the set of DHCP options.

*/ @property (nonatomic, strong) NSString * _Nullable dhcpOptionsId; /**

The ID of the Amazon Web Services account that owns the DHCP options set.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

Any tags assigned to the DHCP options set.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes an Active Directory.

*/ @interface AWSEC2DirectoryServiceAuthentication : AWSModel /**

The ID of the Active Directory used for authentication.

*/ @property (nonatomic, strong) NSString * _Nullable directoryId; @end /**

Describes the Active Directory to be used for client authentication.

*/ @interface AWSEC2DirectoryServiceAuthenticationRequest : AWSModel /**

The ID of the Active Directory to be used for authentication.

*/ @property (nonatomic, strong) NSString * _Nullable directoryId; @end /** */ @interface AWSEC2DisableAddressTransferRequest : AWSRequest /**

The allocation ID of an Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DisableAddressTransferResult : AWSModel /**

An Elastic IP address transfer.

*/ @property (nonatomic, strong) AWSEC2AddressTransfer * _Nullable addressTransfer; @end /** */ @interface AWSEC2DisableAwsNetworkPerformanceMetricSubscriptionRequest : AWSRequest /**

The target Region or Availability Zone that the metric subscription is disabled for. For example, eu-north-1.

*/ @property (nonatomic, strong) NSString * _Nullable destination; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The metric used for the disabled subscription.

*/ @property (nonatomic, assign) AWSEC2MetricType metric; /**

The source Region or Availability Zone that the metric subscription is disabled for. For example, us-east-1.

*/ @property (nonatomic, strong) NSString * _Nullable source; /**

The statistic used for the disabled subscription.

*/ @property (nonatomic, assign) AWSEC2StatisticType statistic; @end /** */ @interface AWSEC2DisableAwsNetworkPerformanceMetricSubscriptionResult : AWSModel /**

Indicates whether the unsubscribe action was successful.

*/ @property (nonatomic, strong) NSNumber * _Nullable output; @end /** */ @interface AWSEC2DisableEbsEncryptionByDefaultRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DisableEbsEncryptionByDefaultResult : AWSModel /**

The updated status of encryption by default.

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsEncryptionByDefault; @end /** */ @interface AWSEC2DisableFastLaunchRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Forces the image settings to turn off faster launching for your Windows AMI. This parameter overrides any errors that are encountered while cleaning up resources in your account.

*/ @property (nonatomic, strong) NSNumber * _Nullable force; /**

The ID of the image for which you’re turning off faster launching, and removing pre-provisioned snapshots.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2DisableFastLaunchResult : AWSModel /**

The ID of the image for which faster-launching has been turned off.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The launch template that was used to launch Windows instances from pre-provisioned snapshots.

*/ @property (nonatomic, strong) AWSEC2FastLaunchLaunchTemplateSpecificationResponse * _Nullable launchTemplate; /**

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows faster launching.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxParallelLaunches; /**

The owner of the Windows AMI for which faster launching was turned off.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The pre-provisioning resource type that must be cleaned after turning off faster launching for the Windows AMI. Supported values include: snapshot.

*/ @property (nonatomic, assign) AWSEC2FastLaunchResourceType resourceType; /**

Parameters that were used for faster launching for the Windows AMI before faster launching was turned off. This informs the clean-up process.

*/ @property (nonatomic, strong) AWSEC2FastLaunchSnapshotConfigurationResponse * _Nullable snapshotConfiguration; /**

The current state of faster launching for the specified Windows AMI.

*/ @property (nonatomic, assign) AWSEC2FastLaunchStateCode state; /**

The reason that the state changed for faster launching for the Windows AMI.

*/ @property (nonatomic, strong) NSString * _Nullable stateTransitionReason; /**

The time that the state changed for faster launching for the Windows AMI.

*/ @property (nonatomic, strong) NSDate * _Nullable stateTransitionTime; @end /**

Contains information about the errors that occurred when disabling fast snapshot restores.

*/ @interface AWSEC2DisableFastSnapshotRestoreErrorItem : AWSModel /**

The errors.

*/ @property (nonatomic, strong) NSArray * _Nullable fastSnapshotRestoreStateErrors; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; @end /**

Describes an error that occurred when disabling fast snapshot restores.

*/ @interface AWSEC2DisableFastSnapshotRestoreStateError : AWSModel /**

The error code.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

The error message.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Contains information about an error that occurred when disabling fast snapshot restores.

*/ @interface AWSEC2DisableFastSnapshotRestoreStateErrorItem : AWSModel /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The error.

*/ @property (nonatomic, strong) AWSEC2DisableFastSnapshotRestoreStateError * _Nullable error; @end /**

Describes fast snapshot restores that were successfully disabled.

*/ @interface AWSEC2DisableFastSnapshotRestoreSuccessItem : AWSModel /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The time at which fast snapshot restores entered the disabled state.

*/ @property (nonatomic, strong) NSDate * _Nullable disabledTime; /**

The time at which fast snapshot restores entered the disabling state.

*/ @property (nonatomic, strong) NSDate * _Nullable disablingTime; /**

The time at which fast snapshot restores entered the enabled state.

*/ @property (nonatomic, strong) NSDate * _Nullable enabledTime; /**

The time at which fast snapshot restores entered the enabling state.

*/ @property (nonatomic, strong) NSDate * _Nullable enablingTime; /**

The time at which fast snapshot restores entered the optimizing state.

*/ @property (nonatomic, strong) NSDate * _Nullable optimizingTime; /**

The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.

*/ @property (nonatomic, strong) NSString * _Nullable ownerAlias; /**

The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The state of fast snapshot restores for the snapshot.

*/ @property (nonatomic, assign) AWSEC2FastSnapshotRestoreStateCode state; /**

The reason for the state transition. The possible values are as follows:

  • Client.UserInitiated - The state successfully transitioned to enabling or disabling.

  • Client.UserInitiated - Lifecycle state transition - The state successfully transitioned to optimizing, enabled, or disabled.

*/ @property (nonatomic, strong) NSString * _Nullable stateTransitionReason; @end /** */ @interface AWSEC2DisableFastSnapshotRestoresRequest : AWSRequest /**

One or more Availability Zones. For example, us-east-2a.

*/ @property (nonatomic, strong) NSArray * _Nullable availabilityZones; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of one or more snapshots. For example, snap-1234567890abcdef0.

*/ @property (nonatomic, strong) NSArray * _Nullable sourceSnapshotIds; @end /** */ @interface AWSEC2DisableFastSnapshotRestoresResult : AWSModel /**

Information about the snapshots for which fast snapshot restores were successfully disabled.

*/ @property (nonatomic, strong) NSArray * _Nullable successful; /**

Information about the snapshots for which fast snapshot restores could not be disabled.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessful; @end /** */ @interface AWSEC2DisableImageDeprecationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2DisableImageDeprecationResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2DisableIpamOrganizationAdminAccountRequest : AWSRequest /**

The Organizations member account ID that you want to disable as IPAM account.

*/ @property (nonatomic, strong) NSString * _Nullable delegatedAdminAccountId; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DisableIpamOrganizationAdminAccountResult : AWSModel /**

The result of disabling the IPAM account.

*/ @property (nonatomic, strong) NSNumber * _Nullable success; @end /** */ @interface AWSEC2DisableSerialConsoleAccessRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DisableSerialConsoleAccessResult : AWSModel /**

If true, access to the EC2 serial console of all instances is enabled for your account. If false, access to the EC2 serial console of all instances is disabled for your account.

*/ @property (nonatomic, strong) NSNumber * _Nullable serialConsoleAccessEnabled; @end /** */ @interface AWSEC2DisableTransitGatewayRouteTablePropagationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the route table announcement.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableAnnouncementId; /**

The ID of the propagation route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2DisableTransitGatewayRouteTablePropagationResult : AWSModel /**

Information about route propagation.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPropagation * _Nullable propagation; @end /**

Contains the parameters for DisableVgwRoutePropagation.

Required parameters: [GatewayId, RouteTableId] */ @interface AWSEC2DisableVgwRoutePropagationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable gatewayId; /**

The ID of the route table.

*/ @property (nonatomic, strong) NSString * _Nullable routeTableId; @end /** */ @interface AWSEC2DisableVpcClassicLinkDnsSupportRequest : AWSRequest /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2DisableVpcClassicLinkDnsSupportResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2DisableVpcClassicLinkRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2DisableVpcClassicLinkResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2DisassociateAddressRequest : AWSRequest /**

The association ID. This parameter is required.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Deprecated.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; @end /** */ @interface AWSEC2DisassociateClientVpnTargetNetworkRequest : AWSRequest /**

The ID of the target network association.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The ID of the Client VPN endpoint from which to disassociate the target network.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DisassociateClientVpnTargetNetworkResult : AWSModel /**

The ID of the target network association.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The current state of the target network association.

*/ @property (nonatomic, strong) AWSEC2AssociationStatus * _Nullable status; @end /** */ @interface AWSEC2DisassociateEnclaveCertificateIamRoleRequest : AWSRequest /**

The ARN of the ACM certificate from which to disassociate the IAM role.

*/ @property (nonatomic, strong) NSString * _Nullable certificateArn; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ARN of the IAM role to disassociate.

*/ @property (nonatomic, strong) NSString * _Nullable roleArn; @end /** */ @interface AWSEC2DisassociateEnclaveCertificateIamRoleResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2DisassociateIamInstanceProfileRequest : AWSRequest /**

The ID of the IAM instance profile association.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; @end /** */ @interface AWSEC2DisassociateIamInstanceProfileResult : AWSModel /**

Information about the IAM instance profile association.

*/ @property (nonatomic, strong) AWSEC2IamInstanceProfileAssociation * _Nullable iamInstanceProfileAssociation; @end /** */ @interface AWSEC2DisassociateInstanceEventWindowRequest : AWSRequest /**

One or more targets to disassociate from the specified event window.

*/ @property (nonatomic, strong) AWSEC2InstanceEventWindowDisassociationRequest * _Nullable associationTarget; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the event window.

*/ @property (nonatomic, strong) NSString * _Nullable instanceEventWindowId; @end /** */ @interface AWSEC2DisassociateInstanceEventWindowResult : AWSModel /**

Information about the event window.

*/ @property (nonatomic, strong) AWSEC2InstanceEventWindow * _Nullable instanceEventWindow; @end /** */ @interface AWSEC2DisassociateIpamResourceDiscoveryRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

A resource discovery association ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryAssociationId; @end /** */ @interface AWSEC2DisassociateIpamResourceDiscoveryResult : AWSModel /**

A resource discovery association.

*/ @property (nonatomic, strong) AWSEC2IpamResourceDiscoveryAssociation * _Nullable ipamResourceDiscoveryAssociation; @end /** */ @interface AWSEC2DisassociateNatGatewayAddressRequest : AWSRequest /**

The association IDs of EIPs that have been associated with the NAT gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable associationIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum amount of time to wait (in seconds) before forcibly releasing the IP addresses if connections are still in progress. Default value is 350 seconds.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxDrainDurationSeconds; /**

The ID of the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; @end /** */ @interface AWSEC2DisassociateNatGatewayAddressResult : AWSModel /**

Information about the NAT gateway IP addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable natGatewayAddresses; /**

The ID of the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; @end /** */ @interface AWSEC2DisassociateRouteTableRequest : AWSRequest /**

The association ID representing the current association between the route table and subnet or gateway.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DisassociateSubnetCidrBlockRequest : AWSRequest /**

The association ID for the CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; @end /** */ @interface AWSEC2DisassociateSubnetCidrBlockResult : AWSModel /**

Information about the IPv6 CIDR block association.

*/ @property (nonatomic, strong) AWSEC2SubnetIpv6CidrBlockAssociation * _Nullable ipv6CidrBlockAssociation; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /** */ @interface AWSEC2DisassociateTransitGatewayMulticastDomainRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the subnets;

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /** */ @interface AWSEC2DisassociateTransitGatewayMulticastDomainResult : AWSModel /**

Information about the association.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayMulticastDomainAssociations * _Nullable associations; @end /** */ @interface AWSEC2DisassociateTransitGatewayPolicyTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the transit gateway attachment to disassociate from the policy table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the disassociated policy table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayPolicyTableId; @end /** */ @interface AWSEC2DisassociateTransitGatewayPolicyTableResult : AWSModel /**

Returns details about the transit gateway policy table disassociation.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPolicyTableAssociation * _Nullable association; @end /** */ @interface AWSEC2DisassociateTransitGatewayRouteTableRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2DisassociateTransitGatewayRouteTableResult : AWSModel /**

Information about the association.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayAssociation * _Nullable association; @end /** */ @interface AWSEC2DisassociateTrunkInterfaceRequest : AWSRequest /**

The ID of the association

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2DisassociateTrunkInterfaceResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2DisassociateVpcCidrBlockRequest : AWSRequest /**

The association ID for the CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; @end /** */ @interface AWSEC2DisassociateVpcCidrBlockResult : AWSModel /**

Information about the IPv4 CIDR block association.

*/ @property (nonatomic, strong) AWSEC2VpcCidrBlockAssociation * _Nullable cidrBlockAssociation; /**

Information about the IPv6 CIDR block association.

*/ @property (nonatomic, strong) AWSEC2VpcIpv6CidrBlockAssociation * _Nullable ipv6CidrBlockAssociation; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes a disk image.

*/ @interface AWSEC2DiskImage : AWSModel /**

A description of the disk image.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Information about the disk image.

*/ @property (nonatomic, strong) AWSEC2DiskImageDetail * _Nullable image; /**

Information about the volume.

*/ @property (nonatomic, strong) AWSEC2VolumeDetail * _Nullable volume; @end /**

Describes a disk image.

*/ @interface AWSEC2DiskImageDescription : AWSModel /**

The checksum computed for the disk image.

*/ @property (nonatomic, strong) NSString * _Nullable checksum; /**

The disk image format.

*/ @property (nonatomic, assign) AWSEC2DiskImageFormat format; /**

A presigned URL for the import manifest stored in Amazon S3. For information about creating a presigned URL for an Amazon S3 object, read the "Query String Request Authentication Alternative" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide.

For information about the import manifest referenced by this API action, see VM Import Manifest.

*/ @property (nonatomic, strong) NSString * _Nullable importManifestUrl; /**

The size of the disk image, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable size; @end /**

Describes a disk image.

Required parameters: [Bytes, Format, ImportManifestUrl] */ @interface AWSEC2DiskImageDetail : AWSModel /**

The size of the disk image, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable bytes; /**

The disk image format.

*/ @property (nonatomic, assign) AWSEC2DiskImageFormat format; /**

A presigned URL for the import manifest stored in Amazon S3 and presented here as an Amazon S3 presigned URL. For information about creating a presigned URL for an Amazon S3 object, read the "Query String Request Authentication Alternative" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide.

For information about the import manifest referenced by this API action, see VM Import Manifest.

*/ @property (nonatomic, strong) NSString * _Nullable importManifestUrl; @end /**

Describes a disk image volume.

*/ @interface AWSEC2DiskImageVolumeDescription : AWSModel /**

The volume identifier.

*/ @property (nonatomic, strong) NSString * _Nullable identifier; /**

The size of the volume, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable size; @end /**

Describes a disk.

*/ @interface AWSEC2DiskInfo : AWSModel /**

The number of disks with this configuration.

*/ @property (nonatomic, strong) NSNumber * _Nullable count; /**

The size of the disk in GB.

*/ @property (nonatomic, strong) NSNumber * _Nullable sizeInGB; /**

The type of disk.

*/ @property (nonatomic, assign) AWSEC2DiskType types; @end /**

Describes a DNS entry.

*/ @interface AWSEC2DnsEntry : AWSModel /**

The DNS name.

*/ @property (nonatomic, strong) NSString * _Nullable dnsName; /**

The ID of the private hosted zone.

*/ @property (nonatomic, strong) NSString * _Nullable hostedZoneId; @end /**

Describes the DNS options for an endpoint.

*/ @interface AWSEC2DnsOptions : AWSModel /**

The DNS records created for the endpoint.

*/ @property (nonatomic, assign) AWSEC2DnsRecordIpType dnsRecordIpType; /**

Indicates whether to enable private DNS only for inbound endpoints.

*/ @property (nonatomic, strong) NSNumber * _Nullable privateDnsOnlyForInboundResolverEndpoint; @end /**

Describes the DNS options for an endpoint.

*/ @interface AWSEC2DnsOptionsSpecification : AWSModel /**

The DNS records created for the endpoint.

*/ @property (nonatomic, assign) AWSEC2DnsRecordIpType dnsRecordIpType; /**

Indicates whether to enable private DNS only for inbound endpoints. This option is available only for services that support both gateway and interface endpoints. It routes traffic that originates from the VPC to the gateway endpoint and traffic that originates from on-premises to the interface endpoint.

*/ @property (nonatomic, strong) NSNumber * _Nullable privateDnsOnlyForInboundResolverEndpoint; @end /**

Information about the DNS server to be used.

*/ @interface AWSEC2DnsServersOptionsModifyStructure : AWSModel /**

The IPv4 address range, in CIDR notation, of the DNS servers to be used. You can specify up to two DNS servers. Ensure that the DNS servers can be reached by the clients. The specified values overwrite the existing values.

*/ @property (nonatomic, strong) NSArray * _Nullable customDnsServers; /**

Indicates whether DNS servers should be used. Specify False to delete the existing DNS servers.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Describes a block device for an EBS volume.

*/ @interface AWSEC2EbsBlockDevice : AWSModel /**

Indicates whether the EBS volume is deleted on instance termination. For more information, see Preserving Amazon EBS volumes on instance termination in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

Indicates whether the encryption state of an EBS volume is changed while being restored from a backing snapshot. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Amazon EBS encryption in the Amazon EC2 User Guide.

In no case can you remove encryption from an encrypted volume.

Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For more information, see Supported instance types.

This parameter is not returned by DescribeImageAttribute.

For CreateImage and RegisterImage, whether you can include this parameter, and the allowed values differ depending on the type of block device mapping you are creating.

  • If you are creating a block device mapping for a new (empty) volume, you can include this parameter, and specify either true for an encrypted volume, or false for an unencrypted volume. If you omit this parameter, it defaults to false (unencrypted).

  • If you are creating a block device mapping from an existing encrypted or unencrypted snapshot, you must omit this parameter. If you include this parameter, the request will fail, regardless of the value that you specify.

  • If you are creating a block device mapping from an existing unencrypted volume, you can include this parameter, but you must specify false. If you specify true, the request will fail. In this case, we recommend that you omit the parameter.

  • If you are creating a block device mapping from an existing encrypted volume, you can include this parameter, and specify either true or false. However, if you specify false, the parameter is ignored and the block device mapping is always encrypted. In this case, we recommend that you omit the parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

The following are the supported values for each volume type:

  • gp3: 3,000-16,000 IOPS

  • io1: 100-64,000 IOPS

  • io2: 100-64,000 IOPS

For io1 and io2 volumes, we guarantee 64,000 IOPS only for Instances built on the Nitro System. Other instance families guarantee performance up to 32,000 IOPS.

This parameter is required for io1 and io2 volumes. The default for gp3 volumes is 3,000 IOPS. This parameter is not supported for gp2, st1, sc1, or standard volumes.

*/ @property (nonatomic, strong) NSNumber * _Nullable iops; /**

Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted.

This parameter is only supported on BlockDeviceMapping objects called by RunInstances, RequestSpotFleet, and RequestSpotInstances.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

The ARN of the Outpost on which the snapshot is stored.

This parameter is only supported on BlockDeviceMapping objects called by CreateImage.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The throughput that the volume supports, in MiB/s.

This parameter is valid only for gp3 volumes.

Valid Range: Minimum value of 125. Maximum value of 1000.

*/ @property (nonatomic, strong) NSNumber * _Nullable throughput; /**

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. If you specify a snapshot, the default is the snapshot size. You can specify a volume size that is equal to or larger than the snapshot size.

The following are the supported volumes sizes for each volume type:

  • gp2 and gp3:1-16,384

  • io1 and io2: 4-16,384

  • st1 and sc1: 125-16,384

  • standard: 1-1,024

*/ @property (nonatomic, strong) NSNumber * _Nullable volumeSize; /**

The volume type. For more information, see Amazon EBS volume types in the Amazon EC2 User Guide. If the volume type is io1 or io2, you must specify the IOPS that the volume supports.

*/ @property (nonatomic, assign) AWSEC2VolumeType volumeType; @end /**

Describes the Amazon EBS features supported by the instance type.

*/ @interface AWSEC2EbsInfo : AWSModel /**

Describes the optimized EBS performance for the instance type.

*/ @property (nonatomic, strong) AWSEC2EbsOptimizedInfo * _Nullable ebsOptimizedInfo; /**

Indicates whether the instance type is Amazon EBS-optimized. For more information, see Amazon EBS-optimized instances in Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2EbsOptimizedSupport ebsOptimizedSupport; /**

Indicates whether Amazon EBS encryption is supported.

*/ @property (nonatomic, assign) AWSEC2EbsEncryptionSupport encryptionSupport; /**

Indicates whether non-volatile memory express (NVMe) is supported.

*/ @property (nonatomic, assign) AWSEC2EbsNvmeSupport nvmeSupport; @end /**

Describes a parameter used to set up an EBS volume in a block device mapping.

*/ @interface AWSEC2EbsInstanceBlockDevice : AWSModel /**

The time stamp when the attachment initiated.

*/ @property (nonatomic, strong) NSDate * _Nullable attachTime; /**

Indicates whether the volume is deleted on instance termination.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

The attachment state.

*/ @property (nonatomic, assign) AWSEC2AttachmentStatus status; /**

The ID of the EBS volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /**

Describes information used to set up an EBS volume specified in a block device mapping.

*/ @interface AWSEC2EbsInstanceBlockDeviceSpecification : AWSModel /**

Indicates whether the volume is deleted on instance termination.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

The ID of the EBS volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /**

Describes the optimized EBS performance for supported instance types.

*/ @interface AWSEC2EbsOptimizedInfo : AWSModel /**

The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.

*/ @property (nonatomic, strong) NSNumber * _Nullable baselineBandwidthInMbps; /**

The baseline input/output storage operations per seconds for an EBS-optimized instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable baselineIops; /**

The baseline throughput performance for an EBS-optimized instance type, in MB/s.

*/ @property (nonatomic, strong) NSNumber * _Nullable baselineThroughputInMBps; /**

The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.

*/ @property (nonatomic, strong) NSNumber * _Nullable maximumBandwidthInMbps; /**

The maximum input/output storage operations per second for an EBS-optimized instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable maximumIops; /**

The maximum throughput performance for an EBS-optimized instance type, in MB/s.

*/ @property (nonatomic, strong) NSNumber * _Nullable maximumThroughputInMBps; @end /**

The EC2 Instance Connect Endpoint.

*/ @interface AWSEC2Ec2InstanceConnectEndpoint : AWSModel /**

The Availability Zone of the EC2 Instance Connect Endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The date and time that the EC2 Instance Connect Endpoint was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createdAt; /**

The DNS name of the EC2 Instance Connect Endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable dnsName; /**

*/ @property (nonatomic, strong) NSString * _Nullable fipsDnsName; /**

The Amazon Resource Name (ARN) of the EC2 Instance Connect Endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable instanceConnectEndpointArn; /**

The ID of the EC2 Instance Connect Endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable instanceConnectEndpointId; /**

The ID of the elastic network interface that Amazon EC2 automatically created when creating the EC2 Instance Connect Endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaceIds; /**

The ID of the Amazon Web Services account that created the EC2 Instance Connect Endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

Indicates whether your client's IP address is preserved as the source. The value is true or false.

  • If true, your client's IP address is used when you connect to a resource.

  • If false, the elastic network interface IP address is used when you connect to a resource.

Default: true

*/ @property (nonatomic, strong) NSNumber * _Nullable preserveClientIp; /**

The security groups associated with the endpoint. If you didn't specify a security group, the default security group for your VPC is associated with the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

The current state of the EC2 Instance Connect Endpoint.

*/ @property (nonatomic, assign) AWSEC2Ec2InstanceConnectEndpointState state; /**

The message for the current state of the EC2 Instance Connect Endpoint. Can include a failure message.

*/ @property (nonatomic, strong) NSString * _Nullable stateMessage; /**

The ID of the subnet in which the EC2 Instance Connect Endpoint was created.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The tags assigned to the EC2 Instance Connect Endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC in which the EC2 Instance Connect Endpoint was created.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes the Elastic Fabric Adapters for the instance type.

*/ @interface AWSEC2EfaInfo : AWSModel /**

The maximum number of Elastic Fabric Adapters for the instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable maximumEfaInterfaces; @end /**

Describes an egress-only internet gateway.

*/ @interface AWSEC2EgressOnlyInternetGateway : AWSModel /**

Information about the attachment of the egress-only internet gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable attachments; /**

The ID of the egress-only internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable egressOnlyInternetGatewayId; /**

The tags assigned to the egress-only internet gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes the association between an instance and an Elastic Graphics accelerator.

*/ @interface AWSEC2ElasticGpuAssociation : AWSModel /**

The ID of the association.

*/ @property (nonatomic, strong) NSString * _Nullable elasticGpuAssociationId; /**

The state of the association between the instance and the Elastic Graphics accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable elasticGpuAssociationState; /**

The time the Elastic Graphics accelerator was associated with the instance.

*/ @property (nonatomic, strong) NSString * _Nullable elasticGpuAssociationTime; /**

The ID of the Elastic Graphics accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable elasticGpuId; @end /**

Describes the status of an Elastic Graphics accelerator.

*/ @interface AWSEC2ElasticGpuHealth : AWSModel /**

The health status.

*/ @property (nonatomic, assign) AWSEC2ElasticGpuStatus status; @end /**

A specification for an Elastic Graphics accelerator.

Required parameters: [Type] */ @interface AWSEC2ElasticGpuSpecification : AWSModel /**

The type of Elastic Graphics accelerator. For more information about the values to specify for Type, see Elastic Graphics Basics, specifically the Elastic Graphics accelerator column, in the Amazon Elastic Compute Cloud User Guide for Windows Instances.

*/ @property (nonatomic, strong) NSString * _Nullable types; @end /**

Describes an elastic GPU.

*/ @interface AWSEC2ElasticGpuSpecificationResponse : AWSModel /**

The elastic GPU type.

*/ @property (nonatomic, strong) NSString * _Nullable types; @end /**

Describes an Elastic Graphics accelerator.

*/ @interface AWSEC2ElasticGpus : AWSModel /**

The Availability Zone in the which the Elastic Graphics accelerator resides.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The status of the Elastic Graphics accelerator.

*/ @property (nonatomic, strong) AWSEC2ElasticGpuHealth * _Nullable elasticGpuHealth; /**

The ID of the Elastic Graphics accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable elasticGpuId; /**

The state of the Elastic Graphics accelerator.

*/ @property (nonatomic, assign) AWSEC2ElasticGpuState elasticGpuState; /**

The type of Elastic Graphics accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable elasticGpuType; /**

The ID of the instance to which the Elastic Graphics accelerator is attached.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The tags assigned to the Elastic Graphics accelerator.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes an elastic inference accelerator.

Required parameters: [Type] */ @interface AWSEC2ElasticInferenceAccelerator : AWSModel /**

The number of elastic inference accelerators to attach to the instance.

Default: 1

*/ @property (nonatomic, strong) NSNumber * _Nullable count; /**

The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, eia1.xlarge, eia2.medium, eia2.large, and eia2.xlarge.

*/ @property (nonatomic, strong) NSString * _Nullable types; @end /**

Describes the association between an instance and an elastic inference accelerator.

*/ @interface AWSEC2ElasticInferenceAcceleratorAssociation : AWSModel /**

The Amazon Resource Name (ARN) of the elastic inference accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable elasticInferenceAcceleratorArn; /**

The ID of the association.

*/ @property (nonatomic, strong) NSString * _Nullable elasticInferenceAcceleratorAssociationId; /**

The state of the elastic inference accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable elasticInferenceAcceleratorAssociationState; /**

The time at which the elastic inference accelerator is associated with an instance.

*/ @property (nonatomic, strong) NSDate * _Nullable elasticInferenceAcceleratorAssociationTime; @end /**

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. With ENA Express, you can communicate between two EC2 instances in the same subnet within the same account, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

To improve the reliability of network packet delivery, ENA Express reorders network packets on the receiving end by default. However, some UDP-based applications are designed to handle network packets that are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express is enabled, you can specify whether UDP network traffic uses it.

*/ @interface AWSEC2EnaSrdSpecification : AWSModel /**

Indicates whether ENA Express is enabled for the network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable enaSrdEnabled; /**

Configures ENA Express for UDP network traffic.

*/ @property (nonatomic, strong) AWSEC2EnaSrdUdpSpecification * _Nullable enaSrdUdpSpecification; @end /**

ENA Express is compatible with both TCP and UDP transport protocols. When it’s enabled, TCP traffic automatically uses it. However, some UDP-based applications are designed to handle network packets that are out of order, without a need for retransmission, such as live video broadcasting or other near-real-time applications. For UDP traffic, you can specify whether to use ENA Express, based on your application environment needs.

*/ @interface AWSEC2EnaSrdUdpSpecification : AWSModel /**

Indicates whether UDP traffic uses ENA Express. To specify this setting, you must first enable ENA Express.

*/ @property (nonatomic, strong) NSNumber * _Nullable enaSrdUdpEnabled; @end /** */ @interface AWSEC2EnableAddressTransferRequest : AWSRequest /**

The allocation ID of an Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the account that you want to transfer the Elastic IP address to.

*/ @property (nonatomic, strong) NSString * _Nullable transferAccountId; @end /** */ @interface AWSEC2EnableAddressTransferResult : AWSModel /**

An Elastic IP address transfer.

*/ @property (nonatomic, strong) AWSEC2AddressTransfer * _Nullable addressTransfer; @end /** */ @interface AWSEC2EnableAwsNetworkPerformanceMetricSubscriptionRequest : AWSRequest /**

The target Region or Availability Zone that the metric subscription is enabled for. For example, eu-west-1.

*/ @property (nonatomic, strong) NSString * _Nullable destination; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The metric used for the enabled subscription.

*/ @property (nonatomic, assign) AWSEC2MetricType metric; /**

The source Region or Availability Zone that the metric subscription is enabled for. For example, us-east-1.

*/ @property (nonatomic, strong) NSString * _Nullable source; /**

The statistic used for the enabled subscription.

*/ @property (nonatomic, assign) AWSEC2StatisticType statistic; @end /** */ @interface AWSEC2EnableAwsNetworkPerformanceMetricSubscriptionResult : AWSModel /**

Indicates whether the subscribe action was successful.

*/ @property (nonatomic, strong) NSNumber * _Nullable output; @end /** */ @interface AWSEC2EnableEbsEncryptionByDefaultRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2EnableEbsEncryptionByDefaultResult : AWSModel /**

The updated status of encryption by default.

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsEncryptionByDefault; @end /** */ @interface AWSEC2EnableFastLaunchRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the image for which you’re enabling faster launching.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The launch template to use when launching Windows instances from pre-provisioned snapshots. Launch template parameters can include either the name or ID of the launch template, but not both.

*/ @property (nonatomic, strong) AWSEC2FastLaunchLaunchTemplateSpecificationRequest * _Nullable launchTemplate; /**

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows faster launching. Value must be 6 or greater.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxParallelLaunches; /**

The type of resource to use for pre-provisioning the Windows AMI for faster launching. Supported values include: snapshot, which is the default value.

*/ @property (nonatomic, strong) NSString * _Nullable resourceType; /**

Configuration settings for creating and managing the snapshots that are used for pre-provisioning the Windows AMI for faster launching. The associated ResourceType must be snapshot.

*/ @property (nonatomic, strong) AWSEC2FastLaunchSnapshotConfigurationRequest * _Nullable snapshotConfiguration; @end /** */ @interface AWSEC2EnableFastLaunchResult : AWSModel /**

The image ID that identifies the Windows AMI for which faster launching was enabled.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The launch template that is used when launching Windows instances from pre-provisioned snapshots.

*/ @property (nonatomic, strong) AWSEC2FastLaunchLaunchTemplateSpecificationResponse * _Nullable launchTemplate; /**

The maximum number of instances that Amazon EC2 can launch at the same time to create pre-provisioned snapshots for Windows faster launching.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxParallelLaunches; /**

The owner ID for the Windows AMI for which faster launching was enabled.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The type of resource that was defined for pre-provisioning the Windows AMI for faster launching.

*/ @property (nonatomic, assign) AWSEC2FastLaunchResourceType resourceType; /**

Settings to create and manage the pre-provisioned snapshots that Amazon EC2 uses for faster launches from the Windows AMI. This property is returned when the associated resourceType is snapshot.

*/ @property (nonatomic, strong) AWSEC2FastLaunchSnapshotConfigurationResponse * _Nullable snapshotConfiguration; /**

The current state of faster launching for the specified Windows AMI.

*/ @property (nonatomic, assign) AWSEC2FastLaunchStateCode state; /**

The reason that the state changed for faster launching for the Windows AMI.

*/ @property (nonatomic, strong) NSString * _Nullable stateTransitionReason; /**

The time that the state changed for faster launching for the Windows AMI.

*/ @property (nonatomic, strong) NSDate * _Nullable stateTransitionTime; @end /**

Contains information about the errors that occurred when enabling fast snapshot restores.

*/ @interface AWSEC2EnableFastSnapshotRestoreErrorItem : AWSModel /**

The errors.

*/ @property (nonatomic, strong) NSArray * _Nullable fastSnapshotRestoreStateErrors; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; @end /**

Describes an error that occurred when enabling fast snapshot restores.

*/ @interface AWSEC2EnableFastSnapshotRestoreStateError : AWSModel /**

The error code.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

The error message.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Contains information about an error that occurred when enabling fast snapshot restores.

*/ @interface AWSEC2EnableFastSnapshotRestoreStateErrorItem : AWSModel /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The error.

*/ @property (nonatomic, strong) AWSEC2EnableFastSnapshotRestoreStateError * _Nullable error; @end /**

Describes fast snapshot restores that were successfully enabled.

*/ @interface AWSEC2EnableFastSnapshotRestoreSuccessItem : AWSModel /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The time at which fast snapshot restores entered the disabled state.

*/ @property (nonatomic, strong) NSDate * _Nullable disabledTime; /**

The time at which fast snapshot restores entered the disabling state.

*/ @property (nonatomic, strong) NSDate * _Nullable disablingTime; /**

The time at which fast snapshot restores entered the enabled state.

*/ @property (nonatomic, strong) NSDate * _Nullable enabledTime; /**

The time at which fast snapshot restores entered the enabling state.

*/ @property (nonatomic, strong) NSDate * _Nullable enablingTime; /**

The time at which fast snapshot restores entered the optimizing state.

*/ @property (nonatomic, strong) NSDate * _Nullable optimizingTime; /**

The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.

*/ @property (nonatomic, strong) NSString * _Nullable ownerAlias; /**

The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The state of fast snapshot restores.

*/ @property (nonatomic, assign) AWSEC2FastSnapshotRestoreStateCode state; /**

The reason for the state transition. The possible values are as follows:

  • Client.UserInitiated - The state successfully transitioned to enabling or disabling.

  • Client.UserInitiated - Lifecycle state transition - The state successfully transitioned to optimizing, enabled, or disabled.

*/ @property (nonatomic, strong) NSString * _Nullable stateTransitionReason; @end /** */ @interface AWSEC2EnableFastSnapshotRestoresRequest : AWSRequest /**

One or more Availability Zones. For example, us-east-2a.

*/ @property (nonatomic, strong) NSArray * _Nullable availabilityZones; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of one or more snapshots. For example, snap-1234567890abcdef0. You can specify a snapshot that was shared with you from another Amazon Web Services account.

*/ @property (nonatomic, strong) NSArray * _Nullable sourceSnapshotIds; @end /** */ @interface AWSEC2EnableFastSnapshotRestoresResult : AWSModel /**

Information about the snapshots for which fast snapshot restores were successfully enabled.

*/ @property (nonatomic, strong) NSArray * _Nullable successful; /**

Information about the snapshots for which fast snapshot restores could not be enabled.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessful; @end /** */ @interface AWSEC2EnableImageDeprecationRequest : AWSRequest /**

The date and time to deprecate the AMI, in UTC, in the following format: YYYY-MM-DDTHH:MM:SSZ. If you specify a value for seconds, Amazon EC2 rounds the seconds to the nearest minute.

You can’t specify a date in the past. The upper limit for DeprecateAt is 10 years from now, except for public AMIs, where the upper limit is 2 years from the creation date.

*/ @property (nonatomic, strong) NSDate * _Nullable deprecateAt; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2EnableImageDeprecationResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2EnableIpamOrganizationAdminAccountRequest : AWSRequest /**

The Organizations member account ID that you want to enable as the IPAM account.

*/ @property (nonatomic, strong) NSString * _Nullable delegatedAdminAccountId; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2EnableIpamOrganizationAdminAccountResult : AWSModel /**

The result of enabling the IPAM account.

*/ @property (nonatomic, strong) NSNumber * _Nullable success; @end /** */ @interface AWSEC2EnableReachabilityAnalyzerOrganizationSharingRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2EnableReachabilityAnalyzerOrganizationSharingResult : AWSModel /**

Returns true if the request succeeds; otherwise, returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returnValue; @end /** */ @interface AWSEC2EnableSerialConsoleAccessRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2EnableSerialConsoleAccessResult : AWSModel /**

If true, access to the EC2 serial console of all instances is enabled for your account. If false, access to the EC2 serial console of all instances is disabled for your account.

*/ @property (nonatomic, strong) NSNumber * _Nullable serialConsoleAccessEnabled; @end /** */ @interface AWSEC2EnableTransitGatewayRouteTablePropagationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway route table announcement.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableAnnouncementId; /**

The ID of the propagation route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2EnableTransitGatewayRouteTablePropagationResult : AWSModel /**

Information about route propagation.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPropagation * _Nullable propagation; @end /**

Contains the parameters for EnableVgwRoutePropagation.

Required parameters: [GatewayId, RouteTableId] */ @interface AWSEC2EnableVgwRoutePropagationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the virtual private gateway that is attached to a VPC. The virtual private gateway must be attached to the same VPC that the routing tables are associated with.

*/ @property (nonatomic, strong) NSString * _Nullable gatewayId; /**

The ID of the route table. The routing table must be associated with the same VPC that the virtual private gateway is attached to.

*/ @property (nonatomic, strong) NSString * _Nullable routeTableId; @end /** */ @interface AWSEC2EnableVolumeIORequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /** */ @interface AWSEC2EnableVpcClassicLinkDnsSupportRequest : AWSRequest /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2EnableVpcClassicLinkDnsSupportResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2EnableVpcClassicLinkRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2EnableVpcClassicLinkResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /**

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

*/ @interface AWSEC2EnclaveOptions : AWSModel /**

If this parameter is set to true, the instance is enabled for Amazon Web Services Nitro Enclaves; otherwise, it is not enabled for Amazon Web Services Nitro Enclaves.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more information, see What is Amazon Web Services Nitro Enclaves? in the Amazon Web Services Nitro Enclaves User Guide.

*/ @interface AWSEC2EnclaveOptionsRequest : AWSModel /**

To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to true.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Describes an EC2 Fleet or Spot Fleet event.

*/ @interface AWSEC2EventInformation : AWSModel /**

The description of the event.

*/ @property (nonatomic, strong) NSString * _Nullable eventDescription; /**

The event.

error events:

  • iamFleetRoleInvalid - The EC2 Fleet or Spot Fleet does not have the required permissions either to launch or terminate an instance.

  • allLaunchSpecsTemporarilyBlacklisted - None of the configurations are valid, and several attempts to launch instances have failed. For more information, see the description of the event.

  • spotInstanceCountLimitExceeded - You've reached the limit on the number of Spot Instances that you can launch.

  • spotFleetRequestConfigurationInvalid - The configuration is not valid. For more information, see the description of the event.

fleetRequestChange events:

  • active - The EC2 Fleet or Spot Fleet request has been validated and Amazon EC2 is attempting to maintain the target number of running instances.

  • deleted (EC2 Fleet) / cancelled (Spot Fleet) - The EC2 Fleet is deleted or the Spot Fleet request is canceled and has no running instances. The EC2 Fleet or Spot Fleet will be deleted two days after its instances are terminated.

  • deleted_running (EC2 Fleet) / cancelled_running (Spot Fleet) - The EC2 Fleet is deleted or the Spot Fleet request is canceled and does not launch additional instances. Its existing instances continue to run until they are interrupted or terminated. The request remains in this state until all instances are interrupted or terminated.

  • deleted_terminating (EC2 Fleet) / cancelled_terminating (Spot Fleet) - The EC2 Fleet is deleted or the Spot Fleet request is canceled and its instances are terminating. The request remains in this state until all instances are terminated.

  • expired - The EC2 Fleet or Spot Fleet request has expired. If the request was created with TerminateInstancesWithExpiration set, a subsequent terminated event indicates that the instances are terminated.

  • modify_in_progress - The EC2 Fleet or Spot Fleet request is being modified. The request remains in this state until the modification is fully processed.

  • modify_succeeded - The EC2 Fleet or Spot Fleet request was modified.

  • submitted - The EC2 Fleet or Spot Fleet request is being evaluated and Amazon EC2 is preparing to launch the target number of instances.

  • progress - The EC2 Fleet or Spot Fleet request is in the process of being fulfilled.

instanceChange events:

  • launched - A new instance was launched.

  • terminated - An instance was terminated by the user.

  • termination_notified - An instance termination notification was sent when a Spot Instance was terminated by Amazon EC2 during scale-down, when the target capacity of the fleet was modified down, for example, from a target capacity of 4 to a target capacity of 3.

Information events:

  • fleetProgressHalted - The price in every launch specification is not valid because it is below the Spot price (all the launch specifications have produced launchSpecUnusable events). A launch specification might become valid if the Spot price changes.

  • launchSpecTemporarilyBlacklisted - The configuration is not valid and several attempts to launch instances have failed. For more information, see the description of the event.

  • launchSpecUnusable - The price in a launch specification is not valid because it is below the Spot price.

  • registerWithLoadBalancersFailed - An attempt to register instances with load balancers failed. For more information, see the description of the event.

*/ @property (nonatomic, strong) NSString * _Nullable eventSubType; /**

The ID of the instance. This information is available only for instanceChange events.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /**

Describes an explanation code for an unreachable path. For more information, see Reachability Analyzer explanation codes.

*/ @interface AWSEC2Explanation : AWSModel /**

The network ACL.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable acl; /**

The network ACL rule.

*/ @property (nonatomic, strong) AWSEC2AnalysisAclRule * _Nullable aclRule; /**

The IPv4 address, in CIDR notation.

*/ @property (nonatomic, strong) NSString * _Nullable address; /**

The IPv4 addresses, in CIDR notation.

*/ @property (nonatomic, strong) NSArray * _Nullable addresses; /**

The resource to which the component is attached.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable attachedTo; /**

The Availability Zones.

*/ @property (nonatomic, strong) NSArray * _Nullable availabilityZones; /**

The CIDR ranges.

*/ @property (nonatomic, strong) NSArray * _Nullable cidrs; /**

The listener for a Classic Load Balancer.

*/ @property (nonatomic, strong) AWSEC2AnalysisLoadBalancerListener * _Nullable classicLoadBalancerListener; /**

The component.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable component; /**

The Amazon Web Services account for the component.

*/ @property (nonatomic, strong) NSString * _Nullable componentAccount; /**

The Region for the component.

*/ @property (nonatomic, strong) NSString * _Nullable componentRegion; /**

The customer gateway.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable customerGateway; /**

The destination.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable destination; /**

The destination VPC.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable destinationVpc; /**

The direction. The following are the possible values:

  • egress

  • ingress

*/ @property (nonatomic, strong) NSString * _Nullable direction; /**

The load balancer listener.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable elasticLoadBalancerListener; /**

The explanation code.

*/ @property (nonatomic, strong) NSString * _Nullable explanationCode; /**

The Network Firewall stateful rule.

*/ @property (nonatomic, strong) AWSEC2FirewallStatefulRule * _Nullable firewallStatefulRule; /**

The Network Firewall stateless rule.

*/ @property (nonatomic, strong) AWSEC2FirewallStatelessRule * _Nullable firewallStatelessRule; /**

The route table.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable ingressRouteTable; /**

The internet gateway.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable internetGateway; /**

The Amazon Resource Name (ARN) of the load balancer.

*/ @property (nonatomic, strong) NSString * _Nullable loadBalancerArn; /**

The listener port of the load balancer.

*/ @property (nonatomic, strong) NSNumber * _Nullable loadBalancerListenerPort; /**

The target.

*/ @property (nonatomic, strong) AWSEC2AnalysisLoadBalancerTarget * _Nullable loadBalancerTarget; /**

The target group.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable loadBalancerTargetGroup; /**

The target groups.

*/ @property (nonatomic, strong) NSArray * _Nullable loadBalancerTargetGroups; /**

The target port.

*/ @property (nonatomic, strong) NSNumber * _Nullable loadBalancerTargetPort; /**

The missing component.

*/ @property (nonatomic, strong) NSString * _Nullable missingComponent; /**

The NAT gateway.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable natGateway; /**

The network interface.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable networkInterface; /**

The packet field.

*/ @property (nonatomic, strong) NSString * _Nullable packetField; /**

The port.

*/ @property (nonatomic, strong) NSNumber * _Nullable port; /**

The port ranges.

*/ @property (nonatomic, strong) NSArray * _Nullable portRanges; /**

The prefix list.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable prefixList; /**

The protocols.

*/ @property (nonatomic, strong) NSArray * _Nullable protocols; /**

The route table.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable routeTable; /**

The route table route.

*/ @property (nonatomic, strong) AWSEC2AnalysisRouteTableRoute * _Nullable routeTableRoute; /**

The security group.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable securityGroup; /**

The security group rule.

*/ @property (nonatomic, strong) AWSEC2AnalysisSecurityGroupRule * _Nullable securityGroupRule; /**

The security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroups; /**

The source VPC.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable sourceVpc; /**

The state.

*/ @property (nonatomic, strong) NSString * _Nullable state; /**

The subnet.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable subnet; /**

The route table for the subnet.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable subnetRouteTable; /**

The transit gateway.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable transitGateway; /**

The transit gateway attachment.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable transitGatewayAttachment; /**

The transit gateway route table.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable transitGatewayRouteTable; /**

The transit gateway route table route.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayRouteTableRoute * _Nullable transitGatewayRouteTableRoute; /**

The component VPC.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable vpc; /**

The VPC endpoint.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable vpcEndpoint; /**

The VPC peering connection.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable vpcPeeringConnection; /**

The VPN connection.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable vpnConnection; /**

The VPN gateway.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable vpnGateway; @end /** */ @interface AWSEC2ExportClientVpnClientCertificateRevocationListRequest : AWSRequest /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2ExportClientVpnClientCertificateRevocationListResult : AWSModel /**

Information about the client certificate revocation list.

*/ @property (nonatomic, strong) NSString * _Nullable certificateRevocationList; /**

The current state of the client certificate revocation list.

*/ @property (nonatomic, strong) AWSEC2ClientCertificateRevocationListStatus * _Nullable status; @end /** */ @interface AWSEC2ExportClientVpnClientConfigurationRequest : AWSRequest /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2ExportClientVpnClientConfigurationResult : AWSModel /**

The contents of the Client VPN endpoint configuration file.

*/ @property (nonatomic, strong) NSString * _Nullable clientConfiguration; @end /** */ @interface AWSEC2ExportImageRequest : AWSRequest /**

Token to enable idempotency for export image requests.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description of the image being exported. The maximum length is 255 characters.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The disk image format.

*/ @property (nonatomic, assign) AWSEC2DiskImageFormat diskImageFormat; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the image.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The name of the role that grants VM Import/Export permission to export images to your Amazon S3 bucket. If this parameter is not specified, the default role is named 'vmimport'.

*/ @property (nonatomic, strong) NSString * _Nullable roleName; /**

The Amazon S3 bucket for the destination image. The destination bucket must exist.

*/ @property (nonatomic, strong) AWSEC2ExportTaskS3LocationRequest * _Nullable s3ExportLocation; /**

The tags to apply to the export image task during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2ExportImageResult : AWSModel /**

A description of the image being exported.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The disk image format for the exported image.

*/ @property (nonatomic, assign) AWSEC2DiskImageFormat diskImageFormat; /**

The ID of the export image task.

*/ @property (nonatomic, strong) NSString * _Nullable exportImageTaskId; /**

The ID of the image.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The percent complete of the export image task.

*/ @property (nonatomic, strong) NSString * _Nullable progress; /**

The name of the role that grants VM Import/Export permission to export images to your Amazon S3 bucket.

*/ @property (nonatomic, strong) NSString * _Nullable roleName; /**

Information about the destination Amazon S3 bucket.

*/ @property (nonatomic, strong) AWSEC2ExportTaskS3Location * _Nullable s3ExportLocation; /**

The status of the export image task. The possible values are active, completed, deleting, and deleted.

*/ @property (nonatomic, strong) NSString * _Nullable status; /**

The status message for the export image task.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

Any tags assigned to the export image task.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes an export image task.

*/ @interface AWSEC2ExportImageTask : AWSModel /**

A description of the image being exported.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the export image task.

*/ @property (nonatomic, strong) NSString * _Nullable exportImageTaskId; /**

The ID of the image.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The percent complete of the export image task.

*/ @property (nonatomic, strong) NSString * _Nullable progress; /**

Information about the destination Amazon S3 bucket.

*/ @property (nonatomic, strong) AWSEC2ExportTaskS3Location * _Nullable s3ExportLocation; /**

The status of the export image task. The possible values are active, completed, deleting, and deleted.

*/ @property (nonatomic, strong) NSString * _Nullable status; /**

The status message for the export image task.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

Any tags assigned to the export image task.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes an export instance task.

*/ @interface AWSEC2ExportTask : AWSModel /**

A description of the resource being exported.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the export task.

*/ @property (nonatomic, strong) NSString * _Nullable exportTaskId; /**

Information about the export task.

*/ @property (nonatomic, strong) AWSEC2ExportToS3Task * _Nullable exportToS3Task; /**

Information about the instance to export.

*/ @property (nonatomic, strong) AWSEC2InstanceExportDetails * _Nullable instanceExportDetails; /**

The state of the export task.

*/ @property (nonatomic, assign) AWSEC2ExportTaskState state; /**

The status message related to the export task.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

The tags for the export task.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes the destination for an export image task.

*/ @interface AWSEC2ExportTaskS3Location : AWSModel /**

The destination Amazon S3 bucket.

*/ @property (nonatomic, strong) NSString * _Nullable s3Bucket; /**

The prefix (logical hierarchy) in the bucket.

*/ @property (nonatomic, strong) NSString * _Nullable s3Prefix; @end /**

Describes the destination for an export image task.

Required parameters: [S3Bucket] */ @interface AWSEC2ExportTaskS3LocationRequest : AWSModel /**

The destination Amazon S3 bucket.

*/ @property (nonatomic, strong) NSString * _Nullable s3Bucket; /**

The prefix (logical hierarchy) in the bucket.

*/ @property (nonatomic, strong) NSString * _Nullable s3Prefix; @end /**

Describes the format and location for the export task.

*/ @interface AWSEC2ExportToS3Task : AWSModel /**

The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.

*/ @property (nonatomic, assign) AWSEC2ContainerFormat containerFormat; /**

The format for the exported image.

*/ @property (nonatomic, assign) AWSEC2DiskImageFormat diskImageFormat; /**

The Amazon S3 bucket for the destination image. The destination bucket must exist and have an access control list (ACL) attached that specifies the Region-specific canonical account ID for the Grantee. For more information about the ACL to your S3 bucket, see Prerequisites in the VM Import/Export User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable s3Bucket; /**

The encryption key for your S3 bucket.

*/ @property (nonatomic, strong) NSString * _Nullable s3Key; @end /**

Describes an export instance task.

*/ @interface AWSEC2ExportToS3TaskSpecification : AWSModel /**

The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.

*/ @property (nonatomic, assign) AWSEC2ContainerFormat containerFormat; /**

The format for the exported image.

*/ @property (nonatomic, assign) AWSEC2DiskImageFormat diskImageFormat; /**

The Amazon S3 bucket for the destination image. The destination bucket must exist and have an access control list (ACL) attached that specifies the Region-specific canonical account ID for the Grantee. For more information about the ACL to your S3 bucket, see Prerequisites in the VM Import/Export User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable s3Bucket; /**

The image is written to a single object in the Amazon S3 bucket at the S3 key s3prefix + exportTaskId + '.' + diskImageFormat.

*/ @property (nonatomic, strong) NSString * _Nullable s3Prefix; @end /** */ @interface AWSEC2ExportTransitGatewayRoutesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • attachment.transit-gateway-attachment-id - The id of the transit gateway attachment.

  • attachment.resource-id - The resource id of the transit gateway attachment.

  • route-search.exact-match - The exact match of the specified filter.

  • route-search.longest-prefix-match - The longest prefix that matches the route.

  • route-search.subnet-of-match - The routes with a subnet that match the specified CIDR filter.

  • route-search.supernet-of-match - The routes with a CIDR that encompass the CIDR filter. For example, if you have 10.0.1.0/29 and 10.0.1.0/31 routes in your route table and you specify supernet-of-match as 10.0.1.0/30, then the result returns 10.0.1.0/29.

  • state - The state of the route (active | blackhole).

  • transit-gateway-route-destination-cidr-block - The CIDR range.

  • type - The type of route (propagated | static).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The name of the S3 bucket.

*/ @property (nonatomic, strong) NSString * _Nullable s3Bucket; /**

The ID of the route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2ExportTransitGatewayRoutesResult : AWSModel /**

The URL of the exported file in Amazon S3. For example, s3://bucket_name/VPCTransitGateway/TransitGatewayRouteTables/file_name.

*/ @property (nonatomic, strong) NSString * _Nullable s3Location; @end /**

Describes a Capacity Reservation Fleet that could not be cancelled.

*/ @interface AWSEC2FailedCapacityReservationFleetCancellationResult : AWSModel /**

Information about the Capacity Reservation Fleet cancellation error.

*/ @property (nonatomic, strong) AWSEC2CancelCapacityReservationFleetError * _Nullable cancelCapacityReservationFleetError; /**

The ID of the Capacity Reservation Fleet that could not be cancelled.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationFleetId; @end /**

Describes a Reserved Instance whose queued purchase was not deleted.

*/ @interface AWSEC2FailedQueuedPurchaseDeletion : AWSModel /**

The error.

*/ @property (nonatomic, strong) AWSEC2DeleteQueuedReservedInstancesError * _Nullable error; /**

The ID of the Reserved Instance.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesId; @end /**

Request to create a launch template for a fast-launch enabled Windows AMI.

Note - You can specify either the LaunchTemplateName or the LaunchTemplateId, but not both.

Required parameters: [Version] */ @interface AWSEC2FastLaunchLaunchTemplateSpecificationRequest : AWSModel /**

The ID of the launch template to use for faster launching for a Windows AMI.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template to use for faster launching for a Windows AMI.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

The version of the launch template to use for faster launching for a Windows AMI.

*/ @property (nonatomic, strong) NSString * _Nullable version; @end /**

Identifies the launch template to use for faster launching of the Windows AMI.

*/ @interface AWSEC2FastLaunchLaunchTemplateSpecificationResponse : AWSModel /**

The ID of the launch template for faster launching of the associated Windows AMI.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template for faster launching of the associated Windows AMI.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

The version of the launch template for faster launching of the associated Windows AMI.

*/ @property (nonatomic, strong) NSString * _Nullable version; @end /**

Configuration settings for creating and managing pre-provisioned snapshots for a fast-launch enabled Windows AMI.

*/ @interface AWSEC2FastLaunchSnapshotConfigurationRequest : AWSModel /**

The number of pre-provisioned snapshots to keep on hand for a fast-launch enabled Windows AMI.

*/ @property (nonatomic, strong) NSNumber * _Nullable targetResourceCount; @end /**

Configuration settings for creating and managing pre-provisioned snapshots for a fast-launch enabled Windows AMI.

*/ @interface AWSEC2FastLaunchSnapshotConfigurationResponse : AWSModel /**

The number of pre-provisioned snapshots requested to keep on hand for a fast-launch enabled Windows AMI.

*/ @property (nonatomic, strong) NSNumber * _Nullable targetResourceCount; @end /**

Describes the IAM SAML identity providers used for federated authentication.

*/ @interface AWSEC2FederatedAuthentication : AWSModel /**

The Amazon Resource Name (ARN) of the IAM SAML identity provider.

*/ @property (nonatomic, strong) NSString * _Nullable samlProviderArn; /**

The Amazon Resource Name (ARN) of the IAM SAML identity provider for the self-service portal.

*/ @property (nonatomic, strong) NSString * _Nullable selfServiceSamlProviderArn; @end /**

The IAM SAML identity provider used for federated authentication.

*/ @interface AWSEC2FederatedAuthenticationRequest : AWSModel /**

The Amazon Resource Name (ARN) of the IAM SAML identity provider.

*/ @property (nonatomic, strong) NSString * _Nullable SAMLProviderArn; /**

The Amazon Resource Name (ARN) of the IAM SAML identity provider for the self-service portal.

*/ @property (nonatomic, strong) NSString * _Nullable selfServiceSAMLProviderArn; @end /**

A filter name and value pair that is used to return a more specific list of results from a describe operation. Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs.

If you specify multiple filters, the filters are joined with an AND, and the request returns only results that match all of the specified filters.

*/ @interface AWSEC2Filter : AWSModel /**

The name of the filter. Filter names are case-sensitive.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The filter values. Filter values are case-sensitive. If you specify multiple values for a filter, the values are joined with an OR, and the request returns all results that match any of the specified values.

*/ @property (nonatomic, strong) NSArray * _Nullable values; @end /**

Describes a port range.

*/ @interface AWSEC2FilterPortRange : AWSModel /**

The first port in the range.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The last port in the range.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; @end /**

Describes a stateful rule.

*/ @interface AWSEC2FirewallStatefulRule : AWSModel /**

The destination ports.

*/ @property (nonatomic, strong) NSArray * _Nullable destinationPorts; /**

The destination IP addresses, in CIDR notation.

*/ @property (nonatomic, strong) NSArray * _Nullable destinations; /**

The direction. The possible values are FORWARD and ANY.

*/ @property (nonatomic, strong) NSString * _Nullable direction; /**

The protocol.

*/ @property (nonatomic, strong) NSString * _Nullable protocols; /**

The rule action. The possible values are pass, drop, and alert.

*/ @property (nonatomic, strong) NSString * _Nullable ruleAction; /**

The ARN of the stateful rule group.

*/ @property (nonatomic, strong) NSString * _Nullable ruleGroupArn; /**

The source ports.

*/ @property (nonatomic, strong) NSArray * _Nullable sourcePorts; /**

The source IP addresses, in CIDR notation.

*/ @property (nonatomic, strong) NSArray * _Nullable sources; @end /**

Describes a stateless rule.

*/ @interface AWSEC2FirewallStatelessRule : AWSModel /**

The destination ports.

*/ @property (nonatomic, strong) NSArray * _Nullable destinationPorts; /**

The destination IP addresses, in CIDR notation.

*/ @property (nonatomic, strong) NSArray * _Nullable destinations; /**

The rule priority.

*/ @property (nonatomic, strong) NSNumber * _Nullable priority; /**

The protocols.

*/ @property (nonatomic, strong) NSArray * _Nullable protocols; /**

The rule action. The possible values are pass, drop, and forward_to_site.

*/ @property (nonatomic, strong) NSString * _Nullable ruleAction; /**

The ARN of the stateless rule group.

*/ @property (nonatomic, strong) NSString * _Nullable ruleGroupArn; /**

The source ports.

*/ @property (nonatomic, strong) NSArray * _Nullable sourcePorts; /**

The source IP addresses, in CIDR notation.

*/ @property (nonatomic, strong) NSArray * _Nullable sources; @end /**

Information about a Capacity Reservation in a Capacity Reservation Fleet.

*/ @interface AWSEC2FleetCapacityReservation : AWSModel /**

The Availability Zone in which the Capacity Reservation reserves capacity.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The ID of the Availability Zone in which the Capacity Reservation reserves capacity.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZoneId; /**

The ID of the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationId; /**

The date and time at which the Capacity Reservation was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createDate; /**

Indicates whether the Capacity Reservation reserves capacity for EBS-optimized instance types.

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

The number of capacity units fulfilled by the Capacity Reservation. For more information, see Total target capacity in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable fulfilledCapacity; /**

The type of operating system for which the Capacity Reservation reserves capacity.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationInstancePlatform instancePlatform; /**

The instance type for which the Capacity Reservation reserves capacity.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The priority of the instance type in the Capacity Reservation Fleet. For more information, see Instance type priority in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable priority; /**

The total number of instances for which the Capacity Reservation reserves capacity.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalInstanceCount; /**

The weight of the instance type in the Capacity Reservation Fleet. For more information, see Instance type weight in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable weight; @end /**

Describes an EC2 Fleet.

*/ @interface AWSEC2FleetData : AWSModel /**

The progress of the EC2 Fleet. If there is an error, the status is error. After all requests are placed, the status is pending_fulfillment. If the size of the EC2 Fleet is equal to or greater than its target capacity, the status is fulfilled. If the size of the EC2 Fleet is decreased, the status is pending_termination while instances are terminating.

*/ @property (nonatomic, assign) AWSEC2FleetActivityStatus activityStatus; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

Constraints: Maximum 64 ASCII characters

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Reserved.

*/ @property (nonatomic, strong) NSString * _Nullable context; /**

The creation date and time of the EC2 Fleet.

*/ @property (nonatomic, strong) NSDate * _Nullable createTime; /**

Information about the instances that could not be launched by the fleet. Valid only when Type is set to instant.

*/ @property (nonatomic, strong) NSArray * _Nullable errors; /**

Indicates whether running instances should be terminated if the target capacity of the EC2 Fleet is decreased below the current size of the EC2 Fleet.

Supported only for fleets of type maintain.

*/ @property (nonatomic, assign) AWSEC2FleetExcessCapacityTerminationPolicy excessCapacityTerminationPolicy; /**

The ID of the EC2 Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable fleetId; /**

The state of the EC2 Fleet.

*/ @property (nonatomic, assign) AWSEC2FleetStateCode fleetState; /**

The number of units fulfilled by this request compared to the set target capacity.

*/ @property (nonatomic, strong) NSNumber * _Nullable fulfilledCapacity; /**

The number of units fulfilled by this request compared to the set target On-Demand capacity.

*/ @property (nonatomic, strong) NSNumber * _Nullable fulfilledOnDemandCapacity; /**

Information about the instances that were launched by the fleet. Valid only when Type is set to instant.

*/ @property (nonatomic, strong) NSArray * _Nullable instances; /**

The launch template and overrides.

*/ @property (nonatomic, strong) NSArray * _Nullable launchTemplateConfigs; /**

The allocation strategy of On-Demand Instances in an EC2 Fleet.

*/ @property (nonatomic, strong) AWSEC2OnDemandOptions * _Nullable onDemandOptions; /**

Indicates whether EC2 Fleet should replace unhealthy Spot Instances. Supported only for fleets of type maintain. For more information, see EC2 Fleet health checks in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable replaceUnhealthyInstances; /**

The configuration of Spot Instances in an EC2 Fleet.

*/ @property (nonatomic, strong) AWSEC2SpotOptions * _Nullable spotOptions; /**

The tags for an EC2 Fleet resource.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain, you can specify a target capacity of 0 and add capacity later.

*/ @property (nonatomic, strong) AWSEC2TargetCapacitySpecification * _Nullable targetCapacitySpecification; /**

Indicates whether running instances should be terminated when the EC2 Fleet expires.

*/ @property (nonatomic, strong) NSNumber * _Nullable terminateInstancesWithExpiration; /**

The type of request. Indicates whether the EC2 Fleet only requests the target capacity, or also attempts to maintain it. If you request a certain target capacity, EC2 Fleet only places the required requests; it does not attempt to replenish instances if capacity is diminished, and it does not submit requests in alternative capacity pools if capacity is unavailable. To maintain a certain target capacity, EC2 Fleet places the required requests to meet this target capacity. It also automatically replenishes any interrupted Spot Instances. Default: maintain.

*/ @property (nonatomic, assign) AWSEC2FleetType types; /**

The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.

*/ @property (nonatomic, strong) NSDate * _Nullable validFrom; /**

The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new instance requests are placed or able to fulfill the request. The default end date is 7 days from the current date.

*/ @property (nonatomic, strong) NSDate * _Nullable validUntil; @end /**

Describes a launch template and overrides.

*/ @interface AWSEC2FleetLaunchTemplateConfig : AWSModel /**

The launch template.

*/ @property (nonatomic, strong) AWSEC2FleetLaunchTemplateSpecification * _Nullable launchTemplateSpecification; /**

Any parameters that you specify override the same parameters in the launch template.

*/ @property (nonatomic, strong) NSArray * _Nullable overrides; @end /**

Describes a launch template and overrides.

*/ @interface AWSEC2FleetLaunchTemplateConfigRequest : AWSModel /**

The launch template to use. You must specify either the launch template ID or launch template name in the request.

*/ @property (nonatomic, strong) AWSEC2FleetLaunchTemplateSpecificationRequest * _Nullable launchTemplateSpecification; /**

Any parameters that you specify override the same parameters in the launch template.

For fleets of type request and maintain, a maximum of 300 items is allowed across all launch templates.

*/ @property (nonatomic, strong) NSArray * _Nullable overrides; @end /**

Describes overrides for a launch template.

*/ @interface AWSEC2FleetLaunchTemplateOverrides : AWSModel /**

The Availability Zone in which to launch the instances.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The ID of the AMI. An AMI is required to launch an instance. This parameter is only available for fleets of type instant. For fleets of type maintain and request, you must specify the AMI ID in the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

*/ @property (nonatomic, strong) AWSEC2InstanceRequirements * _Nullable instanceRequirements; /**

The instance type.

mac1.metal is not supported as a launch template override.

If you specify InstanceType, you can't specify InstanceRequirements.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable maxPrice; /**

The location where the instance launched, if applicable.

*/ @property (nonatomic, strong) AWSEC2PlacementResponse * _Nullable placement; /**

The priority for the launch template override. The highest priority is launched first.

If the On-Demand AllocationStrategy is set to prioritized, EC2 Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.

If the Spot AllocationStrategy is set to capacity-optimized-prioritized, EC2 Fleet uses priority on a best-effort basis to determine which launch template override to use in fulfilling Spot capacity, but optimizes for capacity first.

Valid values are whole numbers starting at 0. The lower the number, the higher the priority. If no number is set, the override has the lowest priority. You can set the same priority for different launch template overrides.

*/ @property (nonatomic, strong) NSNumber * _Nullable priority; /**

The ID of the subnet in which to launch the instances.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The number of units provided by the specified instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable weightedCapacity; @end /**

Describes overrides for a launch template.

*/ @interface AWSEC2FleetLaunchTemplateOverridesRequest : AWSModel /**

The Availability Zone in which to launch the instances.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The ID of the AMI. An AMI is required to launch an instance. This parameter is only available for fleets of type instant. For fleets of type maintain and request, you must specify the AMI ID in the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

*/ @property (nonatomic, strong) AWSEC2InstanceRequirementsRequest * _Nullable instanceRequirements; /**

The instance type.

mac1.metal is not supported as a launch template override.

If you specify InstanceType, you can't specify InstanceRequirements.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable maxPrice; /**

The location where the instance launched, if applicable.

*/ @property (nonatomic, strong) AWSEC2Placement * _Nullable placement; /**

The priority for the launch template override. The highest priority is launched first.

If the On-Demand AllocationStrategy is set to prioritized, EC2 Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.

If the Spot AllocationStrategy is set to capacity-optimized-prioritized, EC2 Fleet uses priority on a best-effort basis to determine which launch template override to use in fulfilling Spot capacity, but optimizes for capacity first.

Valid values are whole numbers starting at 0. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. You can set the same priority for different launch template overrides.

*/ @property (nonatomic, strong) NSNumber * _Nullable priority; /**

The IDs of the subnets in which to launch the instances. Separate multiple subnet IDs using commas (for example, subnet-1234abcdeexample1, subnet-0987cdef6example2). A request of type instant can have only one subnet ID.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The number of units provided by the specified instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable weightedCapacity; @end /**

The Amazon EC2 launch template that can be used by a Spot Fleet to configure Amazon EC2 instances. You must specify either the ID or name of the launch template in the request, but not both.

For information about launch templates, see Launch an instance from a launch template in the Amazon EC2 User Guide.

*/ @interface AWSEC2FleetLaunchTemplateSpecification : AWSModel /**

The ID of the launch template.

You must specify the LaunchTemplateId or the LaunchTemplateName, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

You must specify the LaunchTemplateName or the LaunchTemplateId, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

The launch template version number, $Latest, or $Default. You must specify a value, otherwise the request fails.

If the value is $Latest, Amazon EC2 uses the latest version of the launch template.

If the value is $Default, Amazon EC2 uses the default version of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable version; @end /**

The Amazon EC2 launch template that can be used by an EC2 Fleet to configure Amazon EC2 instances. You must specify either the ID or name of the launch template in the request, but not both.

For information about launch templates, see Launch an instance from a launch template in the Amazon EC2 User Guide.

*/ @interface AWSEC2FleetLaunchTemplateSpecificationRequest : AWSModel /**

The ID of the launch template.

You must specify the LaunchTemplateId or the LaunchTemplateName, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

You must specify the LaunchTemplateName or the LaunchTemplateId, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

The launch template version number, $Latest, or $Default. You must specify a value, otherwise the request fails.

If the value is $Latest, Amazon EC2 uses the latest version of the launch template.

If the value is $Default, Amazon EC2 uses the default version of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable version; @end /**

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted.

*/ @interface AWSEC2FleetSpotCapacityRebalance : AWSModel /**

The replacement strategy to use. Only available for fleets of type maintain.

launch - EC2 Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet. EC2 Fleet does not terminate the instances that receive a rebalance notification. You can terminate the old instances, or you can leave them running. You are charged for all instances while they are running.

launch-before-terminate - EC2 Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet, and then, after a delay that you specify (in TerminationDelay), terminates the instances that received a rebalance notification.

*/ @property (nonatomic, assign) AWSEC2FleetReplacementStrategy replacementStrategy; /**

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.

Required when ReplacementStrategy is set to launch-before-terminate.

Not valid when ReplacementStrategy is set to launch.

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

*/ @property (nonatomic, strong) NSNumber * _Nullable terminationDelay; @end /**

The Spot Instance replacement strategy to use when Amazon EC2 emits a rebalance notification signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancing in the Amazon EC2 User Guide.

*/ @interface AWSEC2FleetSpotCapacityRebalanceRequest : AWSModel /**

The replacement strategy to use. Only available for fleets of type maintain.

launch - EC2 Fleet launches a replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet. EC2 Fleet does not terminate the instances that receive a rebalance notification. You can terminate the old instances, or you can leave them running. You are charged for all instances while they are running.

launch-before-terminate - EC2 Fleet launches a replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet, and then, after a delay that you specify (in TerminationDelay), terminates the instances that received a rebalance notification.

*/ @property (nonatomic, assign) AWSEC2FleetReplacementStrategy replacementStrategy; /**

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.

Required when ReplacementStrategy is set to launch-before-terminate.

Not valid when ReplacementStrategy is set to launch.

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

*/ @property (nonatomic, strong) NSNumber * _Nullable terminationDelay; @end /**

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

*/ @interface AWSEC2FleetSpotMaintenanceStrategies : AWSModel /**

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted.

*/ @property (nonatomic, strong) AWSEC2FleetSpotCapacityRebalance * _Nullable capacityRebalance; @end /**

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

*/ @interface AWSEC2FleetSpotMaintenanceStrategiesRequest : AWSModel /**

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted.

*/ @property (nonatomic, strong) AWSEC2FleetSpotCapacityRebalanceRequest * _Nullable capacityRebalance; @end /**

Describes a flow log.

*/ @interface AWSEC2FlowLog : AWSModel /**

The date and time the flow log was created.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTime; /**

The ARN of the IAM role that allows the service to publish flow logs across accounts.

*/ @property (nonatomic, strong) NSString * _Nullable deliverCrossAccountRole; /**

Information about the error that occurred. Rate limited indicates that CloudWatch Logs throttling has been applied for one or more network interfaces, or that you've reached the limit on the number of log groups that you can create. Access error indicates that the IAM role associated with the flow log does not have sufficient permissions to publish to CloudWatch Logs. Unknown error indicates an internal error.

*/ @property (nonatomic, strong) NSString * _Nullable deliverLogsErrorMessage; /**

The ARN of the IAM role allows the service to publish logs to CloudWatch Logs.

*/ @property (nonatomic, strong) NSString * _Nullable deliverLogsPermissionArn; /**

The status of the logs delivery (SUCCESS | FAILED).

*/ @property (nonatomic, strong) NSString * _Nullable deliverLogsStatus; /**

The destination options.

*/ @property (nonatomic, strong) AWSEC2DestinationOptionsResponse * _Nullable destinationOptions; /**

The ID of the flow log.

*/ @property (nonatomic, strong) NSString * _Nullable flowLogId; /**

The status of the flow log (ACTIVE).

*/ @property (nonatomic, strong) NSString * _Nullable flowLogStatus; /**

The Amazon Resource Name (ARN) of the destination for the flow log data.

*/ @property (nonatomic, strong) NSString * _Nullable logDestination; /**

The type of destination for the flow log data.

*/ @property (nonatomic, assign) AWSEC2LogDestinationType logDestinationType; /**

The format of the flow log record.

*/ @property (nonatomic, strong) NSString * _Nullable logFormat; /**

The name of the flow log group.

*/ @property (nonatomic, strong) NSString * _Nullable logGroupName; /**

The maximum interval of time, in seconds, during which a flow of packets is captured and aggregated into a flow log record.

When a network interface is attached to a Nitro-based instance, the aggregation interval is always 60 seconds (1 minute) or less, regardless of the specified value.

Valid Values: 60 | 600

*/ @property (nonatomic, strong) NSNumber * _Nullable maxAggregationInterval; /**

The ID of the resource being monitored.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The tags for the flow log.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The type of traffic captured for the flow log.

*/ @property (nonatomic, assign) AWSEC2TrafficType trafficType; @end /**

Describes the FPGA accelerator for the instance type.

*/ @interface AWSEC2FpgaDeviceInfo : AWSModel /**

The count of FPGA accelerators for the instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable count; /**

The manufacturer of the FPGA accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable manufacturer; /**

Describes the memory for the FPGA accelerator for the instance type.

*/ @property (nonatomic, strong) AWSEC2FpgaDeviceMemoryInfo * _Nullable memoryInfo; /**

The name of the FPGA accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable name; @end /**

Describes the memory for the FPGA accelerator for the instance type.

*/ @interface AWSEC2FpgaDeviceMemoryInfo : AWSModel /**

The size of the memory available to the FPGA accelerator, in MiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable sizeInMiB; @end /**

Describes an Amazon FPGA image (AFI).

*/ @interface AWSEC2FpgaImage : AWSModel /**

The date and time the AFI was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createTime; /**

Indicates whether data retention support is enabled for the AFI.

*/ @property (nonatomic, strong) NSNumber * _Nullable dataRetentionSupport; /**

The description of the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The global FPGA image identifier (AGFI ID).

*/ @property (nonatomic, strong) NSString * _Nullable fpgaImageGlobalId; /**

The FPGA image identifier (AFI ID).

*/ @property (nonatomic, strong) NSString * _Nullable fpgaImageId; /**

The instance types supported by the AFI.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTypes; /**

The name of the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The alias of the AFI owner. Possible values include self, amazon, and aws-marketplace.

*/ @property (nonatomic, strong) NSString * _Nullable ownerAlias; /**

The ID of the Amazon Web Services account that owns the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

Information about the PCI bus.

*/ @property (nonatomic, strong) AWSEC2PciId * _Nullable pciId; /**

The product codes for the AFI.

*/ @property (nonatomic, strong) NSArray * _Nullable productCodes; /**

Indicates whether the AFI is public.

*/ @property (nonatomic, strong) NSNumber * _Nullable public; /**

The version of the Amazon Web Services Shell that was used to create the bitstream.

*/ @property (nonatomic, strong) NSString * _Nullable shellVersion; /**

Information about the state of the AFI.

*/ @property (nonatomic, strong) AWSEC2FpgaImageState * _Nullable state; /**

Any tags assigned to the AFI.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The time of the most recent update to the AFI.

*/ @property (nonatomic, strong) NSDate * _Nullable updateTime; @end /**

Describes an Amazon FPGA image (AFI) attribute.

*/ @interface AWSEC2FpgaImageAttribute : AWSModel /**

The description of the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable fpgaImageId; /**

The load permissions.

*/ @property (nonatomic, strong) NSArray * _Nullable loadPermissions; /**

The name of the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The product codes.

*/ @property (nonatomic, strong) NSArray * _Nullable productCodes; @end /**

Describes the state of the bitstream generation process for an Amazon FPGA image (AFI).

*/ @interface AWSEC2FpgaImageState : AWSModel /**

The state. The following are the possible values:

  • pending - AFI bitstream generation is in progress.

  • available - The AFI is available for use.

  • failed - AFI bitstream generation failed.

  • unavailable - The AFI is no longer available for use.

*/ @property (nonatomic, assign) AWSEC2FpgaImageStateCode code; /**

If the state is failed, this is the error message.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes the FPGAs for the instance type.

*/ @interface AWSEC2FpgaInfo : AWSModel /**

Describes the FPGAs for the instance type.

*/ @property (nonatomic, strong) NSArray * _Nullable fpgas; /**

The total memory of all FPGA accelerators for the instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalFpgaMemoryInMiB; @end /** */ @interface AWSEC2GetAssociatedEnclaveCertificateIamRolesRequest : AWSRequest /**

The ARN of the ACM certificate for which to view the associated IAM roles, encryption keys, and Amazon S3 object information.

*/ @property (nonatomic, strong) NSString * _Nullable certificateArn; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2GetAssociatedEnclaveCertificateIamRolesResult : AWSModel /**

Information about the associated IAM roles.

*/ @property (nonatomic, strong) NSArray * _Nullable associatedRoles; @end /** */ @interface AWSEC2GetAssociatedIpv6PoolCidrsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the IPv6 address pool.

*/ @property (nonatomic, strong) NSString * _Nullable poolId; @end /** */ @interface AWSEC2GetAssociatedIpv6PoolCidrsResult : AWSModel /**

Information about the IPv6 CIDR block associations.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6CidrAssociations; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetAwsNetworkPerformanceDataRequest : AWSRequest /**

A list of network performance data queries.

*/ @property (nonatomic, strong) NSArray * _Nullable dataQueries; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ending time for the performance data request. The end time must be formatted as yyyy-mm-ddThh:mm:ss. For example, 2022-06-12T12:00:00.000Z.

*/ @property (nonatomic, strong) NSDate * _Nullable endTime; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The starting time for the performance data request. The starting time must be formatted as yyyy-mm-ddThh:mm:ss. For example, 2022-06-10T12:00:00.000Z.

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; @end /** */ @interface AWSEC2GetAwsNetworkPerformanceDataResult : AWSModel /**

The list of data responses.

*/ @property (nonatomic, strong) NSArray * _Nullable dataResponses; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetCapacityReservationUsageRequest : AWSRequest /**

The ID of the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

Valid range: Minimum value of 1. Maximum value of 1000.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to use to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetCapacityReservationUsageResult : AWSModel /**

The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.

*/ @property (nonatomic, strong) NSNumber * _Nullable availableInstanceCount; /**

The ID of the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationId; /**

The type of instance for which the Capacity Reservation reserves capacity.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; /**

Information about the Capacity Reservation usage.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceUsages; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The current state of the Capacity Reservation. A Capacity Reservation can be in one of the following states:

  • active - The Capacity Reservation is active and the capacity is available for your use.

  • expired - The Capacity Reservation expired automatically at the date and time specified in your request. The reserved capacity is no longer available for your use.

  • cancelled - The Capacity Reservation was cancelled. The reserved capacity is no longer available for your use.

  • pending - The Capacity Reservation request was successful but the capacity provisioning is still pending.

  • failed - The Capacity Reservation request has failed. A request might fail due to invalid request parameters, capacity constraints, or instance limit constraints. Failed requests are retained for 60 minutes.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationState state; /**

The number of instances for which the Capacity Reservation reserves capacity.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalInstanceCount; @end /** */ @interface AWSEC2GetCoipPoolUsageRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • coip-address-usage.allocation-id - The allocation ID of the address.

  • coip-address-usage.aws-account-id - The ID of the Amazon Web Services account that is using the customer-owned IP address.

  • coip-address-usage.aws-service - The Amazon Web Services service that is using the customer-owned IP address.

  • coip-address-usage.co-ip - The customer-owned IP address.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the address pool.

*/ @property (nonatomic, strong) NSString * _Nullable poolId; @end /** */ @interface AWSEC2GetCoipPoolUsageResult : AWSModel /**

Information about the address usage.

*/ @property (nonatomic, strong) NSArray * _Nullable coipAddressUsages; /**

The ID of the customer-owned address pool.

*/ @property (nonatomic, strong) NSString * _Nullable coipPoolId; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; @end /** */ @interface AWSEC2GetConsoleOutputRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

When enabled, retrieves the latest console output for the instance.

Default: disabled (false)

*/ @property (nonatomic, strong) NSNumber * _Nullable latest; @end /** */ @interface AWSEC2GetConsoleOutputResult : AWSModel /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The console output, base64-encoded. If you are using a command line tool, the tool decodes the output for you.

*/ @property (nonatomic, strong) NSString * _Nullable output; /**

The time at which the output was last updated.

*/ @property (nonatomic, strong) NSDate * _Nullable timestamp; @end /** */ @interface AWSEC2GetConsoleScreenshotRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

When set to true, acts as keystroke input and wakes up an instance that's in standby or "sleep" mode.

*/ @property (nonatomic, strong) NSNumber * _Nullable wakeUp; @end /** */ @interface AWSEC2GetConsoleScreenshotResult : AWSModel /**

The data that comprises the image.

*/ @property (nonatomic, strong) NSString * _Nullable imageData; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /** */ @interface AWSEC2GetDefaultCreditSpecificationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The instance family.

*/ @property (nonatomic, assign) AWSEC2UnlimitedSupportedInstanceFamily instanceFamily; @end /** */ @interface AWSEC2GetDefaultCreditSpecificationResult : AWSModel /**

The default credit option for CPU usage of the instance family.

*/ @property (nonatomic, strong) AWSEC2InstanceFamilyCreditSpecification * _Nullable instanceFamilyCreditSpecification; @end /** */ @interface AWSEC2GetEbsDefaultKmsKeyIdRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2GetEbsDefaultKmsKeyIdResult : AWSModel /**

The Amazon Resource Name (ARN) of the default KMS key for encryption by default.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; @end /** */ @interface AWSEC2GetEbsEncryptionByDefaultRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2GetEbsEncryptionByDefaultResult : AWSModel /**

Indicates whether encryption by default is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsEncryptionByDefault; @end /** */ @interface AWSEC2GetFlowLogsIntegrationTemplateRequest : AWSRequest /**

To store the CloudFormation template in Amazon S3, specify the location in Amazon S3.

*/ @property (nonatomic, strong) NSString * _Nullable configDeliveryS3DestinationArn; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the flow log.

*/ @property (nonatomic, strong) NSString * _Nullable flowLogId; /**

Information about the service integration.

*/ @property (nonatomic, strong) AWSEC2IntegrateServices * _Nullable integrateServices; @end /** */ @interface AWSEC2GetFlowLogsIntegrationTemplateResult : AWSModel /**

The generated CloudFormation template.

*/ @property (nonatomic, strong) NSString * _Nullable result; @end /** */ @interface AWSEC2GetGroupsForCapacityReservationRequest : AWSRequest /**

The ID of the Capacity Reservation. If you specify a Capacity Reservation that is shared with you, the operation returns only Capacity Reservation groups that you own.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token to use to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetGroupsForCapacityReservationResult : AWSModel /**

Information about the resource groups to which the Capacity Reservation has been added.

*/ @property (nonatomic, strong) NSArray * _Nullable capacityReservationGroups; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetHostReservationPurchasePreviewRequest : AWSRequest /**

The IDs of the Dedicated Hosts with which the reservation is associated.

*/ @property (nonatomic, strong) NSArray * _Nullable hostIdSet; /**

The offering ID of the reservation.

*/ @property (nonatomic, strong) NSString * _Nullable offeringId; @end /** */ @interface AWSEC2GetHostReservationPurchasePreviewResult : AWSModel /**

The currency in which the totalUpfrontPrice and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.

*/ @property (nonatomic, assign) AWSEC2CurrencyCodeValues currencyCode; /**

The purchase information of the Dedicated Host reservation and the Dedicated Hosts associated with it.

*/ @property (nonatomic, strong) NSArray * _Nullable purchase; /**

The potential total hourly price of the reservation per hour.

*/ @property (nonatomic, strong) NSString * _Nullable totalHourlyPrice; /**

The potential total upfront price. This is billed immediately.

*/ @property (nonatomic, strong) NSString * _Nullable totalUpfrontPrice; @end /** */ @interface AWSEC2GetInstanceTypesFromInstanceRequirementsRequest : AWSRequest /**

The processor architecture type.

*/ @property (nonatomic, strong) NSArray * _Nullable architectureTypes; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The attributes required for the instance types.

*/ @property (nonatomic, strong) AWSEC2InstanceRequirementsRequest * _Nullable instanceRequirements; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The virtualization type.

*/ @property (nonatomic, strong) NSArray * _Nullable virtualizationTypes; @end /** */ @interface AWSEC2GetInstanceTypesFromInstanceRequirementsResult : AWSModel /**

The instance types with the specified instance attributes.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTypes; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetInstanceUefiDataRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance from which to retrieve the UEFI data.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /** */ @interface AWSEC2GetInstanceUefiDataResult : AWSModel /**

The ID of the instance from which to retrieve the UEFI data.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

Base64 representation of the non-volatile UEFI variable store.

*/ @property (nonatomic, strong) NSString * _Nullable uefiData; @end /** */ @interface AWSEC2GetIpamAddressHistoryRequest : AWSRequest /**

The CIDR you want the history of. The CIDR can be an IPv4 or IPv6 IP address range. If you enter a /16 IPv4 CIDR, you will get records that match it exactly. You will not get records for any subnets within the /16 CIDR.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The end of the time period for which you are looking for history. If you omit this option, it will default to the current time.

*/ @property (nonatomic, strong) NSDate * _Nullable endTime; /**

The ID of the IPAM scope that the CIDR is in.

*/ @property (nonatomic, strong) NSString * _Nullable ipamScopeId; /**

The maximum number of historical results you would like returned per page. Defaults to 100.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The start of the time period for which you are looking for history. If you omit this option, it will default to the value of EndTime.

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; /**

The ID of the VPC you want your history records filtered by.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2GetIpamAddressHistoryResult : AWSModel /**

A historical record for a CIDR within an IPAM scope. If the CIDR is associated with an EC2 instance, you will see an object in the response for the instance and one for the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable historyRecords; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetIpamDiscoveredAccountsRequest : AWSRequest /**

The Amazon Web Services Region that the account information is returned from.

*/ @property (nonatomic, strong) NSString * _Nullable discoveryRegion; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Discovered account filters.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

A resource discovery ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryId; /**

The maximum number of discovered accounts to return in one page of results.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

Specify the pagination token from a previous request to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetIpamDiscoveredAccountsResult : AWSModel /**

Discovered accounts.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamDiscoveredAccounts; /**

Specify the pagination token from a previous request to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetIpamDiscoveredResourceCidrsRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Filters.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

A resource discovery ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryId; /**

The maximum number of discovered resource CIDRs to return in one page of results.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

Specify the pagination token from a previous request to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

A resource Region.

*/ @property (nonatomic, strong) NSString * _Nullable resourceRegion; @end /** */ @interface AWSEC2GetIpamDiscoveredResourceCidrsResult : AWSModel /**

Discovered resource CIDRs.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamDiscoveredResourceCidrs; /**

Specify the pagination token from a previous request to retrieve the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetIpamPoolAllocationsRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters for the request. For more information about filtering, see Filtering CLI output.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The ID of the allocation.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolAllocationId; /**

The ID of the IPAM pool you want to see the allocations for.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; /**

The maximum number of results you would like returned per page.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetIpamPoolAllocationsResult : AWSModel /**

The IPAM pool allocations you want information on.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamPoolAllocations; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetIpamPoolCidrsRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters for the request. For more information about filtering, see Filtering CLI output.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The ID of the IPAM pool you want the CIDR for.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; /**

The maximum number of results to return in the request.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetIpamPoolCidrsResult : AWSModel /**

Information about the CIDRs provisioned to an IPAM pool.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamPoolCidrs; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetIpamResourceCidrsRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters for the request. For more information about filtering, see Filtering CLI output.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The ID of the IPAM pool that the resource is in.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; /**

The ID of the scope that the resource is in.

*/ @property (nonatomic, strong) NSString * _Nullable ipamScopeId; /**

The maximum number of results to return in the request.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The ID of the Amazon Web Services account that owns the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceOwner; /**

The resource tag.

*/ @property (nonatomic, strong) AWSEC2RequestIpamResourceTag * _Nullable resourceTag; /**

The resource type.

*/ @property (nonatomic, assign) AWSEC2IpamResourceType resourceType; @end /** */ @interface AWSEC2GetIpamResourceCidrsResult : AWSModel /**

The resource CIDRs.

*/ @property (nonatomic, strong) NSArray * _Nullable ipamResourceCidrs; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetLaunchTemplateDataRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /** */ @interface AWSEC2GetLaunchTemplateDataResult : AWSModel /**

The instance data.

*/ @property (nonatomic, strong) AWSEC2ResponseLaunchTemplateData * _Nullable launchTemplateData; @end /** */ @interface AWSEC2GetManagedPrefixListAssociationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; @end /** */ @interface AWSEC2GetManagedPrefixListAssociationsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the associations.

*/ @property (nonatomic, strong) NSArray * _Nullable prefixListAssociations; @end /** */ @interface AWSEC2GetManagedPrefixListEntriesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The version of the prefix list for which to return the entries. The default is the current version.

*/ @property (nonatomic, strong) NSNumber * _Nullable targetVersion; @end /** */ @interface AWSEC2GetManagedPrefixListEntriesResult : AWSModel /**

Information about the prefix list entries.

*/ @property (nonatomic, strong) NSArray * _Nullable entries; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetNetworkInsightsAccessScopeAnalysisFindingsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The ID of the Network Access Scope analysis.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeAnalysisId; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetNetworkInsightsAccessScopeAnalysisFindingsResult : AWSModel /**

The findings associated with Network Access Scope Analysis.

*/ @property (nonatomic, strong) NSArray * _Nullable analysisFindings; /**

The status of Network Access Scope Analysis.

*/ @property (nonatomic, assign) AWSEC2AnalysisStatus analysisStatus; /**

The ID of the Network Access Scope analysis.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeAnalysisId; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetNetworkInsightsAccessScopeContentRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Network Access Scope.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeId; @end /** */ @interface AWSEC2GetNetworkInsightsAccessScopeContentResult : AWSModel /**

The Network Access Scope content.

*/ @property (nonatomic, strong) AWSEC2NetworkInsightsAccessScopeContent * _Nullable networkInsightsAccessScopeContent; @end /** */ @interface AWSEC2GetPasswordDataRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Windows instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /** */ @interface AWSEC2GetPasswordDataResult : AWSModel /**

The ID of the Windows instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The password of the instance. Returns an empty string if the password is not available.

*/ @property (nonatomic, strong) NSString * _Nullable passwordData; /**

The time the data was last updated.

*/ @property (nonatomic, strong) NSDate * _Nullable timestamp; @end /**

Contains the parameters for GetReservedInstanceExchangeQuote.

Required parameters: [ReservedInstanceIds] */ @interface AWSEC2GetReservedInstancesExchangeQuoteRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the Convertible Reserved Instances to exchange.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstanceIds; /**

The configuration of the target Convertible Reserved Instance to exchange for your current Convertible Reserved Instances.

*/ @property (nonatomic, strong) NSArray * _Nullable targetConfigurations; @end /**

Contains the output of GetReservedInstancesExchangeQuote.

*/ @interface AWSEC2GetReservedInstancesExchangeQuoteResult : AWSModel /**

The currency of the transaction.

*/ @property (nonatomic, strong) NSString * _Nullable currencyCode; /**

If true, the exchange is valid. If false, the exchange cannot be completed.

*/ @property (nonatomic, strong) NSNumber * _Nullable isValidExchange; /**

The new end date of the reservation term.

*/ @property (nonatomic, strong) NSDate * _Nullable outputReservedInstancesWillExpireAt; /**

The total true upfront charge for the exchange.

*/ @property (nonatomic, strong) NSString * _Nullable paymentDue; /**

The cost associated with the Reserved Instance.

*/ @property (nonatomic, strong) AWSEC2ReservationValue * _Nullable reservedInstanceValueRollup; /**

The configuration of your Convertible Reserved Instances.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstanceValueSet; /**

The cost associated with the Reserved Instance.

*/ @property (nonatomic, strong) AWSEC2ReservationValue * _Nullable targetConfigurationValueRollup; /**

The values of the target Convertible Reserved Instances.

*/ @property (nonatomic, strong) NSArray * _Nullable targetConfigurationValueSet; /**

Describes the reason why the exchange cannot be completed.

*/ @property (nonatomic, strong) NSString * _Nullable validationFailureReason; @end /** */ @interface AWSEC2GetSerialConsoleAccessStatusRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2GetSerialConsoleAccessStatusResult : AWSModel /**

If true, access to the EC2 serial console of all instances is enabled for your account. If false, access to the EC2 serial console of all instances is disabled for your account.

*/ @property (nonatomic, strong) NSNumber * _Nullable serialConsoleAccessEnabled; @end /** */ @interface AWSEC2GetSpotPlacementScoresRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

If you specify InstanceRequirementsWithMetadata, you can't specify InstanceTypes.

*/ @property (nonatomic, strong) AWSEC2InstanceRequirementsWithMetadataRequest * _Nullable instanceRequirementsWithMetadata; /**

The instance types. We recommend that you specify at least three instance types. If you specify one or two instance types, or specify variations of a single instance type (for example, an m3.xlarge with and without instance storage), the returned placement score will always be low.

If you specify InstanceTypes, you can't specify InstanceRequirementsWithMetadata.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTypes; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The Regions used to narrow down the list of Regions to be scored. Enter the Region code, for example, us-east-1.

*/ @property (nonatomic, strong) NSArray * _Nullable regionNames; /**

Specify true so that the response returns a list of scored Availability Zones. Otherwise, the response returns a list of scored Regions.

A list of scored Availability Zones is useful if you want to launch all of your Spot capacity into a single Availability Zone.

*/ @property (nonatomic, strong) NSNumber * _Nullable singleAvailabilityZone; /**

The target capacity.

*/ @property (nonatomic, strong) NSNumber * _Nullable targetCapacity; /**

The unit for the target capacity.

Default: units (translates to number of instances)

*/ @property (nonatomic, assign) AWSEC2TargetCapacityUnitType targetCapacityUnitType; @end /** */ @interface AWSEC2GetSpotPlacementScoresResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The Spot placement score for the top 10 Regions or Availability Zones, scored on a scale from 1 to 10. Each score
 reflects how likely it is that each Region or Availability Zone will succeed at fulfilling the specified target capacity
 at the time of the Spot placement score request. A score of 10 means that your Spot capacity request is highly likely to succeed in that Region or Availability Zone.

If you request a Spot placement score for Regions, a high score assumes that your fleet request will be configured to use all Availability Zones and the capacity-optimized allocation strategy. If you request a Spot placement score for Availability Zones, a high score assumes that your fleet request will be configured to use a single Availability Zone and the capacity-optimized allocation strategy.

Different
 Regions or Availability Zones might return the same score.

The Spot placement score serves as a recommendation only. No score guarantees that your Spot request will be fully or partially fulfilled.

*/ @property (nonatomic, strong) NSArray * _Nullable spotPlacementScores; @end /** */ @interface AWSEC2GetSubnetCidrReservationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • reservationType - The type of reservation (prefix | explicit).

  • subnet-id - The ID of the subnet.

  • tag:<key> - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

  • tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /** */ @interface AWSEC2GetSubnetCidrReservationsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the IPv4 subnet CIDR reservations.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIpv4CidrReservations; /**

Information about the IPv6 subnet CIDR reservations.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIpv6CidrReservations; @end /** */ @interface AWSEC2GetTransitGatewayAttachmentPropagationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • transit-gateway-route-table-id - The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /** */ @interface AWSEC2GetTransitGatewayAttachmentPropagationsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the propagation route tables.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayAttachmentPropagations; @end /** */ @interface AWSEC2GetTransitGatewayMulticastDomainAssociationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • resource-id - The ID of the resource.

  • resource-type - The type of resource. The valid value is: vpc.

  • state - The state of the subnet association. Valid values are associated | associating | disassociated | disassociating.

  • subnet-id - The ID of the subnet.

  • transit-gateway-attachment-id - The id of the transit gateway attachment.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /** */ @interface AWSEC2GetTransitGatewayMulticastDomainAssociationsResult : AWSModel /**

Information about the multicast domain associations.

*/ @property (nonatomic, strong) NSArray * _Nullable multicastDomainAssociations; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetTransitGatewayPolicyTableAssociationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters associated with the transit gateway policy table.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the transit gateway policy table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayPolicyTableId; @end /** */ @interface AWSEC2GetTransitGatewayPolicyTableAssociationsResult : AWSModel /**

Returns details about the transit gateway policy table association.

*/ @property (nonatomic, strong) NSArray * _Nullable associations; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetTransitGatewayPolicyTableEntriesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The filters associated with the transit gateway policy table.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the transit gateway policy table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayPolicyTableId; @end /** */ @interface AWSEC2GetTransitGatewayPolicyTableEntriesResult : AWSModel /**

The entries for the transit gateway policy table.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayPolicyTableEntries; @end /** */ @interface AWSEC2GetTransitGatewayPrefixListReferencesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • attachment.resource-id - The ID of the resource for the attachment.

  • attachment.resource-type - The type of resource for the attachment. Valid values are vpc | vpn | direct-connect-gateway | peering.

  • attachment.transit-gateway-attachment-id - The ID of the attachment.

  • is-blackhole - Whether traffic matching the route is blocked (true | false).

  • prefix-list-id - The ID of the prefix list.

  • prefix-list-owner-id - The ID of the owner of the prefix list.

  • state - The state of the prefix list reference (pending | available | modifying | deleting).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2GetTransitGatewayPrefixListReferencesResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the prefix list references.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayPrefixListReferences; @end /** */ @interface AWSEC2GetTransitGatewayRouteTableAssociationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • resource-id - The ID of the resource.

  • resource-type - The resource type. Valid values are vpc | vpn | direct-connect-gateway | peering | connect.

  • transit-gateway-attachment-id - The ID of the attachment.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2GetTransitGatewayRouteTableAssociationsResult : AWSModel /**

Information about the associations.

*/ @property (nonatomic, strong) NSArray * _Nullable associations; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetTransitGatewayRouteTablePropagationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • resource-id - The ID of the resource.

  • resource-type - The resource type. Valid values are vpc | vpn | direct-connect-gateway | peering | connect.

  • transit-gateway-attachment-id - The ID of the attachment.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2GetTransitGatewayRouteTablePropagationsResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the route table propagations.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayRouteTablePropagations; @end /** */ @interface AWSEC2GetVerifiedAccessEndpointPolicyRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Verified Access endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessEndpointId; @end /** */ @interface AWSEC2GetVerifiedAccessEndpointPolicyResult : AWSModel /**

The Verified Access policy document.

*/ @property (nonatomic, strong) NSString * _Nullable policyDocument; /**

The status of the Verified Access policy.

*/ @property (nonatomic, strong) NSNumber * _Nullable policyEnabled; @end /** */ @interface AWSEC2GetVerifiedAccessGroupPolicyRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessGroupId; @end /** */ @interface AWSEC2GetVerifiedAccessGroupPolicyResult : AWSModel /**

The Verified Access policy document.

*/ @property (nonatomic, strong) NSString * _Nullable policyDocument; /**

The status of the Verified Access policy.

*/ @property (nonatomic, strong) NSNumber * _Nullable policyEnabled; @end /** */ @interface AWSEC2GetVpnConnectionDeviceSampleConfigurationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IKE version to be used in the sample configuration file for your customer gateway device. You can specify one of the following versions: ikev1 or ikev2.

*/ @property (nonatomic, strong) NSString * _Nullable internetKeyExchangeVersion; /**

Device identifier provided by the GetVpnConnectionDeviceTypes API.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionDeviceTypeId; /**

The VpnConnectionId specifies the Site-to-Site VPN connection used for the sample configuration.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; @end /** */ @interface AWSEC2GetVpnConnectionDeviceSampleConfigurationResult : AWSModel /**

Sample configuration file for the specified customer gateway device.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionDeviceSampleConfiguration; @end /** */ @interface AWSEC2GetVpnConnectionDeviceTypesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of results returned by GetVpnConnectionDeviceTypes in paginated output. When this parameter is used, GetVpnConnectionDeviceTypes only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another GetVpnConnectionDeviceTypes request with the returned NextToken value. This value can be between 200 and 1000. If this parameter is not used, then GetVpnConnectionDeviceTypes returns all results.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The NextToken value returned from a previous paginated GetVpnConnectionDeviceTypes request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2GetVpnConnectionDeviceTypesResult : AWSModel /**

The NextToken value to include in a future GetVpnConnectionDeviceTypes request. When the results of a GetVpnConnectionDeviceTypes request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

List of customer gateway devices that have a sample configuration file available for use.

*/ @property (nonatomic, strong) NSArray * _Nullable vpnConnectionDeviceTypes; @end /** */ @interface AWSEC2GetVpnTunnelReplacementStatusRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Site-to-Site VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; /**

The external IP address of the VPN tunnel.

*/ @property (nonatomic, strong) NSString * _Nullable vpnTunnelOutsideIpAddress; @end /** */ @interface AWSEC2GetVpnTunnelReplacementStatusResult : AWSModel /**

The ID of the customer gateway.

*/ @property (nonatomic, strong) NSString * _Nullable customerGatewayId; /**

Get details of pending tunnel endpoint maintenance.

*/ @property (nonatomic, strong) AWSEC2MaintenanceDetails * _Nullable maintenanceDetails; /**

The ID of the transit gateway associated with the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of the Site-to-Site VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; /**

The ID of the virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable vpnGatewayId; /**

The external IP address of the VPN tunnel.

*/ @property (nonatomic, strong) NSString * _Nullable vpnTunnelOutsideIpAddress; @end /**

Describes the GPU accelerators for the instance type.

*/ @interface AWSEC2GpuDeviceInfo : AWSModel /**

The number of GPUs for the instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable count; /**

The manufacturer of the GPU accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable manufacturer; /**

Describes the memory available to the GPU accelerator.

*/ @property (nonatomic, strong) AWSEC2GpuDeviceMemoryInfo * _Nullable memoryInfo; /**

The name of the GPU accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable name; @end /**

Describes the memory available to the GPU accelerator.

*/ @interface AWSEC2GpuDeviceMemoryInfo : AWSModel /**

The size of the memory available to the GPU accelerator, in MiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable sizeInMiB; @end /**

Describes the GPU accelerators for the instance type.

*/ @interface AWSEC2GpuInfo : AWSModel /**

Describes the GPU accelerators for the instance type.

*/ @property (nonatomic, strong) NSArray * _Nullable gpus; /**

The total size of the memory for the GPU accelerators for the instance type, in MiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalGpuMemoryInMiB; @end /**

Describes a security group.

*/ @interface AWSEC2GroupIdentifier : AWSModel /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The name of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; @end /**

Indicates whether your instance is configured for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your instance in the Amazon EC2 User Guide.

*/ @interface AWSEC2HibernationOptions : AWSModel /**

If true, your instance is enabled for hibernation; otherwise, it is not enabled for hibernation.

*/ @property (nonatomic, strong) NSNumber * _Nullable configured; @end /**

Indicates whether your instance is configured for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your instance in the Amazon EC2 User Guide.

*/ @interface AWSEC2HibernationOptionsRequest : AWSModel /**

Set to true to enable your instance for hibernation.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable configured; @end /**

Describes an event in the history of the Spot Fleet request.

*/ @interface AWSEC2HistoryRecord : AWSModel /**

Information about the event.

*/ @property (nonatomic, strong) AWSEC2EventInformation * _Nullable eventInformation; /**

The event type.

  • error - An error with the Spot Fleet request.

  • fleetRequestChange - A change in the status or configuration of the Spot Fleet request.

  • instanceChange - An instance was launched or terminated.

  • Information - An informational event.

*/ @property (nonatomic, assign) AWSEC2EventType eventType; /**

The date and time of the event, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable timestamp; @end /**

Describes an event in the history of an EC2 Fleet.

*/ @interface AWSEC2HistoryRecordEntry : AWSModel /**

Information about the event.

*/ @property (nonatomic, strong) AWSEC2EventInformation * _Nullable eventInformation; /**

The event type.

*/ @property (nonatomic, assign) AWSEC2FleetEventType eventType; /**

The date and time of the event, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable timestamp; @end /**

Describes the properties of the Dedicated Host.

*/ @interface AWSEC2Host : AWSModel /**

The time that the Dedicated Host was allocated.

*/ @property (nonatomic, strong) NSDate * _Nullable allocationTime; /**

Indicates whether the Dedicated Host supports multiple instance types of the same instance family. If the value is on, the Dedicated Host supports multiple instance types in the instance family. If the value is off, the Dedicated Host supports a single instance type only.

*/ @property (nonatomic, assign) AWSEC2AllowsMultipleInstanceTypes allowsMultipleInstanceTypes; /**

The ID of the Outpost hardware asset on which the Dedicated Host is allocated.

*/ @property (nonatomic, strong) NSString * _Nullable assetId; /**

Whether auto-placement is on or off.

*/ @property (nonatomic, assign) AWSEC2AutoPlacement autoPlacement; /**

The Availability Zone of the Dedicated Host.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The ID of the Availability Zone in which the Dedicated Host is allocated.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZoneId; /**

Information about the instances running on the Dedicated Host.

*/ @property (nonatomic, strong) AWSEC2AvailableCapacity * _Nullable availableCapacity; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The ID of the Dedicated Host.

*/ @property (nonatomic, strong) NSString * _Nullable hostId; /**

Indicates whether host maintenance is enabled or disabled for the Dedicated Host.

*/ @property (nonatomic, assign) AWSEC2HostMaintenance hostMaintenance; /**

The hardware specifications of the Dedicated Host.

*/ @property (nonatomic, strong) AWSEC2HostProperties * _Nullable hostProperties; /**

Indicates whether host recovery is enabled or disabled for the Dedicated Host.

*/ @property (nonatomic, assign) AWSEC2HostRecovery hostRecovery; /**

The reservation ID of the Dedicated Host. This returns a null response if the Dedicated Host doesn't have an associated reservation.

*/ @property (nonatomic, strong) NSString * _Nullable hostReservationId; /**

The IDs and instance type that are currently running on the Dedicated Host.

*/ @property (nonatomic, strong) NSArray * _Nullable instances; /**

Indicates whether the Dedicated Host is in a host resource group. If memberOfServiceLinkedResourceGroup is true, the host is in a host resource group; otherwise, it is not.

*/ @property (nonatomic, strong) NSNumber * _Nullable memberOfServiceLinkedResourceGroup; /**

The Amazon Resource Name (ARN) of the Amazon Web Services Outpost on which the Dedicated Host is allocated.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The ID of the Amazon Web Services account that owns the Dedicated Host.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The time that the Dedicated Host was released.

*/ @property (nonatomic, strong) NSDate * _Nullable releaseTime; /**

The Dedicated Host's state.

*/ @property (nonatomic, assign) AWSEC2AllocationState state; /**

Any tags assigned to the Dedicated Host.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes an instance running on a Dedicated Host.

*/ @interface AWSEC2HostInstance : AWSModel /**

The ID of instance that is running on the Dedicated Host.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The instance type (for example, m3.medium) of the running instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; /**

The ID of the Amazon Web Services account that owns the instance.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; @end /**

Details about the Dedicated Host Reservation offering.

*/ @interface AWSEC2HostOffering : AWSModel /**

The currency of the offering.

*/ @property (nonatomic, assign) AWSEC2CurrencyCodeValues currencyCode; /**

The duration of the offering (in seconds).

*/ @property (nonatomic, strong) NSNumber * _Nullable duration; /**

The hourly price of the offering.

*/ @property (nonatomic, strong) NSString * _Nullable hourlyPrice; /**

The instance family of the offering.

*/ @property (nonatomic, strong) NSString * _Nullable instanceFamily; /**

The ID of the offering.

*/ @property (nonatomic, strong) NSString * _Nullable offeringId; /**

The available payment option.

*/ @property (nonatomic, assign) AWSEC2PaymentOption paymentOption; /**

The upfront price of the offering. Does not apply to No Upfront offerings.

*/ @property (nonatomic, strong) NSString * _Nullable upfrontPrice; @end /**

Describes the properties of a Dedicated Host.

*/ @interface AWSEC2HostProperties : AWSModel /**

The number of cores on the Dedicated Host.

*/ @property (nonatomic, strong) NSNumber * _Nullable cores; /**

The instance family supported by the Dedicated Host. For example, m5.

*/ @property (nonatomic, strong) NSString * _Nullable instanceFamily; /**

The instance type supported by the Dedicated Host. For example, m5.large. If the host supports multiple instance types, no instanceType is returned.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; /**

The number of sockets on the Dedicated Host.

*/ @property (nonatomic, strong) NSNumber * _Nullable sockets; /**

The total number of vCPUs on the Dedicated Host.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalVCpus; @end /**

Details about the Dedicated Host Reservation and associated Dedicated Hosts.

*/ @interface AWSEC2HostReservation : AWSModel /**

The number of Dedicated Hosts the reservation is associated with.

*/ @property (nonatomic, strong) NSNumber * _Nullable count; /**

The currency in which the upfrontPrice and hourlyPrice amounts are specified. At this time, the only supported currency is USD.

*/ @property (nonatomic, assign) AWSEC2CurrencyCodeValues currencyCode; /**

The length of the reservation's term, specified in seconds. Can be 31536000 (1 year) | 94608000 (3 years).

*/ @property (nonatomic, strong) NSNumber * _Nullable duration; /**

The date and time that the reservation ends.

*/ @property (nonatomic, strong) NSDate * _Nullable end; /**

The IDs of the Dedicated Hosts associated with the reservation.

*/ @property (nonatomic, strong) NSArray * _Nullable hostIdSet; /**

The ID of the reservation that specifies the associated Dedicated Hosts.

*/ @property (nonatomic, strong) NSString * _Nullable hostReservationId; /**

The hourly price of the reservation.

*/ @property (nonatomic, strong) NSString * _Nullable hourlyPrice; /**

The instance family of the Dedicated Host Reservation. The instance family on the Dedicated Host must be the same in order for it to benefit from the reservation.

*/ @property (nonatomic, strong) NSString * _Nullable instanceFamily; /**

The ID of the reservation. This remains the same regardless of which Dedicated Hosts are associated with it.

*/ @property (nonatomic, strong) NSString * _Nullable offeringId; /**

The payment option selected for this reservation.

*/ @property (nonatomic, assign) AWSEC2PaymentOption paymentOption; /**

The date and time that the reservation started.

*/ @property (nonatomic, strong) NSDate * _Nullable start; /**

The state of the reservation.

*/ @property (nonatomic, assign) AWSEC2ReservationState state; /**

Any tags assigned to the Dedicated Host Reservation.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The upfront price of the reservation.

*/ @property (nonatomic, strong) NSString * _Nullable upfrontPrice; @end /**

The internet key exchange (IKE) version permitted for the VPN tunnel.

*/ @interface AWSEC2IKEVersionsListValue : AWSModel /**

The IKE version.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

The IKE version that is permitted for the VPN tunnel.

*/ @interface AWSEC2IKEVersionsRequestListValue : AWSModel /**

The IKE version.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

Describes an IAM instance profile.

*/ @interface AWSEC2IamInstanceProfile : AWSModel /**

The Amazon Resource Name (ARN) of the instance profile.

*/ @property (nonatomic, strong) NSString * _Nullable arn; /**

The ID of the instance profile.

*/ @property (nonatomic, strong) NSString * _Nullable identifier; @end /**

Describes an association between an IAM instance profile and an instance.

*/ @interface AWSEC2IamInstanceProfileAssociation : AWSModel /**

The ID of the association.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The IAM instance profile.

*/ @property (nonatomic, strong) AWSEC2IamInstanceProfile * _Nullable iamInstanceProfile; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The state of the association.

*/ @property (nonatomic, assign) AWSEC2IamInstanceProfileAssociationState state; /**

The time the IAM instance profile was associated with the instance.

*/ @property (nonatomic, strong) NSDate * _Nullable timestamp; @end /**

Describes an IAM instance profile.

*/ @interface AWSEC2IamInstanceProfileSpecification : AWSModel /**

The Amazon Resource Name (ARN) of the instance profile.

*/ @property (nonatomic, strong) NSString * _Nullable arn; /**

The name of the instance profile.

*/ @property (nonatomic, strong) NSString * _Nullable name; @end /**

Describes the ICMP type and code.

*/ @interface AWSEC2IcmpTypeCode : AWSModel /**

The ICMP code. A value of -1 means all codes for the specified ICMP type.

*/ @property (nonatomic, strong) NSNumber * _Nullable code; /**

The ICMP type. A value of -1 means all types.

*/ @property (nonatomic, strong) NSNumber * _Nullable types; @end /**

Describes the ID format for a resource.

*/ @interface AWSEC2IdFormat : AWSModel /**

The date in UTC at which you are permanently switched over to using longer IDs. If a deadline is not yet available for this resource type, this field is not returned.

*/ @property (nonatomic, strong) NSDate * _Nullable deadline; /**

The type of resource.

*/ @property (nonatomic, strong) NSString * _Nullable resource; /**

Indicates whether longer IDs (17-character IDs) are enabled for the resource.

*/ @property (nonatomic, strong) NSNumber * _Nullable useLongIds; @end /**

Describes an image.

*/ @interface AWSEC2Image : AWSModel /**

The architecture of the image.

*/ @property (nonatomic, assign) AWSEC2ArchitectureValues architecture; /**

Any block device mapping entries.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

The boot mode of the image. For more information, see Boot modes in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2BootModeValues bootMode; /**

The date and time the image was created.

*/ @property (nonatomic, strong) NSString * _Nullable creationDate; /**

The date and time to deprecate the AMI, in UTC, in the following format: YYYY-MM-DDTHH:MM:SSZ. If you specified a value for seconds, Amazon EC2 rounds the seconds to the nearest minute.

*/ @property (nonatomic, strong) NSString * _Nullable deprecationTime; /**

The description of the AMI that was provided during image creation.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Specifies whether enhanced networking with ENA is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enaSupport; /**

The hypervisor type of the image.

*/ @property (nonatomic, assign) AWSEC2HypervisorType hypervisor; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The location of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageLocation; /**

The Amazon Web Services account alias (for example, amazon, self) or the Amazon Web Services account ID of the AMI owner.

*/ @property (nonatomic, strong) NSString * _Nullable imageOwnerAlias; /**

The type of image.

*/ @property (nonatomic, assign) AWSEC2ImageTypeValues imageType; /**

If v2.0, it indicates that IMDSv2 is specified in the AMI. Instances launched from this AMI will have HttpTokens automatically set to required so that, by default, the instance requires that IMDSv2 is used when requesting instance metadata. In addition, HttpPutResponseHopLimit is set to 2. For more information, see Configure the AMI in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2ImdsSupportValues imdsSupport; /**

The kernel associated with the image, if any. Only applicable for machine images.

*/ @property (nonatomic, strong) NSString * _Nullable kernelId; /**

The name of the AMI that was provided during image creation.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The ID of the Amazon Web Services account that owns the image.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

This value is set to windows for Windows AMIs; otherwise, it is blank.

*/ @property (nonatomic, assign) AWSEC2PlatformValues platform; /**

The platform details associated with the billing code of the AMI. For more information, see Understand AMI billing information in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable platformDetails; /**

Any product codes associated with the AMI.

*/ @property (nonatomic, strong) NSArray * _Nullable productCodes; /**

Indicates whether the image has public launch permissions. The value is true if this image has public launch permissions or false if it has only implicit and explicit launch permissions.

*/ @property (nonatomic, strong) NSNumber * _Nullable public; /**

The RAM disk associated with the image, if any. Only applicable for machine images.

*/ @property (nonatomic, strong) NSString * _Nullable ramdiskId; /**

The device name of the root device volume (for example, /dev/sda1).

*/ @property (nonatomic, strong) NSString * _Nullable rootDeviceName; /**

The type of root device used by the AMI. The AMI can use an Amazon EBS volume or an instance store volume.

*/ @property (nonatomic, assign) AWSEC2DeviceType rootDeviceType; /**

Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

*/ @property (nonatomic, strong) NSString * _Nullable sriovNetSupport; /**

The current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.

*/ @property (nonatomic, assign) AWSEC2ImageState state; /**

The reason for the state change.

*/ @property (nonatomic, strong) AWSEC2StateReason * _Nullable stateReason; /**

Any tags assigned to the image.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

If the image is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2TpmSupportValues tpmSupport; /**

The operation of the Amazon EC2 instance and the billing code that is associated with the AMI. usageOperation corresponds to the lineitem/Operation column on your Amazon Web Services Cost and Usage Report and in the Amazon Web Services Price List API. You can view these fields on the Instances or AMIs pages in the Amazon EC2 console, or in the responses that are returned by the DescribeImages command in the Amazon EC2 API, or the describe-images command in the CLI.

*/ @property (nonatomic, strong) NSString * _Nullable usageOperation; /**

The type of virtualization of the AMI.

*/ @property (nonatomic, assign) AWSEC2VirtualizationType virtualizationType; @end /**

Describes an image attribute.

*/ @interface AWSEC2ImageAttribute : AWSModel /**

The block device mapping entries.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

The boot mode.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable bootMode; /**

A description for the AMI.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable detail; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

If v2.0, it indicates that IMDSv2 is specified in the AMI. Instances launched from this AMI will have HttpTokens automatically set to required so that, by default, the instance requires that IMDSv2 is used when requesting instance metadata. In addition, HttpPutResponseHopLimit is set to 2. For more information, see Configure the AMI in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable imdsSupport; /**

The kernel ID.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable kernelId; /**

The date and time, in ISO 8601 date-time format, when the AMI was last used to launch an EC2 instance. When the AMI is used to launch an instance, there is a 24-hour delay before that usage is reported.

lastLaunchedTime data is available starting April 2017.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable lastLaunchedTime; /**

The launch permissions.

*/ @property (nonatomic, strong) NSArray * _Nullable launchPermissions; /**

The product codes.

*/ @property (nonatomic, strong) NSArray * _Nullable productCodes; /**

The RAM disk ID.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable ramdiskId; /**

Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable sriovNetSupport; /**

If the image is configured for NitroTPM support, the value is v2.0.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable tpmSupport; /**

Base64 representation of the non-volatile UEFI variable store. To retrieve the UEFI data, use the GetInstanceUefiData command. You can inspect and modify the UEFI data by using the python-uefivars tool on GitHub. For more information, see UEFI Secure Boot in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable uefiData; @end /**

Describes the disk container object for an import image task.

*/ @interface AWSEC2ImageDiskContainer : AWSModel /**

The description of the disk image.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The block device mapping for the disk.

*/ @property (nonatomic, strong) NSString * _Nullable deviceName; /**

The format of the disk image being imported.

Valid values: OVA | VHD | VHDX | VMDK | RAW

*/ @property (nonatomic, strong) NSString * _Nullable format; /**

The ID of the EBS snapshot to be used for importing the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The URL to the Amazon S3-based disk image being imported. The URL can either be a https URL (https://..) or an Amazon S3 URL (s3://..)

*/ @property (nonatomic, strong) NSString * _Nullable url; /**

The S3 bucket for the disk image.

*/ @property (nonatomic, strong) AWSEC2UserBucket * _Nullable userBucket; @end /**

Information about an AMI that is currently in the Recycle Bin.

*/ @interface AWSEC2ImageRecycleBinInfo : AWSModel /**

The description of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The name of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The date and time when the AMI entered the Recycle Bin.

*/ @property (nonatomic, strong) NSDate * _Nullable recycleBinEnterTime; /**

The date and time when the AMI is to be permanently deleted from the Recycle Bin.

*/ @property (nonatomic, strong) NSDate * _Nullable recycleBinExitTime; @end /** */ @interface AWSEC2ImportClientVpnClientCertificateRevocationListRequest : AWSRequest /**

The client certificate revocation list file. For more information, see Generate a Client Certificate Revocation List in the Client VPN Administrator Guide.

*/ @property (nonatomic, strong) NSString * _Nullable certificateRevocationList; /**

The ID of the Client VPN endpoint to which the client certificate revocation list applies.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2ImportClientVpnClientCertificateRevocationListResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /**

The request information of license configurations.

*/ @interface AWSEC2ImportImageLicenseConfigurationRequest : AWSModel /**

The ARN of a license configuration.

*/ @property (nonatomic, strong) NSString * _Nullable licenseConfigurationArn; @end /**

The response information for license configurations.

*/ @interface AWSEC2ImportImageLicenseConfigurationResponse : AWSModel /**

The ARN of a license configuration.

*/ @property (nonatomic, strong) NSString * _Nullable licenseConfigurationArn; @end /** */ @interface AWSEC2ImportImageRequest : AWSRequest /**

The architecture of the virtual machine.

Valid values: i386 | x86_64

*/ @property (nonatomic, strong) NSString * _Nullable architecture; /**

The boot mode of the virtual machine.

*/ @property (nonatomic, assign) AWSEC2BootModeValues bootMode; /**

The client-specific data.

*/ @property (nonatomic, strong) AWSEC2ClientData * _Nullable clientData; /**

The token to enable idempotency for VM import requests.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description string for the import image task.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Information about the disk containers.

*/ @property (nonatomic, strong) NSArray * _Nullable diskContainers; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Specifies whether the destination AMI of the imported image should be encrypted. The default KMS key for EBS is used unless you specify a non-default KMS key using KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The target hypervisor platform.

Valid values: xen

*/ @property (nonatomic, strong) NSString * _Nullable hypervisor; /**

An identifier for the symmetric KMS key to use when creating the encrypted AMI. This parameter is only required if you want to use a non-default KMS key; if this parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set.

The KMS key identifier may be provided in any of the following formats:

  • Key ID

  • Key alias

  • ARN using key ID. The ID ARN contains the arn:aws:kms namespace, followed by the Region of the key, the Amazon Web Services account ID of the key owner, the key namespace, and then the key ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef.

  • ARN using key alias. The alias ARN contains the arn:aws:kms namespace, followed by the Region of the key, the Amazon Web Services account ID of the key owner, the alias namespace, and then the key alias. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.

Amazon Web Services parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even though you provided an invalid identifier. This action will eventually report failure.

The specified KMS key must exist in the Region that the AMI is being copied to.

Amazon EBS does not support asymmetric KMS keys.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

The ARNs of the license configurations.

*/ @property (nonatomic, strong) NSArray * _Nullable licenseSpecifications; /**

The license type to be used for the Amazon Machine Image (AMI) after importing.

Specify AWS to replace the source-system license with an Amazon Web Services license or BYOL to retain the source-system license. Leaving this parameter undefined is the same as choosing AWS when importing a Windows Server operating system, and the same as choosing BYOL when importing a Windows client operating system (such as Windows 10) or a Linux operating system.

To use BYOL, you must have existing licenses with rights to use these licenses in a third party cloud, such as Amazon Web Services. For more information, see Prerequisites in the VM Import/Export User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable licenseType; /**

The operating system of the virtual machine. If you import a VM that is compatible with Unified Extensible Firmware Interface (UEFI) using an EBS snapshot, you must specify a value for the platform.

Valid values: Windows | Linux

*/ @property (nonatomic, strong) NSString * _Nullable platform; /**

The name of the role to use when not using the default role, 'vmimport'.

*/ @property (nonatomic, strong) NSString * _Nullable roleName; /**

The tags to apply to the import image task during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The usage operation value. For more information, see Licensing options in the VM Import/Export User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable usageOperation; @end /** */ @interface AWSEC2ImportImageResult : AWSModel /**

The architecture of the virtual machine.

*/ @property (nonatomic, strong) NSString * _Nullable architecture; /**

A description of the import task.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Indicates whether the AMI is encrypted.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The target hypervisor of the import task.

*/ @property (nonatomic, strong) NSString * _Nullable hypervisor; /**

The ID of the Amazon Machine Image (AMI) created by the import task.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The task ID of the import image task.

*/ @property (nonatomic, strong) NSString * _Nullable importTaskId; /**

The identifier for the symmetric KMS key that was used to create the encrypted AMI.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

The ARNs of the license configurations.

*/ @property (nonatomic, strong) NSArray * _Nullable licenseSpecifications; /**

The license type of the virtual machine.

*/ @property (nonatomic, strong) NSString * _Nullable licenseType; /**

The operating system of the virtual machine.

*/ @property (nonatomic, strong) NSString * _Nullable platform; /**

The progress of the task.

*/ @property (nonatomic, strong) NSString * _Nullable progress; /**

Information about the snapshots.

*/ @property (nonatomic, strong) NSArray * _Nullable snapshotDetails; /**

A brief status of the task.

*/ @property (nonatomic, strong) NSString * _Nullable status; /**

A detailed status message of the import task.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

Any tags assigned to the import image task.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The usage operation value.

*/ @property (nonatomic, strong) NSString * _Nullable usageOperation; @end /**

Describes an import image task.

*/ @interface AWSEC2ImportImageTask : AWSModel /**

The architecture of the virtual machine.

Valid values: i386 | x86_64 | arm64

*/ @property (nonatomic, strong) NSString * _Nullable architecture; /**

The boot mode of the virtual machine.

*/ @property (nonatomic, assign) AWSEC2BootModeValues bootMode; /**

A description of the import task.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Indicates whether the image is encrypted.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The target hypervisor for the import task.

Valid values: xen

*/ @property (nonatomic, strong) NSString * _Nullable hypervisor; /**

The ID of the Amazon Machine Image (AMI) of the imported virtual machine.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The ID of the import image task.

*/ @property (nonatomic, strong) NSString * _Nullable importTaskId; /**

The identifier for the KMS key that was used to create the encrypted image.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

The ARNs of the license configurations that are associated with the import image task.

*/ @property (nonatomic, strong) NSArray * _Nullable licenseSpecifications; /**

The license type of the virtual machine.

*/ @property (nonatomic, strong) NSString * _Nullable licenseType; /**

The description string for the import image task.

*/ @property (nonatomic, strong) NSString * _Nullable platform; /**

The percentage of progress of the import image task.

*/ @property (nonatomic, strong) NSString * _Nullable progress; /**

Information about the snapshots.

*/ @property (nonatomic, strong) NSArray * _Nullable snapshotDetails; /**

A brief status for the import image task.

*/ @property (nonatomic, strong) NSString * _Nullable status; /**

A descriptive status message for the import image task.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

The tags for the import image task.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The usage operation value.

*/ @property (nonatomic, strong) NSString * _Nullable usageOperation; @end /**

Describes the launch specification for VM import.

*/ @interface AWSEC2ImportInstanceLaunchSpecification : AWSModel /**

Reserved.

*/ @property (nonatomic, strong) NSString * _Nullable additionalInfo; /**

The architecture of the instance.

*/ @property (nonatomic, assign) AWSEC2ArchitectureValues architecture; /**

The security group IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable groupIds; /**

The security group names.

*/ @property (nonatomic, strong) NSArray * _Nullable groupNames; /**

Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

*/ @property (nonatomic, assign) AWSEC2ShutdownBehavior instanceInitiatedShutdownBehavior; /**

The instance type. For more information about the instance types that you can import, see Instance Types in the VM Import/Export User Guide.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

Indicates whether monitoring is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable monitoring; /**

The placement information for the instance.

*/ @property (nonatomic, strong) AWSEC2Placement * _Nullable placement; /**

[EC2-VPC] An available IP address from the IP address range of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

[EC2-VPC] The ID of the subnet in which to launch the instance.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The Base64-encoded user data to make available to the instance.

*/ @property (nonatomic, strong) AWSEC2UserData * _Nullable userData; @end /** */ @interface AWSEC2ImportInstanceRequest : AWSRequest /**

A description for the instance being imported.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The disk image.

*/ @property (nonatomic, strong) NSArray * _Nullable diskImages; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The launch specification.

*/ @property (nonatomic, strong) AWSEC2ImportInstanceLaunchSpecification * _Nullable launchSpecification; /**

The instance operating system.

*/ @property (nonatomic, assign) AWSEC2PlatformValues platform; @end /** */ @interface AWSEC2ImportInstanceResult : AWSModel /**

Information about the conversion task.

*/ @property (nonatomic, strong) AWSEC2ConversionTask * _Nullable conversionTask; @end /**

Describes an import instance task.

*/ @interface AWSEC2ImportInstanceTaskDetails : AWSModel /**

A description of the task.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The instance operating system.

*/ @property (nonatomic, assign) AWSEC2PlatformValues platform; /**

The volumes.

*/ @property (nonatomic, strong) NSArray * _Nullable volumes; @end /**

Describes an import volume task.

*/ @interface AWSEC2ImportInstanceVolumeDetailItem : AWSModel /**

The Availability Zone where the resulting instance will reside.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The number of bytes converted so far.

*/ @property (nonatomic, strong) NSNumber * _Nullable bytesConverted; /**

A description of the task.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The image.

*/ @property (nonatomic, strong) AWSEC2DiskImageDescription * _Nullable image; /**

The status of the import of this particular disk image.

*/ @property (nonatomic, strong) NSString * _Nullable status; /**

The status information or errors related to the disk image.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

The volume.

*/ @property (nonatomic, strong) AWSEC2DiskImageVolumeDescription * _Nullable volume; @end /** */ @interface AWSEC2ImportKeyPairRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

A unique name for the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

The public key. For API calls, the text must be base64-encoded. For command line tools, base64 encoding is performed for you.

*/ @property (nonatomic, strong) NSData * _Nullable publicKeyMaterial; /**

The tags to apply to the imported key pair.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2ImportKeyPairResult : AWSModel /**
  • For RSA key pairs, the key fingerprint is the MD5 public key fingerprint as specified in section 4 of RFC 4716.

  • For ED25519 key pairs, the key fingerprint is the base64-encoded SHA-256 digest, which is the default for OpenSSH, starting with OpenSSH 6.8.

*/ @property (nonatomic, strong) NSString * _Nullable keyFingerprint; /**

The key pair name that you provided.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

The ID of the resulting key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyPairId; /**

The tags applied to the imported key pair.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /** */ @interface AWSEC2ImportSnapshotRequest : AWSRequest /**

The client-specific data.

*/ @property (nonatomic, strong) AWSEC2ClientData * _Nullable clientData; /**

Token to enable idempotency for VM import requests.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The description string for the import snapshot task.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Information about the disk container.

*/ @property (nonatomic, strong) AWSEC2SnapshotDiskContainer * _Nullable diskContainer; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Specifies whether the destination snapshot of the imported image should be encrypted. The default KMS key for EBS is used unless you specify a non-default KMS key using KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

An identifier for the symmetric KMS key to use when creating the encrypted snapshot. This parameter is only required if you want to use a non-default KMS key; if this parameter is not specified, the default KMS key for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set.

The KMS key identifier may be provided in any of the following formats:

  • Key ID

  • Key alias

  • ARN using key ID. The ID ARN contains the arn:aws:kms namespace, followed by the Region of the key, the Amazon Web Services account ID of the key owner, the key namespace, and then the key ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef.

  • ARN using key alias. The alias ARN contains the arn:aws:kms namespace, followed by the Region of the key, the Amazon Web Services account ID of the key owner, the alias namespace, and then the key alias. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.

Amazon Web Services parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even though you provided an invalid identifier. This action will eventually report failure.

The specified KMS key must exist in the Region that the snapshot is being copied to.

Amazon EBS does not support asymmetric KMS keys.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

The name of the role to use when not using the default role, 'vmimport'.

*/ @property (nonatomic, strong) NSString * _Nullable roleName; /**

The tags to apply to the import snapshot task during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2ImportSnapshotResult : AWSModel /**

A description of the import snapshot task.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the import snapshot task.

*/ @property (nonatomic, strong) NSString * _Nullable importTaskId; /**

Information about the import snapshot task.

*/ @property (nonatomic, strong) AWSEC2SnapshotTaskDetail * _Nullable snapshotTaskDetail; /**

Any tags assigned to the import snapshot task.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes an import snapshot task.

*/ @interface AWSEC2ImportSnapshotTask : AWSModel /**

A description of the import snapshot task.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the import snapshot task.

*/ @property (nonatomic, strong) NSString * _Nullable importTaskId; /**

Describes an import snapshot task.

*/ @property (nonatomic, strong) AWSEC2SnapshotTaskDetail * _Nullable snapshotTaskDetail; /**

The tags for the import snapshot task.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /** */ @interface AWSEC2ImportVolumeRequest : AWSRequest /**

The Availability Zone for the resulting EBS volume.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

A description of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The disk image.

*/ @property (nonatomic, strong) AWSEC2DiskImageDetail * _Nullable image; /**

The volume size.

*/ @property (nonatomic, strong) AWSEC2VolumeDetail * _Nullable volume; @end /** */ @interface AWSEC2ImportVolumeResult : AWSModel /**

Information about the conversion task.

*/ @property (nonatomic, strong) AWSEC2ConversionTask * _Nullable conversionTask; @end /**

Describes an import volume task.

*/ @interface AWSEC2ImportVolumeTaskDetails : AWSModel /**

The Availability Zone where the resulting volume will reside.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The number of bytes converted so far.

*/ @property (nonatomic, strong) NSNumber * _Nullable bytesConverted; /**

The description you provided when starting the import volume task.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The image.

*/ @property (nonatomic, strong) AWSEC2DiskImageDescription * _Nullable image; /**

The volume.

*/ @property (nonatomic, strong) AWSEC2DiskImageVolumeDescription * _Nullable volume; @end /**

Describes the Inference accelerators for the instance type.

*/ @interface AWSEC2InferenceAcceleratorInfo : AWSModel /**

Describes the Inference accelerators for the instance type.

*/ @property (nonatomic, strong) NSArray * _Nullable accelerators; /**

The total size of the memory for the inference accelerators for the instance type, in MiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalInferenceMemoryInMiB; @end /**

Describes the Inference accelerators for the instance type.

*/ @interface AWSEC2InferenceDeviceInfo : AWSModel /**

The number of Inference accelerators for the instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable count; /**

The manufacturer of the Inference accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable manufacturer; /**

Describes the memory available to the inference accelerator.

*/ @property (nonatomic, strong) AWSEC2InferenceDeviceMemoryInfo * _Nullable memoryInfo; /**

The name of the Inference accelerator.

*/ @property (nonatomic, strong) NSString * _Nullable name; @end /**

Describes the memory available to the inference accelerator.

*/ @interface AWSEC2InferenceDeviceMemoryInfo : AWSModel /**

The size of the memory available to the inference accelerator, in MiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable sizeInMiB; @end /**

Describes an instance.

*/ @interface AWSEC2Instance : AWSModel /**

The AMI launch index, which can be used to find this instance in the launch group.

*/ @property (nonatomic, strong) NSNumber * _Nullable amiLaunchIndex; /**

The architecture of the image.

*/ @property (nonatomic, assign) AWSEC2ArchitectureValues architecture; /**

Any block device mapping entries for the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

The boot mode that was specified by the AMI. If the value is uefi-preferred, the AMI supports both UEFI and Legacy BIOS. The currentInstanceBootMode parameter is the boot mode that is used to boot the instance at launch or start.

The operating system contained in the AMI must be configured to support the specified boot mode.

For more information, see Boot modes in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2BootModeValues bootMode; /**

The ID of the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationId; /**

Information about the Capacity Reservation targeting option.

*/ @property (nonatomic, strong) AWSEC2CapacityReservationSpecificationResponse * _Nullable capacityReservationSpecification; /**

The idempotency token you provided when you launched the instance, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The CPU options for the instance.

*/ @property (nonatomic, strong) AWSEC2CpuOptions * _Nullable cpuOptions; /**

The boot mode that is used to boot the instance at launch or start. For more information, see Boot modes in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2InstanceBootModeValues currentInstanceBootMode; /**

Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

The Elastic GPU associated with the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable elasticGpuAssociations; /**

The elastic inference accelerator associated with the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable elasticInferenceAcceleratorAssociations; /**

Specifies whether enhanced networking with ENA is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enaSupport; /**

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

*/ @property (nonatomic, strong) AWSEC2EnclaveOptions * _Nullable enclaveOptions; /**

Indicates whether the instance is enabled for hibernation.

*/ @property (nonatomic, strong) AWSEC2HibernationOptions * _Nullable hibernationOptions; /**

The hypervisor type of the instance. The value xen is used for both Xen and Nitro hypervisors.

*/ @property (nonatomic, assign) AWSEC2HypervisorType hypervisor; /**

The IAM instance profile associated with the instance, if applicable.

*/ @property (nonatomic, strong) AWSEC2IamInstanceProfile * _Nullable iamInstanceProfile; /**

The ID of the AMI used to launch the instance.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

Indicates whether this is a Spot Instance or a Scheduled Instance.

*/ @property (nonatomic, assign) AWSEC2InstanceLifecycleType instanceLifecycle; /**

The instance type.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The IPv6 address assigned to the instance.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Address; /**

The kernel associated with this instance, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable kernelId; /**

The name of the key pair, if this instance was launched with an associated key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

The time the instance was launched.

*/ @property (nonatomic, strong) NSDate * _Nullable launchTime; /**

The license configurations for the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable licenses; /**

Provides information on the recovery and maintenance options of your instance.

*/ @property (nonatomic, strong) AWSEC2InstanceMaintenanceOptions * _Nullable maintenanceOptions; /**

The metadata options for the instance.

*/ @property (nonatomic, strong) AWSEC2InstanceMetadataOptionsResponse * _Nullable metadataOptions; /**

The monitoring for the instance.

*/ @property (nonatomic, strong) AWSEC2Monitoring * _Nullable monitoring; /**

The network interfaces for the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaces; /**

The Amazon Resource Name (ARN) of the Outpost.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The location where the instance launched, if applicable.

*/ @property (nonatomic, strong) AWSEC2Placement * _Nullable placement; /**

The value is Windows for Windows instances; otherwise blank.

*/ @property (nonatomic, assign) AWSEC2PlatformValues platform; /**

The platform details value for the instance. For more information, see AMI billing information fields in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable platformDetails; /**

[IPv4 only] The private DNS hostname name assigned to the instance. This DNS hostname can only be used inside the Amazon EC2 network. This name is not available until the instance enters the running state.

The Amazon-provided DNS server resolves Amazon-provided private DNS hostnames if you've enabled DNS resolution and DNS hostnames in your VPC. If you are not using the Amazon-provided DNS server in your VPC, your custom domain name servers must resolve the hostname as appropriate.

*/ @property (nonatomic, strong) NSString * _Nullable privateDnsName; /**

The options for the instance hostname.

*/ @property (nonatomic, strong) AWSEC2PrivateDnsNameOptionsResponse * _Nullable privateDnsNameOptions; /**

The private IPv4 address assigned to the instance.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

The product codes attached to this instance, if applicable.

*/ @property (nonatomic, strong) NSArray * _Nullable productCodes; /**

[IPv4 only] The public DNS name assigned to the instance. This name is not available until the instance enters the running state. This name is only available if you've enabled DNS hostnames for your VPC.

*/ @property (nonatomic, strong) NSString * _Nullable publicDnsName; /**

The public IPv4 address, or the Carrier IP address assigned to the instance, if applicable.

A Carrier IP address only applies to an instance launched in a subnet associated with a Wavelength Zone.

*/ @property (nonatomic, strong) NSString * _Nullable publicIpAddress; /**

The RAM disk associated with this instance, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable ramdiskId; /**

The device name of the root device volume (for example, /dev/sda1).

*/ @property (nonatomic, strong) NSString * _Nullable rootDeviceName; /**

The root device type used by the AMI. The AMI can use an EBS volume or an instance store volume.

*/ @property (nonatomic, assign) AWSEC2DeviceType rootDeviceType; /**

The security groups for the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroups; /**

Indicates whether source/destination checking is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable sourceDestCheck; /**

If the request is a Spot Instance request, the ID of the request.

*/ @property (nonatomic, strong) NSString * _Nullable spotInstanceRequestId; /**

Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

*/ @property (nonatomic, strong) NSString * _Nullable sriovNetSupport; /**

The current state of the instance.

*/ @property (nonatomic, strong) AWSEC2InstanceState * _Nullable state; /**

The reason for the most recent state transition.

*/ @property (nonatomic, strong) AWSEC2StateReason * _Nullable stateReason; /**

The reason for the most recent state transition. This might be an empty string.

*/ @property (nonatomic, strong) NSString * _Nullable stateTransitionReason; /**

The ID of the subnet in which the instance is running.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

Any tags assigned to the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

If the instance is configured for NitroTPM support, the value is v2.0. For more information, see NitroTPM in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable tpmSupport; /**

The usage operation value for the instance. For more information, see AMI billing information fields in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable usageOperation; /**

The time that the usage operation was last updated.

*/ @property (nonatomic, strong) NSDate * _Nullable usageOperationUpdateTime; /**

The virtualization type of the instance.

*/ @property (nonatomic, assign) AWSEC2VirtualizationType virtualizationType; /**

The ID of the VPC in which the instance is running.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes an instance attribute.

*/ @interface AWSEC2InstanceAttribute : AWSModel /**

The block device mapping of the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

To enable the instance for Amazon Web Services Stop Protection, set this parameter to true; otherwise, set it to false.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable disableApiStop; /**

If the value is true, you can't terminate the instance through the Amazon EC2 console, CLI, or API; otherwise, you can.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable disableApiTermination; /**

Indicates whether the instance is optimized for Amazon EBS I/O.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable ebsOptimized; /**

Indicates whether enhanced networking with ENA is enabled.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable enaSupport; /**

To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to true; otherwise, set it to false.

*/ @property (nonatomic, strong) AWSEC2EnclaveOptions * _Nullable enclaveOptions; /**

The security groups associated with the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable instanceInitiatedShutdownBehavior; /**

The instance type.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable instanceType; /**

The kernel ID.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable kernelId; /**

A list of product codes.

*/ @property (nonatomic, strong) NSArray * _Nullable productCodes; /**

The RAM disk ID.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable ramdiskId; /**

The device name of the root device volume (for example, /dev/sda1).

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable rootDeviceName; /**

Enable or disable source/destination checks, which ensure that the instance is either the source or the destination of any traffic that it receives. If the value is true, source/destination checks are enabled; otherwise, they are disabled. The default value is true. You must disable source/destination checks if the instance runs services such as network address translation, routing, or firewalls.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable sourceDestCheck; /**

Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable sriovNetSupport; /**

The user data.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable userData; @end /**

Describes a block device mapping.

*/ @interface AWSEC2InstanceBlockDeviceMapping : AWSModel /**

The device name (for example, /dev/sdh or xvdh).

*/ @property (nonatomic, strong) NSString * _Nullable deviceName; /**

Parameters used to automatically set up EBS volumes when the instance is launched.

*/ @property (nonatomic, strong) AWSEC2EbsInstanceBlockDevice * _Nullable ebs; @end /**

Describes a block device mapping entry.

*/ @interface AWSEC2InstanceBlockDeviceMappingSpecification : AWSModel /**

The device name (for example, /dev/sdh or xvdh).

*/ @property (nonatomic, strong) NSString * _Nullable deviceName; /**

Parameters used to automatically set up EBS volumes when the instance is launched.

*/ @property (nonatomic, strong) AWSEC2EbsInstanceBlockDeviceSpecification * _Nullable ebs; /**

suppress the specified device included in the block device mapping.

*/ @property (nonatomic, strong) NSString * _Nullable noDevice; /**

The virtual device name.

*/ @property (nonatomic, strong) NSString * _Nullable virtualName; @end /**

Information about the number of instances that can be launched onto the Dedicated Host.

*/ @interface AWSEC2InstanceCapacity : AWSModel /**

The number of instances that can be launched onto the Dedicated Host based on the host's available capacity.

*/ @property (nonatomic, strong) NSNumber * _Nullable availableCapacity; /**

The instance type supported by the Dedicated Host.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; /**

The total number of instances that can be launched onto the Dedicated Host if there are no instances running on it.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalCapacity; @end /**

Describes a Reserved Instance listing state.

*/ @interface AWSEC2InstanceCount : AWSModel /**

The number of listed Reserved Instances in the state specified by the state.

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

The states of the listed Reserved Instances.

*/ @property (nonatomic, assign) AWSEC2ListingState state; @end /**

Describes the credit option for CPU usage of a burstable performance instance.

*/ @interface AWSEC2InstanceCreditSpecification : AWSModel /**

The credit option for CPU usage of the instance.

Valid values: standard | unlimited

*/ @property (nonatomic, strong) NSString * _Nullable cpuCredits; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /**

Describes the credit option for CPU usage of a burstable performance instance.

Required parameters: [InstanceId] */ @interface AWSEC2InstanceCreditSpecificationRequest : AWSModel /**

The credit option for CPU usage of the instance.

Valid values: standard | unlimited

T3 instances with host tenancy do not support the unlimited CPU credit option.

*/ @property (nonatomic, strong) NSString * _Nullable cpuCredits; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /**

The event window.

*/ @interface AWSEC2InstanceEventWindow : AWSModel /**

One or more targets associated with the event window.

*/ @property (nonatomic, strong) AWSEC2InstanceEventWindowAssociationTarget * _Nullable associationTarget; /**

The cron expression defined for the event window.

*/ @property (nonatomic, strong) NSString * _Nullable cronExpression; /**

The ID of the event window.

*/ @property (nonatomic, strong) NSString * _Nullable instanceEventWindowId; /**

The name of the event window.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The current state of the event window.

*/ @property (nonatomic, assign) AWSEC2InstanceEventWindowState state; /**

The instance tags associated with the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

One or more time ranges defined for the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable timeRanges; @end /**

One or more targets associated with the specified event window. Only one type of target (instance ID, instance tag, or Dedicated Host ID) can be associated with an event window.

*/ @interface AWSEC2InstanceEventWindowAssociationRequest : AWSModel /**

The IDs of the Dedicated Hosts to associate with the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable dedicatedHostIds; /**

The IDs of the instances to associate with the event window. If the instance is on a Dedicated Host, you can't specify the Instance ID parameter; you must use the Dedicated Host ID parameter.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; /**

The instance tags to associate with the event window. Any instances associated with the tags will be associated with the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTags; @end /**

One or more targets associated with the event window.

*/ @interface AWSEC2InstanceEventWindowAssociationTarget : AWSModel /**

The IDs of the Dedicated Hosts associated with the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable dedicatedHostIds; /**

The IDs of the instances associated with the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; /**

The instance tags associated with the event window. Any instances associated with the tags will be associated with the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

The targets to disassociate from the specified event window.

*/ @interface AWSEC2InstanceEventWindowDisassociationRequest : AWSModel /**

The IDs of the Dedicated Hosts to disassociate from the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable dedicatedHostIds; /**

The IDs of the instances to disassociate from the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; /**

The instance tags to disassociate from the event window. Any instances associated with the tags will be disassociated from the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTags; @end /**

The state of the event window.

*/ @interface AWSEC2InstanceEventWindowStateChange : AWSModel /**

The ID of the event window.

*/ @property (nonatomic, strong) NSString * _Nullable instanceEventWindowId; /**

The current state of the event window.

*/ @property (nonatomic, assign) AWSEC2InstanceEventWindowState state; @end /**

The start day and time and the end day and time of the time range, in UTC.

*/ @interface AWSEC2InstanceEventWindowTimeRange : AWSModel /**

The hour when the time range ends.

*/ @property (nonatomic, strong) NSNumber * _Nullable endHour; /**

The day on which the time range ends.

*/ @property (nonatomic, assign) AWSEC2WeekDay endWeekDay; /**

The hour when the time range begins.

*/ @property (nonatomic, strong) NSNumber * _Nullable startHour; /**

The day on which the time range begins.

*/ @property (nonatomic, assign) AWSEC2WeekDay startWeekDay; @end /**

The start day and time and the end day and time of the time range, in UTC.

*/ @interface AWSEC2InstanceEventWindowTimeRangeRequest : AWSModel /**

The hour when the time range ends.

*/ @property (nonatomic, strong) NSNumber * _Nullable endHour; /**

The day on which the time range ends.

*/ @property (nonatomic, assign) AWSEC2WeekDay endWeekDay; /**

The hour when the time range begins.

*/ @property (nonatomic, strong) NSNumber * _Nullable startHour; /**

The day on which the time range begins.

*/ @property (nonatomic, assign) AWSEC2WeekDay startWeekDay; @end /**

Describes an instance to export.

*/ @interface AWSEC2InstanceExportDetails : AWSModel /**

The ID of the resource being exported.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The target virtualization environment.

*/ @property (nonatomic, assign) AWSEC2ExportEnvironment targetEnvironment; @end /**

Describes the default credit option for CPU usage of a burstable performance instance family.

*/ @interface AWSEC2InstanceFamilyCreditSpecification : AWSModel /**

The default credit option for CPU usage of the instance family. Valid values are standard and unlimited.

*/ @property (nonatomic, strong) NSString * _Nullable cpuCredits; /**

The instance family.

*/ @property (nonatomic, assign) AWSEC2UnlimitedSupportedInstanceFamily instanceFamily; @end /**

Information about an IPv4 prefix.

*/ @interface AWSEC2InstanceIpv4Prefix : AWSModel /**

One or more IPv4 prefixes assigned to the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable ipv4Prefix; @end /**

Describes an IPv6 address.

*/ @interface AWSEC2InstanceIpv6Address : AWSModel /**

The IPv6 address.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Address; @end /**

Describes an IPv6 address.

*/ @interface AWSEC2InstanceIpv6AddressRequest : AWSModel /**

The IPv6 address.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Address; @end /**

Information about an IPv6 prefix.

*/ @interface AWSEC2InstanceIpv6Prefix : AWSModel /**

One or more IPv6 prefixes assigned to the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Prefix; @end /**

The maintenance options for the instance.

*/ @interface AWSEC2InstanceMaintenanceOptions : AWSModel /**

Provides information on the current automatic recovery behavior of your instance.

*/ @property (nonatomic, assign) AWSEC2InstanceAutoRecoveryState autoRecovery; @end /**

The maintenance options for the instance.

*/ @interface AWSEC2InstanceMaintenanceOptionsRequest : AWSModel /**

Disables the automatic recovery behavior of your instance or sets it to default. For more information, see Simplified automatic recovery.

*/ @property (nonatomic, assign) AWSEC2InstanceAutoRecoveryState autoRecovery; @end /**

Describes the market (purchasing) option for the instances.

*/ @interface AWSEC2InstanceMarketOptionsRequest : AWSModel /**

The market type.

*/ @property (nonatomic, assign) AWSEC2MarketType marketType; /**

The options for Spot Instances.

*/ @property (nonatomic, strong) AWSEC2SpotMarketOptions * _Nullable spotOptions; @end /**

The metadata options for the instance.

*/ @interface AWSEC2InstanceMetadataOptionsRequest : AWSModel /**

Enables or disables the HTTP metadata endpoint on your instances.

If you specify a value of disabled, you cannot access your instance metadata.

Default: enabled

*/ @property (nonatomic, assign) AWSEC2InstanceMetadataEndpointState httpEndpoint; /**

Enables or disables the IPv6 endpoint for the instance metadata service.

*/ @property (nonatomic, assign) AWSEC2InstanceMetadataProtocolState httpProtocolIpv6; /**

The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel.

Default: 1

Possible values: Integers from 1 to 64

*/ @property (nonatomic, strong) NSNumber * _Nullable httpPutResponseHopLimit; /**

IMDSv2 uses token-backed sessions. Set the use of HTTP tokens to optional (in other words, set the use of IMDSv2 to optional) or required (in other words, set the use of IMDSv2 to required).

  • optional - When IMDSv2 is optional, you can choose to retrieve instance metadata with or without a session token in your request. If you retrieve the IAM role credentials without a token, the IMDSv1 role credentials are returned. If you retrieve the IAM role credentials using a valid session token, the IMDSv2 role credentials are returned.

  • required - When IMDSv2 is required, you must send a session token with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.

Default: optional

*/ @property (nonatomic, assign) AWSEC2HttpTokensState httpTokens; /**

Set to enabled to allow access to instance tags from the instance metadata. Set to disabled to turn off access to instance tags from the instance metadata. For more information, see Work with instance tags using the instance metadata.

Default: disabled

*/ @property (nonatomic, assign) AWSEC2InstanceMetadataTagsState instanceMetadataTags; @end /**

The metadata options for the instance.

*/ @interface AWSEC2InstanceMetadataOptionsResponse : AWSModel /**

Indicates whether the HTTP metadata endpoint on your instances is enabled or disabled.

If the value is disabled, you cannot access your instance metadata.

*/ @property (nonatomic, assign) AWSEC2InstanceMetadataEndpointState httpEndpoint; /**

Indicates whether the IPv6 endpoint for the instance metadata service is enabled or disabled.

*/ @property (nonatomic, assign) AWSEC2InstanceMetadataProtocolState httpProtocolIpv6; /**

The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel.

Default: 1

Possible values: Integers from 1 to 64

*/ @property (nonatomic, strong) NSNumber * _Nullable httpPutResponseHopLimit; /**

IMDSv2 uses token-backed sessions. Indicates whether the use of HTTP tokens is optional (in other words, indicates whether the use of IMDSv2 is optional) or required (in other words, indicates whether the use of IMDSv2 is required).

  • optional - When IMDSv2 is optional, you can choose to retrieve instance metadata with or without a session token in your request. If you retrieve the IAM role credentials without a token, the IMDSv1 role credentials are returned. If you retrieve the IAM role credentials using a valid session token, the IMDSv2 role credentials are returned.

  • required - When IMDSv2 is required, you must send a session token with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.

Default: optional

*/ @property (nonatomic, assign) AWSEC2HttpTokensState httpTokens; /**

Indicates whether access to instance tags from the instance metadata is enabled or disabled. For more information, see Work with instance tags using the instance metadata.

*/ @property (nonatomic, assign) AWSEC2InstanceMetadataTagsState instanceMetadataTags; /**

The state of the metadata option changes.

pending - The metadata options are being updated and the instance is not ready to process metadata traffic with the new selection.

applied - The metadata options have been successfully applied on the instance.

*/ @property (nonatomic, assign) AWSEC2InstanceMetadataOptionsState state; @end /**

Describes the monitoring of an instance.

*/ @interface AWSEC2InstanceMonitoring : AWSModel /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The monitoring for the instance.

*/ @property (nonatomic, strong) AWSEC2Monitoring * _Nullable monitoring; @end /**

Describes a network interface.

*/ @interface AWSEC2InstanceNetworkInterface : AWSModel /**

The association information for an Elastic IPv4 associated with the network interface.

*/ @property (nonatomic, strong) AWSEC2InstanceNetworkInterfaceAssociation * _Nullable association; /**

The network interface attachment.

*/ @property (nonatomic, strong) AWSEC2InstanceNetworkInterfaceAttachment * _Nullable attachment; /**

The description.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The type of network interface.

Valid values: interface | efa | trunk

*/ @property (nonatomic, strong) NSString * _Nullable interfaceType; /**

The IPv4 delegated prefixes that are assigned to the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv4Prefixes; /**

The IPv6 addresses associated with the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Addresses; /**

The IPv6 delegated prefixes that are assigned to the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Prefixes; /**

The MAC address.

*/ @property (nonatomic, strong) NSString * _Nullable macAddress; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The ID of the Amazon Web Services account that created the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The private DNS name.

*/ @property (nonatomic, strong) NSString * _Nullable privateDnsName; /**

The IPv4 address of the network interface within the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

The private IPv4 addresses associated with the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddresses; /**

Indicates whether source/destination checking is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable sourceDestCheck; /**

The status of the network interface.

*/ @property (nonatomic, assign) AWSEC2NetworkInterfaceStatus status; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes association information for an Elastic IP address (IPv4).

*/ @interface AWSEC2InstanceNetworkInterfaceAssociation : AWSModel /**

The carrier IP address associated with the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable carrierIp; /**

The customer-owned IP address associated with the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable customerOwnedIp; /**

The ID of the owner of the Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable ipOwnerId; /**

The public DNS name.

*/ @property (nonatomic, strong) NSString * _Nullable publicDnsName; /**

The public IP address or Elastic IP address bound to the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; @end /**

Describes a network interface attachment.

*/ @interface AWSEC2InstanceNetworkInterfaceAttachment : AWSModel /**

The time stamp when the attachment initiated.

*/ @property (nonatomic, strong) NSDate * _Nullable attachTime; /**

The ID of the network interface attachment.

*/ @property (nonatomic, strong) NSString * _Nullable attachmentId; /**

Indicates whether the network interface is deleted when the instance is terminated.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

The index of the device on the instance for the network interface attachment.

*/ @property (nonatomic, strong) NSNumber * _Nullable deviceIndex; /**

The index of the network card.

*/ @property (nonatomic, strong) NSNumber * _Nullable networkCardIndex; /**

The attachment state.

*/ @property (nonatomic, assign) AWSEC2AttachmentStatus status; @end /**

Describes a network interface.

*/ @interface AWSEC2InstanceNetworkInterfaceSpecification : AWSModel /**

Indicates whether to assign a carrier IP address to the network interface.

You can only assign a carrier IP address to a network interface that is in a subnet in a Wavelength Zone. For more information about carrier IP addresses, see Carrier IP address in the Amazon Web Services Wavelength Developer Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable associateCarrierIpAddress; /**

Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true.

*/ @property (nonatomic, strong) NSNumber * _Nullable associatePublicIpAddress; /**

If set to true, the interface is deleted when the instance is terminated. You can specify true only if creating a new network interface when launching an instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

The description of the network interface. Applies only if creating a network interface when launching an instance.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The position of the network interface in the attachment order. A primary network interface has a device index of 0.

If you specify a network interface when launching an instance, you must specify the device index.

*/ @property (nonatomic, strong) NSNumber * _Nullable deviceIndex; /**

The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The type of network interface.

Valid values: interface | efa

*/ @property (nonatomic, strong) NSString * _Nullable interfaceType; /**

The number of IPv4 delegated prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv4Prefix option.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv4PrefixCount; /**

The IPv4 delegated prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv4Prefixes; /**

A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses the IPv6 addresses from the range of the subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6AddressCount; /**

The IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Addresses; /**

The number of IPv6 delegated prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv6Prefix option.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6PrefixCount; /**

The IPv6 delegated prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Prefixes; /**

The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.

If you are using RequestSpotInstances to create Spot Instances, omit this parameter because you can’t specify the network card index when using this API. To specify the network card index, use RunInstances.

*/ @property (nonatomic, strong) NSNumber * _Nullable networkCardIndex; /**

The ID of the network interface.

If you are creating a Spot Fleet, omit this parameter because you can’t specify a network interface ID in a launch specification.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The private IPv4 address of the network interface. Applies only if creating a network interface when launching an instance. You cannot specify this option if you're launching more than one instance in a RunInstances request.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

The private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances request.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddresses; /**

The number of secondary private IPv4 addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're launching more than one instance in a RunInstances request.

*/ @property (nonatomic, strong) NSNumber * _Nullable secondaryPrivateIpAddressCount; /**

The ID of the subnet associated with the network interface. Applies only if creating a network interface when launching an instance.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /**

Describes a private IPv4 address.

*/ @interface AWSEC2InstancePrivateIpAddress : AWSModel /**

The association information for an Elastic IP address for the network interface.

*/ @property (nonatomic, strong) AWSEC2InstanceNetworkInterfaceAssociation * _Nullable association; /**

Indicates whether this IPv4 address is the primary private IP address of the network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable primary; /**

The private IPv4 DNS name.

*/ @property (nonatomic, strong) NSString * _Nullable privateDnsName; /**

The private IPv4 address of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; @end /**

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

  • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.

  • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard or with the RunInstances API, you can't specify InstanceRequirements.

For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

*/ @interface AWSEC2InstanceRequirements : AWSModel /**

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an instance.

To exclude accelerator-enabled instance types, set Max to 0.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2AcceleratorCount * _Nullable acceleratorCount; /**

Indicates whether instance types must have accelerators by specific manufacturers.

  • For instance types with NVIDIA devices, specify nvidia.

  • For instance types with AMD devices, specify amd.

  • For instance types with Amazon Web Services devices, specify amazon-web-services.

  • For instance types with Xilinx devices, specify xilinx.

Default: Any manufacturer

*/ @property (nonatomic, strong) NSArray * _Nullable acceleratorManufacturers; /**

The accelerators that must be on the instance type.

  • For instance types with NVIDIA A100 GPUs, specify a100.

  • For instance types with NVIDIA V100 GPUs, specify v100.

  • For instance types with NVIDIA K80 GPUs, specify k80.

  • For instance types with NVIDIA T4 GPUs, specify t4.

  • For instance types with NVIDIA M60 GPUs, specify m60.

  • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.

  • For instance types with Xilinx VU9P FPGAs, specify vu9p.

  • For instance types with Amazon Web Services Inferentia chips, specify inferentia.

  • For instance types with NVIDIA GRID K520 GPUs, specify k520.

Default: Any accelerator

*/ @property (nonatomic, strong) NSArray * _Nullable acceleratorNames; /**

The minimum and maximum amount of total accelerator memory, in MiB.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2AcceleratorTotalMemoryMiB * _Nullable acceleratorTotalMemoryMiB; /**

The accelerator types that must be on the instance type.

  • For instance types with GPU accelerators, specify gpu.

  • For instance types with FPGA accelerators, specify fpga.

  • For instance types with inference accelerators, specify inference.

Default: Any accelerator type

*/ @property (nonatomic, strong) NSArray * _Nullable acceleratorTypes; /**

The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes.

You can use strings with one or more wild cards, represented by an asterisk (*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*.

For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n instance types.

If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes.

Default: All instance types

*/ @property (nonatomic, strong) NSArray * _Nullable allowedInstanceTypes; /**

Indicates whether bare metal instance types must be included, excluded, or required.

  • To include bare metal instance types, specify included.

  • To require only bare metal instance types, specify required.

  • To exclude bare metal instance types, specify excluded.

Default: excluded

*/ @property (nonatomic, assign) AWSEC2BareMetal bareMetal; /**

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances in the Amazon EC2 User Guide.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2BaselineEbsBandwidthMbps * _Nullable baselineEbsBandwidthMbps; /**

Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see Burstable performance instances.

  • To include burstable performance instance types, specify included.

  • To require only burstable performance instance types, specify required.

  • To exclude burstable performance instance types, specify excluded.

Default: excluded

*/ @property (nonatomic, assign) AWSEC2BurstablePerformance burstablePerformance; /**

The CPU manufacturers to include.

  • For instance types with Intel CPUs, specify intel.

  • For instance types with AMD CPUs, specify amd.

  • For instance types with Amazon Web Services CPUs, specify amazon-web-services.

Don't confuse the CPU manufacturer with the CPU architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template.

Default: Any manufacturer

*/ @property (nonatomic, strong) NSArray * _Nullable cpuManufacturers; /**

The instance types to exclude.

You can use strings with one or more wild cards, represented by an asterisk (*), to exclude an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*.

For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types.

If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes.

Default: No excluded instance types

*/ @property (nonatomic, strong) NSArray * _Nullable excludedInstanceTypes; /**

Indicates whether current or previous generation instance types are included. The current generation instance types are recommended for use. Current generation instance types are typically the latest two to three generations in each instance family. For more information, see Instance types in the Amazon EC2 User Guide.

For current generation instance types, specify current.

For previous generation instance types, specify previous.

Default: Current and previous generation instance types

*/ @property (nonatomic, strong) NSArray * _Nullable instanceGenerations; /**

Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, Amazon EC2 instance store in the Amazon EC2 User Guide.

  • To include instance types with instance store volumes, specify included.

  • To require only instance types with instance store volumes, specify required.

  • To exclude instance types with instance store volumes, specify excluded.

Default: included

*/ @property (nonatomic, assign) AWSEC2LocalStorage localStorage; /**

The type of local storage that is required.

  • For instance types with hard disk drive (HDD) storage, specify hdd.

  • For instance types with solid state drive (SSD) storage, specify ssd.

Default: hdd and ssd

*/ @property (nonatomic, strong) NSArray * _Nullable localStorageTypes; /**

The minimum and maximum amount of memory per vCPU, in GiB.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2MemoryGiBPerVCpu * _Nullable memoryGiBPerVCpu; /**

The minimum and maximum amount of memory, in MiB.

*/ @property (nonatomic, strong) AWSEC2MemoryMiB * _Nullable memoryMiB; /**

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2NetworkBandwidthGbps * _Nullable networkBandwidthGbps; /**

The minimum and maximum number of network interfaces.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2NetworkInterfaceCount * _Nullable networkInterfaceCount; /**

The price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

To turn off price protection, specify a high value, such as 999999.

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.

Default: 20

*/ @property (nonatomic, strong) NSNumber * _Nullable onDemandMaxPricePercentageOverLowestPrice; /**

Indicates whether instance types must support hibernation for On-Demand Instances.

This parameter is not supported for GetSpotPlacementScores.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable requireHibernateSupport; /**

The price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

To turn off price protection, specify a high value, such as 999999.

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.

Default: 100

*/ @property (nonatomic, strong) NSNumber * _Nullable spotMaxPricePercentageOverLowestPrice; /**

The minimum and maximum amount of total local storage, in GB.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2TotalLocalStorageGB * _Nullable totalLocalStorageGB; /**

The minimum and maximum number of vCPUs.

*/ @property (nonatomic, strong) AWSEC2VCpuCountRange * _Nullable VCpuCount; @end /**

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

  • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.

  • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard, or with the RunInstances API or AWS::EC2::Instance Amazon Web Services CloudFormation resource, you can't specify InstanceRequirements.

For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

Required parameters: [VCpuCount, MemoryMiB] */ @interface AWSEC2InstanceRequirementsRequest : AWSModel /**

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an instance.

To exclude accelerator-enabled instance types, set Max to 0.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2AcceleratorCountRequest * _Nullable acceleratorCount; /**

Indicates whether instance types must have accelerators by specific manufacturers.

  • For instance types with NVIDIA devices, specify nvidia.

  • For instance types with AMD devices, specify amd.

  • For instance types with Amazon Web Services devices, specify amazon-web-services.

  • For instance types with Xilinx devices, specify xilinx.

Default: Any manufacturer

*/ @property (nonatomic, strong) NSArray * _Nullable acceleratorManufacturers; /**

The accelerators that must be on the instance type.

  • For instance types with NVIDIA A100 GPUs, specify a100.

  • For instance types with NVIDIA V100 GPUs, specify v100.

  • For instance types with NVIDIA K80 GPUs, specify k80.

  • For instance types with NVIDIA T4 GPUs, specify t4.

  • For instance types with NVIDIA M60 GPUs, specify m60.

  • For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520.

  • For instance types with Xilinx VU9P FPGAs, specify vu9p.

  • For instance types with Amazon Web Services Inferentia chips, specify inferentia.

  • For instance types with NVIDIA GRID K520 GPUs, specify k520.

Default: Any accelerator

*/ @property (nonatomic, strong) NSArray * _Nullable acceleratorNames; /**

The minimum and maximum amount of total accelerator memory, in MiB.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2AcceleratorTotalMemoryMiBRequest * _Nullable acceleratorTotalMemoryMiB; /**

The accelerator types that must be on the instance type.

  • To include instance types with GPU hardware, specify gpu.

  • To include instance types with FPGA hardware, specify fpga.

  • To include instance types with inference hardware, specify inference.

Default: Any accelerator type

*/ @property (nonatomic, strong) NSArray * _Nullable acceleratorTypes; /**

The instance types to apply your specified attributes against. All other instance types are ignored, even if they match your specified attributes.

You can use strings with one or more wild cards, represented by an asterisk (*), to allow an instance type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*.

For example, if you specify c5*,Amazon EC2 will allow the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will allow all the M5a instance types, but not the M5n instance types.

If you specify AllowedInstanceTypes, you can't specify ExcludedInstanceTypes.

Default: All instance types

*/ @property (nonatomic, strong) NSArray * _Nullable allowedInstanceTypes; /**

Indicates whether bare metal instance types must be included, excluded, or required.

  • To include bare metal instance types, specify included.

  • To require only bare metal instance types, specify required.

  • To exclude bare metal instance types, specify excluded.

Default: excluded

*/ @property (nonatomic, assign) AWSEC2BareMetal bareMetal; /**

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instances in the Amazon EC2 User Guide.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2BaselineEbsBandwidthMbpsRequest * _Nullable baselineEbsBandwidthMbps; /**

Indicates whether burstable performance T instance types are included, excluded, or required. For more information, see Burstable performance instances.

  • To include burstable performance instance types, specify included.

  • To require only burstable performance instance types, specify required.

  • To exclude burstable performance instance types, specify excluded.

Default: excluded

*/ @property (nonatomic, assign) AWSEC2BurstablePerformance burstablePerformance; /**

The CPU manufacturers to include.

  • For instance types with Intel CPUs, specify intel.

  • For instance types with AMD CPUs, specify amd.

  • For instance types with Amazon Web Services CPUs, specify amazon-web-services.

Don't confuse the CPU manufacturer with the CPU architecture. Instances will be launched with a compatible CPU architecture based on the Amazon Machine Image (AMI) that you specify in your launch template.

Default: Any manufacturer

*/ @property (nonatomic, strong) NSArray * _Nullable cpuManufacturers; /**

The instance types to exclude.

You can use strings with one or more wild cards, represented by an asterisk (*), to exclude an instance family, type, size, or generation. The following are examples: m5.8xlarge, c5*.*, m5a.*, r*, *3*.

For example, if you specify c5*,Amazon EC2 will exclude the entire C5 instance family, which includes all C5a and C5n instance types. If you specify m5a.*, Amazon EC2 will exclude all the M5a instance types, but not the M5n instance types.

If you specify ExcludedInstanceTypes, you can't specify AllowedInstanceTypes.

Default: No excluded instance types

*/ @property (nonatomic, strong) NSArray * _Nullable excludedInstanceTypes; /**

Indicates whether current or previous generation instance types are included. The current generation instance types are recommended for use. Current generation instance types are typically the latest two to three generations in each instance family. For more information, see Instance types in the Amazon EC2 User Guide.

For current generation instance types, specify current.

For previous generation instance types, specify previous.

Default: Current and previous generation instance types

*/ @property (nonatomic, strong) NSArray * _Nullable instanceGenerations; /**

Indicates whether instance types with instance store volumes are included, excluded, or required. For more information, Amazon EC2 instance store in the Amazon EC2 User Guide.

  • To include instance types with instance store volumes, specify included.

  • To require only instance types with instance store volumes, specify required.

  • To exclude instance types with instance store volumes, specify excluded.

Default: included

*/ @property (nonatomic, assign) AWSEC2LocalStorage localStorage; /**

The type of local storage that is required.

  • For instance types with hard disk drive (HDD) storage, specify hdd.

  • For instance types with solid state drive (SSD) storage, specify ssd.

Default: hdd and ssd

*/ @property (nonatomic, strong) NSArray * _Nullable localStorageTypes; /**

The minimum and maximum amount of memory per vCPU, in GiB.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2MemoryGiBPerVCpuRequest * _Nullable memoryGiBPerVCpu; /**

The minimum and maximum amount of memory, in MiB.

*/ @property (nonatomic, strong) AWSEC2MemoryMiBRequest * _Nullable memoryMiB; /**

The minimum and maximum amount of baseline network bandwidth, in gigabits per second (Gbps). For more information, see Amazon EC2 instance network bandwidth in the Amazon EC2 User Guide.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2NetworkBandwidthGbpsRequest * _Nullable networkBandwidthGbps; /**

The minimum and maximum number of network interfaces.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2NetworkInterfaceCountRequest * _Nullable networkInterfaceCount; /**

The price protection threshold for On-Demand Instances. This is the maximum you’ll pay for an On-Demand Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

To turn off price protection, specify a high value, such as 999999.

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.

Default: 20

*/ @property (nonatomic, strong) NSNumber * _Nullable onDemandMaxPricePercentageOverLowestPrice; /**

Indicates whether instance types must support hibernation for On-Demand Instances.

This parameter is not supported for GetSpotPlacementScores.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable requireHibernateSupport; /**

The price protection threshold for Spot Instance. This is the maximum you’ll pay for an Spot Instance, expressed as a percentage above the least expensive current generation M, C, or R instance type with your specified attributes. When Amazon EC2 selects instance types with your attributes, it excludes instance types priced above your threshold.

The parameter accepts an integer, which Amazon EC2 interprets as a percentage.

To turn off price protection, specify a high value, such as 999999.

This parameter is not supported for GetSpotPlacementScores and GetInstanceTypesFromInstanceRequirements.

If you set TargetCapacityUnitType to vcpu or memory-mib, the price protection threshold is applied based on the per-vCPU or per-memory price instead of the per-instance price.

Default: 100

*/ @property (nonatomic, strong) NSNumber * _Nullable spotMaxPricePercentageOverLowestPrice; /**

The minimum and maximum amount of total local storage, in GB.

Default: No minimum or maximum limits

*/ @property (nonatomic, strong) AWSEC2TotalLocalStorageGBRequest * _Nullable totalLocalStorageGB; /**

The minimum and maximum number of vCPUs.

*/ @property (nonatomic, strong) AWSEC2VCpuCountRangeRequest * _Nullable VCpuCount; @end /**

The architecture type, virtualization type, and other attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

If you specify InstanceRequirementsWithMetadataRequest, you can't specify InstanceTypes.

*/ @interface AWSEC2InstanceRequirementsWithMetadataRequest : AWSModel /**

The architecture type.

*/ @property (nonatomic, strong) NSArray * _Nullable architectureTypes; /**

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

*/ @property (nonatomic, strong) AWSEC2InstanceRequirementsRequest * _Nullable instanceRequirements; /**

The virtualization type.

*/ @property (nonatomic, strong) NSArray * _Nullable virtualizationTypes; @end /**

The instance details to specify which volumes should be snapshotted.

Required parameters: [InstanceId] */ @interface AWSEC2InstanceSpecification : AWSModel /**

Excludes the root volume from being snapshotted.

*/ @property (nonatomic, strong) NSNumber * _Nullable excludeBootVolume; /**

The IDs of the data (non-root) volumes to exclude from the multi-volume snapshot set. If you specify the ID of the root volume, the request fails. To exclude the root volume, use ExcludeBootVolume.

You can specify up to 40 volume IDs per request.

*/ @property (nonatomic, strong) NSArray * _Nullable excludeDataVolumeIds; /**

The instance to specify which volumes should be snapshotted.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /**

Describes the current state of an instance.

*/ @interface AWSEC2InstanceState : AWSModel /**

The state of the instance as a 16-bit unsigned integer.

The high byte is all of the bits between 2^8 and (2^16)-1, which equals decimal values between 256 and 65,535. These numerical values are used for internal purposes and should be ignored.

The low byte is all of the bits between 2^0 and (2^8)-1, which equals decimal values between 0 and 255.

The valid values for instance-state-code will all be in the range of the low byte and they are:

  • 0 : pending

  • 16 : running

  • 32 : shutting-down

  • 48 : terminated

  • 64 : stopping

  • 80 : stopped

You can ignore the high byte value by zeroing out all of the bits above 2^8 or 256 in decimal.

*/ @property (nonatomic, strong) NSNumber * _Nullable code; /**

The current state of the instance.

*/ @property (nonatomic, assign) AWSEC2InstanceStateName name; @end /**

Describes an instance state change.

*/ @interface AWSEC2InstanceStateChange : AWSModel /**

The current state of the instance.

*/ @property (nonatomic, strong) AWSEC2InstanceState * _Nullable currentState; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The previous state of the instance.

*/ @property (nonatomic, strong) AWSEC2InstanceState * _Nullable previousState; @end /**

Describes the status of an instance.

*/ @interface AWSEC2InstanceStatus : AWSModel /**

The Availability Zone of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

Any scheduled events associated with the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable events; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The intended state of the instance. DescribeInstanceStatus requires that an instance be in the running state.

*/ @property (nonatomic, strong) AWSEC2InstanceState * _Nullable instanceState; /**

Reports impaired functionality that stems from issues internal to the instance, such as impaired reachability.

*/ @property (nonatomic, strong) AWSEC2InstanceStatusSummary * _Nullable instanceStatus; /**

The Amazon Resource Name (ARN) of the Outpost.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

Reports impaired functionality that stems from issues related to the systems that support an instance, such as hardware failures and network connectivity problems.

*/ @property (nonatomic, strong) AWSEC2InstanceStatusSummary * _Nullable systemStatus; @end /**

Describes the instance status.

*/ @interface AWSEC2InstanceStatusDetails : AWSModel /**

The time when a status check failed. For an instance that was launched and impaired, this is the time when the instance was launched.

*/ @property (nonatomic, strong) NSDate * _Nullable impairedSince; /**

The type of instance status.

*/ @property (nonatomic, assign) AWSEC2StatusName name; /**

The status.

*/ @property (nonatomic, assign) AWSEC2StatusType status; @end /**

Describes a scheduled event for an instance.

*/ @interface AWSEC2InstanceStatusEvent : AWSModel /**

The event code.

*/ @property (nonatomic, assign) AWSEC2EventCode code; /**

A description of the event.

After a scheduled event is completed, it can still be described for up to a week. If the event has been completed, this description starts with the following text: [Completed].

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the event.

*/ @property (nonatomic, strong) NSString * _Nullable instanceEventId; /**

The latest scheduled end time for the event.

*/ @property (nonatomic, strong) NSDate * _Nullable notAfter; /**

The earliest scheduled start time for the event.

*/ @property (nonatomic, strong) NSDate * _Nullable notBefore; /**

The deadline for starting the event.

*/ @property (nonatomic, strong) NSDate * _Nullable notBeforeDeadline; @end /**

Describes the status of an instance.

*/ @interface AWSEC2InstanceStatusSummary : AWSModel /**

The system instance health or application instance health.

*/ @property (nonatomic, strong) NSArray * _Nullable details; /**

The status.

*/ @property (nonatomic, assign) AWSEC2SummaryStatus status; @end /**

Describes the instance store features that are supported by the instance type.

*/ @interface AWSEC2InstanceStorageInfo : AWSModel /**

Describes the disks that are available for the instance type.

*/ @property (nonatomic, strong) NSArray * _Nullable disks; /**

Indicates whether data is encrypted at rest.

*/ @property (nonatomic, assign) AWSEC2InstanceStorageEncryptionSupport encryptionSupport; /**

Indicates whether non-volatile memory express (NVMe) is supported.

*/ @property (nonatomic, assign) AWSEC2EphemeralNvmeSupport nvmeSupport; /**

The total size of the disks, in GB.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalSizeInGB; @end /**

Describes the registered tag keys for the current Region.

*/ @interface AWSEC2InstanceTagNotificationAttribute : AWSModel /**

Indicates wheter all tag keys in the current Region are registered to appear in scheduled event notifications. true indicates that all tag keys in the current Region are registered.

*/ @property (nonatomic, strong) NSNumber * _Nullable includeAllTagsOfInstance; /**

The registered tag keys.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTagKeys; @end /**

Describes the instance type.

*/ @interface AWSEC2InstanceTypeInfo : AWSModel /**

Indicates whether Amazon CloudWatch action based recovery is supported.

*/ @property (nonatomic, strong) NSNumber * _Nullable autoRecoverySupported; /**

Indicates whether the instance is a bare metal instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable bareMetal; /**

Indicates whether the instance type is a burstable performance T instance type. For more information, see Burstable performance instances.

*/ @property (nonatomic, strong) NSNumber * _Nullable burstablePerformanceSupported; /**

Indicates whether the instance type is current generation.

*/ @property (nonatomic, strong) NSNumber * _Nullable currentGeneration; /**

Indicates whether Dedicated Hosts are supported on the instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable dedicatedHostsSupported; /**

Describes the Amazon EBS settings for the instance type.

*/ @property (nonatomic, strong) AWSEC2EbsInfo * _Nullable ebsInfo; /**

Describes the FPGA accelerator settings for the instance type.

*/ @property (nonatomic, strong) AWSEC2FpgaInfo * _Nullable fpgaInfo; /**

Indicates whether the instance type is eligible for the free tier.

*/ @property (nonatomic, strong) NSNumber * _Nullable freeTierEligible; /**

Describes the GPU accelerator settings for the instance type.

*/ @property (nonatomic, strong) AWSEC2GpuInfo * _Nullable gpuInfo; /**

Indicates whether On-Demand hibernation is supported.

*/ @property (nonatomic, strong) NSNumber * _Nullable hibernationSupported; /**

The hypervisor for the instance type.

*/ @property (nonatomic, assign) AWSEC2InstanceTypeHypervisor hypervisor; /**

Describes the Inference accelerator settings for the instance type.

*/ @property (nonatomic, strong) AWSEC2InferenceAcceleratorInfo * _Nullable inferenceAcceleratorInfo; /**

Describes the instance storage for the instance type.

*/ @property (nonatomic, strong) AWSEC2InstanceStorageInfo * _Nullable instanceStorageInfo; /**

Indicates whether instance storage is supported.

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceStorageSupported; /**

The instance type. For more information, see Instance types in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

Describes the memory for the instance type.

*/ @property (nonatomic, strong) AWSEC2MemoryInfo * _Nullable memoryInfo; /**

Describes the network settings for the instance type.

*/ @property (nonatomic, strong) AWSEC2NetworkInfo * _Nullable networkInfo; /**

Indicates whether Nitro Enclaves is supported.

*/ @property (nonatomic, assign) AWSEC2NitroEnclavesSupport nitroEnclavesSupport; /**

Describes the supported NitroTPM versions for the instance type.

*/ @property (nonatomic, strong) AWSEC2NitroTpmInfo * _Nullable nitroTpmInfo; /**

Indicates whether NitroTPM is supported.

*/ @property (nonatomic, assign) AWSEC2NitroTpmSupport nitroTpmSupport; /**

Describes the placement group settings for the instance type.

*/ @property (nonatomic, strong) AWSEC2PlacementGroupInfo * _Nullable placementGroupInfo; /**

Describes the processor.

*/ @property (nonatomic, strong) AWSEC2ProcessorInfo * _Nullable processorInfo; /**

The supported boot modes. For more information, see Boot modes in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable supportedBootModes; /**

The supported root device types.

*/ @property (nonatomic, strong) NSArray * _Nullable supportedRootDeviceTypes; /**

Indicates whether the instance type is offered for spot or On-Demand.

*/ @property (nonatomic, strong) NSArray * _Nullable supportedUsageClasses; /**

The supported virtualization types.

*/ @property (nonatomic, strong) NSArray * _Nullable supportedVirtualizationTypes; /**

Describes the vCPU configurations for the instance type.

*/ @property (nonatomic, strong) AWSEC2VCpuInfo * _Nullable VCpuInfo; @end /**

The list of instance types with the specified instance attributes.

*/ @interface AWSEC2InstanceTypeInfoFromInstanceRequirements : AWSModel /**

The matching instance type.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; @end /**

The instance types offered.

*/ @interface AWSEC2InstanceTypeOffering : AWSModel /**

The instance type. For more information, see Instance types in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The identifier for the location. This depends on the location type. For example, if the location type is region, the location is the Region code (for example, us-east-2.)

*/ @property (nonatomic, strong) NSString * _Nullable location; /**

The location type.

*/ @property (nonatomic, assign) AWSEC2LocationType locationType; @end /**

Information about the Capacity Reservation usage.

*/ @interface AWSEC2InstanceUsage : AWSModel /**

The ID of the Amazon Web Services account that is making use of the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable accountId; /**

The number of instances the Amazon Web Services account currently has in the Capacity Reservation.

*/ @property (nonatomic, strong) NSNumber * _Nullable usedInstanceCount; @end /**

Describes service integrations with VPC Flow logs.

*/ @interface AWSEC2IntegrateServices : AWSModel /**

Information about the integration with Amazon Athena.

*/ @property (nonatomic, strong) NSArray * _Nullable athenaIntegrations; @end /**

Describes an internet gateway.

*/ @interface AWSEC2InternetGateway : AWSModel /**

Any VPCs attached to the internet gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable attachments; /**

The ID of the internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable internetGatewayId; /**

The ID of the Amazon Web Services account that owns the internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

Any tags assigned to the internet gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes the attachment of a VPC to an internet gateway or an egress-only internet gateway.

*/ @interface AWSEC2InternetGatewayAttachment : AWSModel /**

The current state of the attachment. For an internet gateway, the state is available when attached to a VPC; otherwise, this value is not returned.

*/ @property (nonatomic, assign) AWSEC2AttachmentStatus state; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes a set of permissions for a security group rule.

*/ @interface AWSEC2IpPermission : AWSModel /**

If the protocol is TCP or UDP, this is the start of the port range. If the protocol is ICMP or ICMPv6, this is the type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv6 codes.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The IP protocol name (tcp, udp, icmp, icmpv6) or number (see Protocol Numbers).

Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed.

*/ @property (nonatomic, strong) NSString * _Nullable ipProtocol; /**

The IPv4 ranges.

*/ @property (nonatomic, strong) NSArray * _Nullable ipRanges; /**

The IPv6 ranges.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Ranges; /**

The prefix list IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable prefixListIds; /**

If the protocol is TCP or UDP, this is the end of the port range. If the protocol is ICMP or ICMPv6, this is the code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv6 codes.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; /**

The security group and Amazon Web Services account ID pairs.

*/ @property (nonatomic, strong) NSArray * _Nullable userIdGroupPairs; @end /**

Describes an IPv4 range.

*/ @interface AWSEC2IpRange : AWSModel /**

The IPv4 CIDR range. You can either specify a CIDR range or a source security group, not both. To specify a single IPv4 address, use the /32 prefix length.

*/ @property (nonatomic, strong) NSString * _Nullable cidrIp; /**

A description for the security group rule that references this IPv4 address range.

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

*/ @property (nonatomic, strong) NSString * _Nullable detail; @end /**

IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts throughout your Amazon Web Services Organization. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.

*/ @interface AWSEC2Ipam : AWSModel /**

The IPAM's default resource discovery association ID.

*/ @property (nonatomic, strong) NSString * _Nullable defaultResourceDiscoveryAssociationId; /**

The IPAM's default resource discovery ID.

*/ @property (nonatomic, strong) NSString * _Nullable defaultResourceDiscoveryId; /**

The description for the IPAM.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The Amazon Resource Name (ARN) of the IPAM.

*/ @property (nonatomic, strong) NSString * _Nullable ipamArn; /**

The ID of the IPAM.

*/ @property (nonatomic, strong) NSString * _Nullable ipamId; /**

The Amazon Web Services Region of the IPAM.

*/ @property (nonatomic, strong) NSString * _Nullable ipamRegion; /**

The operating Regions for an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable operatingRegions; /**

The Amazon Web Services account ID of the owner of the IPAM.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The ID of the IPAM's default private scope.

*/ @property (nonatomic, strong) NSString * _Nullable privateDefaultScopeId; /**

The ID of the IPAM's default public scope.

*/ @property (nonatomic, strong) NSString * _Nullable publicDefaultScopeId; /**

The IPAM's resource discovery association count.

*/ @property (nonatomic, strong) NSNumber * _Nullable resourceDiscoveryAssociationCount; /**

The number of scopes in the IPAM. The scope quota is 5. For more information on quotas, see Quotas in IPAM in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable scopeCount; /**

The state of the IPAM.

*/ @property (nonatomic, assign) AWSEC2IpamState state; /**

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

The historical record of a CIDR within an IPAM scope. For more information, see View the history of IP addresses in the Amazon VPC IPAM User Guide.

*/ @interface AWSEC2IpamAddressHistoryRecord : AWSModel /**

The CIDR of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceCidr; /**

The compliance status of a resource. For more information on compliance statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, assign) AWSEC2IpamComplianceStatus resourceComplianceStatus; /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The name of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceName; /**

The overlap status of an IPAM resource. The overlap status tells you if the CIDR for a resource overlaps with another CIDR in the scope. For more information on overlap statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, assign) AWSEC2IpamOverlapStatus resourceOverlapStatus; /**

The ID of the resource owner.

*/ @property (nonatomic, strong) NSString * _Nullable resourceOwnerId; /**

The Amazon Web Services Region of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceRegion; /**

The type of the resource.

*/ @property (nonatomic, assign) AWSEC2IpamAddressHistoryResourceType resourceType; /**

Sampled end time of the resource-to-CIDR association within the IPAM scope. Changes are picked up in periodic snapshots, so the end time may have occurred before this specific time.

*/ @property (nonatomic, strong) NSDate * _Nullable sampledEndTime; /**

Sampled start time of the resource-to-CIDR association within the IPAM scope. Changes are picked up in periodic snapshots, so the start time may have occurred before this specific time.

*/ @property (nonatomic, strong) NSDate * _Nullable sampledStartTime; /**

The VPC ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP.

*/ @interface AWSEC2IpamCidrAuthorizationContext : AWSModel /**

The plain-text authorization message for the prefix and account.

*/ @property (nonatomic, strong) NSString * _Nullable message; /**

The signed authorization message for the prefix and account.

*/ @property (nonatomic, strong) NSString * _Nullable signature; @end /**

An IPAM discovered account. A discovered account is an Amazon Web Services account that is monitored under a resource discovery. If you have integrated IPAM with Amazon Web Services Organizations, all accounts in the organization are discovered accounts.

*/ @interface AWSEC2IpamDiscoveredAccount : AWSModel /**

The account ID.

*/ @property (nonatomic, strong) NSString * _Nullable accountId; /**

The Amazon Web Services Region that the account information is returned from. An account can be discovered in multiple regions and will have a separate discovered account for each Region.

*/ @property (nonatomic, strong) NSString * _Nullable discoveryRegion; /**

The resource discovery failure reason.

*/ @property (nonatomic, strong) AWSEC2IpamDiscoveryFailureReason * _Nullable failureReason; /**

The last attempted resource discovery time.

*/ @property (nonatomic, strong) NSDate * _Nullable lastAttemptedDiscoveryTime; /**

The last successful resource discovery time.

*/ @property (nonatomic, strong) NSDate * _Nullable lastSuccessfulDiscoveryTime; @end /**

An IPAM discovered resource CIDR. A discovered resource is a resource CIDR monitored under a resource discovery. The following resources can be discovered: VPCs, Public IPv4 pools, VPC subnets, and Elastic IP addresses. The discovered resource CIDR is the IP address range in CIDR notation that is associated with the resource.

*/ @interface AWSEC2IpamDiscoveredResourceCidr : AWSModel /**

The percentage of IP address space in use. To convert the decimal to a percentage, multiply the decimal by 100. Note the following:

  • For resources that are VPCs, this is the percentage of IP address space in the VPC that's taken up by subnet CIDRs.

  • For resources that are subnets, if the subnet has an IPv4 CIDR provisioned to it, this is the percentage of IPv4 address space in the subnet that's in use. If the subnet has an IPv6 CIDR provisioned to it, the percentage of IPv6 address space in use is not represented. The percentage of IPv6 address space in use cannot currently be calculated.

  • For resources that are public IPv4 pools, this is the percentage of IP address space in the pool that's been allocated to Elastic IP addresses (EIPs).

*/ @property (nonatomic, strong) NSNumber * _Nullable ipUsage; /**

The resource discovery ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryId; /**

The resource CIDR.

*/ @property (nonatomic, strong) NSString * _Nullable resourceCidr; /**

The resource ID.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The resource owner ID.

*/ @property (nonatomic, strong) NSString * _Nullable resourceOwnerId; /**

The resource Region.

*/ @property (nonatomic, strong) NSString * _Nullable resourceRegion; /**

The resource tags.

*/ @property (nonatomic, strong) NSArray * _Nullable resourceTags; /**

The resource type.

*/ @property (nonatomic, assign) AWSEC2IpamResourceType resourceType; /**

The last successful resource discovery time.

*/ @property (nonatomic, strong) NSDate * _Nullable sampleTime; /**

The VPC ID.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

The discovery failure reason.

*/ @interface AWSEC2IpamDiscoveryFailureReason : AWSModel /**

The discovery failure code.

  • assume-role-failure - IPAM could not assume the Amazon Web Services IAM service-linked role. This could be because of any of the following:

    • SLR has not been created yet and IPAM is still creating it.

    • You have opted-out of the IPAM home Region.

    • Account you are using as your IPAM account has been suspended.

  • throttling-failure - IPAM account is already using the allotted transactions per second and IPAM is receiving a throttling error when assuming the Amazon Web Services IAM SLR.

  • unauthorized-failure - Amazon Web Services account making the request is not authorized. For more information, see AuthFailure in the Amazon Elastic Compute Cloud API Reference.

*/ @property (nonatomic, assign) AWSEC2IpamDiscoveryFailureCode code; /**

The discovery failure message.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

The operating Regions for an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

*/ @interface AWSEC2IpamOperatingRegion : AWSModel /**

The name of the operating Region.

*/ @property (nonatomic, strong) NSString * _Nullable regionName; @end /**

In IPAM, a pool is a collection of contiguous IP addresses CIDRs. Pools enable you to organize your IP addresses according to your routing and security needs. For example, if you have separate routing and security needs for development and production applications, you can create a pool for each.

*/ @interface AWSEC2IpamPool : AWSModel /**

The address family of the pool.

*/ @property (nonatomic, assign) AWSEC2AddressFamily addressFamily; /**

The default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is 10.0.0.0/8 and you enter 16 here, new allocations will default to 10.0.0.0/16.

*/ @property (nonatomic, strong) NSNumber * _Nullable allocationDefaultNetmaskLength; /**

The maximum netmask length possible for CIDR allocations in this IPAM pool to be compliant. The maximum netmask length must be greater than the minimum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

*/ @property (nonatomic, strong) NSNumber * _Nullable allocationMaxNetmaskLength; /**

The minimum netmask length required for CIDR allocations in this IPAM pool to be compliant. The minimum netmask length must be less than the maximum netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.

*/ @property (nonatomic, strong) NSNumber * _Nullable allocationMinNetmaskLength; /**

Tags that are required for resources that use CIDRs from this IPAM pool. Resources that do not have these tags will not be allowed to allocate space from the pool. If the resources have their tags changed after they have allocated space or if the allocation tagging requirements are changed on the pool, the resource may be marked as noncompliant.

*/ @property (nonatomic, strong) NSArray * _Nullable allocationResourceTags; /**

If selected, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM. The CIDRs that will be allocated for these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.

A locale must be set on the pool for this feature to work.

*/ @property (nonatomic, strong) NSNumber * _Nullable autoImport; /**

Limits which service in Amazon Web Services that the pool can be used in. "ec2", for example, allows users to use space for Elastic IP addresses and VPCs.

*/ @property (nonatomic, assign) AWSEC2IpamPoolAwsService awsService; /**

The description of the IPAM pool.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ARN of the IPAM.

*/ @property (nonatomic, strong) NSString * _Nullable ipamArn; /**

The Amazon Resource Name (ARN) of the IPAM pool.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolArn; /**

The ID of the IPAM pool.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; /**

The Amazon Web Services Region of the IPAM pool.

*/ @property (nonatomic, strong) NSString * _Nullable ipamRegion; /**

The ARN of the scope of the IPAM pool.

*/ @property (nonatomic, strong) NSString * _Nullable ipamScopeArn; /**

In IPAM, a scope is the highest-level container within IPAM. An IPAM contains two default scopes. Each scope represents the IP space for a single network. The private scope is intended for all private IP address space. The public scope is intended for all public IP address space. Scopes enable you to reuse IP addresses across multiple unconnected networks without causing IP address overlap or conflict.

*/ @property (nonatomic, assign) AWSEC2IpamScopeType ipamScopeType; /**

The locale of the IPAM pool. In IPAM, the locale is the Amazon Web Services Region where you want to make an IPAM pool available for allocations. Only resources in the same Region as the locale of the pool can get IP address allocations from the pool. You can only allocate a CIDR for a VPC, for example, from an IPAM pool that shares a locale with the VPC’s Region. Note that once you choose a Locale for a pool, you cannot modify it. If you choose an Amazon Web Services Region for locale that has not been configured as an operating Region for the IPAM, you'll get an error.

*/ @property (nonatomic, strong) NSString * _Nullable locale; /**

The Amazon Web Services account ID of the owner of the IPAM pool.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The depth of pools in your IPAM pool. The pool depth quota is 10. For more information, see Quotas in IPAM in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable poolDepth; /**

The IP address source for pools in the public scope. Only used for provisioning IP address CIDRs to pools in the public scope. Default is BYOIP. For more information, see Create IPv6 pools in the Amazon VPC IPAM User Guide. By default, you can add only one Amazon-provided IPv6 CIDR block to a top-level IPv6 pool. For information on increasing the default limit, see Quotas for your IPAM in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, assign) AWSEC2IpamPoolPublicIpSource publicIpSource; /**

Determines if a pool is publicly advertisable. This option is not available for pools with AddressFamily set to ipv4.

*/ @property (nonatomic, strong) NSNumber * _Nullable publiclyAdvertisable; /**

The ID of the source IPAM pool. You can use this option to create an IPAM pool within an existing source pool.

*/ @property (nonatomic, strong) NSString * _Nullable sourceIpamPoolId; /**

The state of the IPAM pool.

*/ @property (nonatomic, assign) AWSEC2IpamPoolState state; /**

A message related to the failed creation of an IPAM pool.

*/ @property (nonatomic, strong) NSString * _Nullable stateMessage; /**

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

In IPAM, an allocation is a CIDR assignment from an IPAM pool to another IPAM pool or to a resource.

*/ @interface AWSEC2IpamPoolAllocation : AWSModel /**

The CIDR for the allocation. A CIDR is a representation of an IP address and its associated network mask (or netmask) and refers to a range of IP addresses. An IPv4 CIDR example is 10.24.34.0/23. An IPv6 CIDR example is 2001:DB8::/32.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

A description of the pool allocation.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of an allocation.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolAllocationId; /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The owner of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceOwner; /**

The Amazon Web Services Region of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceRegion; /**

The type of the resource.

*/ @property (nonatomic, assign) AWSEC2IpamPoolAllocationResourceType resourceType; @end /**

A CIDR provisioned to an IPAM pool.

*/ @interface AWSEC2IpamPoolCidr : AWSModel /**

The CIDR provisioned to the IPAM pool. A CIDR is a representation of an IP address and its associated network mask (or netmask) and refers to a range of IP addresses. An IPv4 CIDR example is 10.24.34.0/23. An IPv6 CIDR example is 2001:DB8::/32.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

Details related to why an IPAM pool CIDR failed to be provisioned.

*/ @property (nonatomic, strong) AWSEC2IpamPoolCidrFailureReason * _Nullable failureReason; /**

The IPAM pool CIDR ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolCidrId; /**

The netmask length of the CIDR you'd like to provision to a pool. Can be used for provisioning Amazon-provided IPv6 CIDRs to top-level pools and for provisioning CIDRs to pools with source pools. Cannot be used to provision BYOIP CIDRs to top-level pools. "NetmaskLength" or "Cidr" is required.

*/ @property (nonatomic, strong) NSNumber * _Nullable netmaskLength; /**

The state of the CIDR.

*/ @property (nonatomic, assign) AWSEC2IpamPoolCidrState state; @end /**

Details related to why an IPAM pool CIDR failed to be provisioned.

*/ @interface AWSEC2IpamPoolCidrFailureReason : AWSModel /**

An error code related to why an IPAM pool CIDR failed to be provisioned.

*/ @property (nonatomic, assign) AWSEC2IpamPoolCidrFailureCode code; /**

A message related to why an IPAM pool CIDR failed to be provisioned.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

The CIDR for an IPAM resource.

*/ @interface AWSEC2IpamResourceCidr : AWSModel /**

The compliance status of the IPAM resource. For more information on compliance statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, assign) AWSEC2IpamComplianceStatus complianceStatus; /**

The percentage of IP address space in use. To convert the decimal to a percentage, multiply the decimal by 100. Note the following:

  • For resources that are VPCs, this is the percentage of IP address space in the VPC that's taken up by subnet CIDRs.

  • For resources that are subnets, if the subnet has an IPv4 CIDR provisioned to it, this is the percentage of IPv4 address space in the subnet that's in use. If the subnet has an IPv6 CIDR provisioned to it, the percentage of IPv6 address space in use is not represented. The percentage of IPv6 address space in use cannot currently be calculated.

  • For resources that are public IPv4 pools, this is the percentage of IP address space in the pool that's been allocated to Elastic IP addresses (EIPs).

*/ @property (nonatomic, strong) NSNumber * _Nullable ipUsage; /**

The IPAM ID for an IPAM resource.

*/ @property (nonatomic, strong) NSString * _Nullable ipamId; /**

The pool ID for an IPAM resource.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; /**

The scope ID for an IPAM resource.

*/ @property (nonatomic, strong) NSString * _Nullable ipamScopeId; /**

The management state of the resource. For more information about management states, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, assign) AWSEC2IpamManagementState managementState; /**

The overlap status of an IPAM resource. The overlap status tells you if the CIDR for a resource overlaps with another CIDR in the scope. For more information on overlap statuses, see Monitor CIDR usage by resource in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, assign) AWSEC2IpamOverlapStatus overlapStatus; /**

The CIDR for an IPAM resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceCidr; /**

The ID of an IPAM resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The name of an IPAM resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceName; /**

The Amazon Web Services account number of the owner of an IPAM resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceOwnerId; /**

The Amazon Web Services Region for an IPAM resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceRegion; /**

The tags for an IPAM resource.

*/ @property (nonatomic, strong) NSArray * _Nullable resourceTags; /**

The type of IPAM resource.

*/ @property (nonatomic, assign) AWSEC2IpamResourceType resourceType; /**

The ID of a VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

*/ @interface AWSEC2IpamResourceDiscovery : AWSModel /**

The resource discovery description.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The resource discovery Amazon Resource Name (ARN).

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryArn; /**

The resource discovery ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryId; /**

The resource discovery Region.

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryRegion; /**

Defines if the resource discovery is the default. The default resource discovery is the resource discovery automatically created when you create an IPAM.

*/ @property (nonatomic, strong) NSNumber * _Nullable isDefault; /**

The operating Regions for the resource discovery. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

*/ @property (nonatomic, strong) NSArray * _Nullable operatingRegions; /**

The ID of the owner.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The lifecycle state of the resource discovery.

  • create-in-progress - Resource discovery is being created.

  • create-complete - Resource discovery creation is complete.

  • create-failed - Resource discovery creation has failed.

  • modify-in-progress - Resource discovery is being modified.

  • modify-complete - Resource discovery modification is complete.

  • modify-failed - Resource discovery modification has failed.

  • delete-in-progress - Resource discovery is being deleted.

  • delete-complete - Resource discovery deletion is complete.

  • delete-failed - Resource discovery deletion has failed.

  • isolate-in-progress - Amazon Web Services account that created the resource discovery has been removed and the resource discovery is being isolated.

  • isolate-complete - Resource discovery isolation is complete.

  • restore-in-progress - Amazon Web Services account that created the resource discovery and was isolated has been restored.

*/ @property (nonatomic, assign) AWSEC2IpamResourceDiscoveryState state; /**

A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key and an optional value. You can use tags to search and filter your resources or track your Amazon Web Services costs.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

An IPAM resource discovery association. An associated resource discovery is a resource discovery that has been associated with an IPAM. IPAM aggregates the resource CIDRs discovered by the associated resource discovery.

*/ @interface AWSEC2IpamResourceDiscoveryAssociation : AWSModel /**

The IPAM ARN.

*/ @property (nonatomic, strong) NSString * _Nullable ipamArn; /**

The IPAM ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamId; /**

The IPAM home Region.

*/ @property (nonatomic, strong) NSString * _Nullable ipamRegion; /**

The resource discovery association Amazon Resource Name (ARN).

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryAssociationArn; /**

The resource discovery association ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryAssociationId; /**

The resource discovery ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryId; /**

Defines if the resource discovery is the default. When you create an IPAM, a default resource discovery is created for your IPAM and it's associated with your IPAM.

*/ @property (nonatomic, strong) NSNumber * _Nullable isDefault; /**

The Amazon Web Services account ID of the resource discovery owner.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The resource discovery status.

  • active - Connection or permissions required to read the results of the resource discovery are intact.

  • not-found - Connection or permissions required to read the results of the resource discovery are broken. This may happen if the owner of the resource discovery stopped sharing it or deleted the resource discovery. Verify the resource discovery still exists and the Amazon Web Services RAM resource share is still intact.

*/ @property (nonatomic, assign) AWSEC2IpamAssociatedResourceDiscoveryStatus resourceDiscoveryStatus; /**

The lifecycle state of the association when you associate or disassociate a resource discovery.

  • associate-in-progress - Resource discovery is being associated.

  • associate-complete - Resource discovery association is complete.

  • associate-failed - Resource discovery association has failed.

  • disassociate-in-progress - Resource discovery is being disassociated.

  • disassociate-complete - Resource discovery disassociation is complete.

  • disassociate-failed - Resource discovery disassociation has failed.

  • isolate-in-progress - Amazon Web Services account that created the resource discovery association has been removed and the resource discovery associatation is being isolated.

  • isolate-complete - Resource discovery isolation is complete..

  • restore-in-progress - Resource discovery is being restored.

*/ @property (nonatomic, assign) AWSEC2IpamResourceDiscoveryAssociationState state; /**

A tag is a label that you assign to an Amazon Web Services resource. Each tag consists of a key and an optional value. You can use tags to search and filter your resources or track your Amazon Web Services costs.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

*/ @interface AWSEC2IpamResourceTag : AWSModel /**

The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSString * _Nullable key; /**

The value of the tag.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

In IPAM, a scope is the highest-level container within IPAM. An IPAM contains two default scopes. Each scope represents the IP space for a single network. The private scope is intended for all private IP address space. The public scope is intended for all public IP address space. Scopes enable you to reuse IP addresses across multiple unconnected networks without causing IP address overlap or conflict.

For more information, see How IPAM works in the Amazon VPC IPAM User Guide.

*/ @interface AWSEC2IpamScope : AWSModel /**

The description of the scope.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ARN of the IPAM.

*/ @property (nonatomic, strong) NSString * _Nullable ipamArn; /**

The Amazon Web Services Region of the IPAM scope.

*/ @property (nonatomic, strong) NSString * _Nullable ipamRegion; /**

The Amazon Resource Name (ARN) of the scope.

*/ @property (nonatomic, strong) NSString * _Nullable ipamScopeArn; /**

The ID of the scope.

*/ @property (nonatomic, strong) NSString * _Nullable ipamScopeId; /**

The type of the scope.

*/ @property (nonatomic, assign) AWSEC2IpamScopeType ipamScopeType; /**

Defines if the scope is the default scope or not.

*/ @property (nonatomic, strong) NSNumber * _Nullable isDefault; /**

The Amazon Web Services account ID of the owner of the scope.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The number of pools in the scope.

*/ @property (nonatomic, strong) NSNumber * _Nullable poolCount; /**

The state of the IPAM scope.

*/ @property (nonatomic, assign) AWSEC2IpamScopeState state; /**

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes an IPv4 prefix.

*/ @interface AWSEC2Ipv4PrefixSpecification : AWSModel /**

The IPv4 prefix. For information, see Assigning prefixes to Amazon EC2 network interfaces in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable ipv4Prefix; @end /**

Describes the IPv4 prefix option for a network interface.

*/ @interface AWSEC2Ipv4PrefixSpecificationRequest : AWSModel /**

The IPv4 prefix. For information, see Assigning prefixes to Amazon EC2 network interfaces in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable ipv4Prefix; @end /**

Information about the IPv4 delegated prefixes assigned to a network interface.

*/ @interface AWSEC2Ipv4PrefixSpecificationResponse : AWSModel /**

The IPv4 delegated prefixes assigned to the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable ipv4Prefix; @end /**

Describes an IPv6 CIDR block association.

*/ @interface AWSEC2Ipv6CidrAssociation : AWSModel /**

The resource that's associated with the IPv6 CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable associatedResource; /**

The IPv6 CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Cidr; @end /**

Describes an IPv6 CIDR block.

*/ @interface AWSEC2Ipv6CidrBlock : AWSModel /**

The IPv6 CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlock; @end /**

Describes an IPv6 address pool.

*/ @interface AWSEC2Ipv6Pool : AWSModel /**

The description for the address pool.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The CIDR blocks for the address pool.

*/ @property (nonatomic, strong) NSArray * _Nullable poolCidrBlocks; /**

The ID of the address pool.

*/ @property (nonatomic, strong) NSString * _Nullable poolId; /**

Any tags for the address pool.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes the IPv6 prefix.

*/ @interface AWSEC2Ipv6PrefixSpecification : AWSModel /**

The IPv6 prefix.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Prefix; @end /**

Describes the IPv4 prefix option for a network interface.

*/ @interface AWSEC2Ipv6PrefixSpecificationRequest : AWSModel /**

The IPv6 prefix.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Prefix; @end /**

Information about the IPv6 delegated prefixes assigned to a network interface.

*/ @interface AWSEC2Ipv6PrefixSpecificationResponse : AWSModel /**

The IPv6 delegated prefixes assigned to the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Prefix; @end /**

Describes an IPv6 range.

*/ @interface AWSEC2Ipv6Range : AWSModel /**

The IPv6 CIDR range. You can either specify a CIDR range or a source security group, not both. To specify a single IPv6 address, use the /128 prefix length.

*/ @property (nonatomic, strong) NSString * _Nullable cidrIpv6; /**

A description for the security group rule that references this IPv6 address range.

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*

*/ @property (nonatomic, strong) NSString * _Nullable detail; @end /**

Describes a key pair.

*/ @interface AWSEC2KeyPair : AWSModel /**
  • For RSA key pairs, the key fingerprint is the SHA-1 digest of the DER encoded private key.

  • For ED25519 key pairs, the key fingerprint is the base64-encoded SHA-256 digest, which is the default for OpenSSH, starting with OpenSSH 6.8.

*/ @property (nonatomic, strong) NSString * _Nullable keyFingerprint; /**

An unencrypted PEM encoded RSA or ED25519 private key.

*/ @property (nonatomic, strong) NSString * _Nullable keyMaterial; /**

The name of the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

The ID of the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyPairId; /**

Any tags applied to the key pair.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes a key pair.

*/ @interface AWSEC2KeyPairInfo : AWSModel /**

If you used Amazon EC2 to create the key pair, this is the date and time when the key was created, in ISO 8601 date-time format, in the UTC time zone.

If you imported an existing key pair to Amazon EC2, this is the date and time the key was imported, in ISO 8601 date-time format, in the UTC time zone.

*/ @property (nonatomic, strong) NSDate * _Nullable createTime; /**

If you used CreateKeyPair to create the key pair:

  • For RSA key pairs, the key fingerprint is the SHA-1 digest of the DER encoded private key.

  • For ED25519 key pairs, the key fingerprint is the base64-encoded SHA-256 digest, which is the default for OpenSSH, starting with OpenSSH 6.8.

If you used ImportKeyPair to provide Amazon Web Services the public key:

  • For RSA key pairs, the key fingerprint is the MD5 public key fingerprint as specified in section 4 of RFC4716.

  • For ED25519 key pairs, the key fingerprint is the base64-encoded SHA-256 digest, which is the default for OpenSSH, starting with OpenSSH 6.8.

*/ @property (nonatomic, strong) NSString * _Nullable keyFingerprint; /**

The name of the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

The ID of the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyPairId; /**

The type of key pair.

*/ @property (nonatomic, assign) AWSEC2KeyType keyType; /**

The public key material.

*/ @property (nonatomic, strong) NSString * _Nullable publicKey; /**

Any tags applied to the key pair.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

The last error that occurred for a VPC endpoint.

*/ @interface AWSEC2LastError : AWSModel /**

The error code for the VPC endpoint error.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

The error message for the VPC endpoint error.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes a launch permission.

*/ @interface AWSEC2LaunchPermission : AWSModel /**

The name of the group.

*/ @property (nonatomic, assign) AWSEC2PermissionGroup group; /**

The Amazon Resource Name (ARN) of an organization.

*/ @property (nonatomic, strong) NSString * _Nullable organizationArn; /**

The Amazon Resource Name (ARN) of an organizational unit (OU).

*/ @property (nonatomic, strong) NSString * _Nullable organizationalUnitArn; /**

The Amazon Web Services account ID.

Constraints: Up to 10 000 account IDs can be specified in a single request.

*/ @property (nonatomic, strong) NSString * _Nullable userId; @end /**

Describes a launch permission modification.

*/ @interface AWSEC2LaunchPermissionModifications : AWSModel /**

The Amazon Web Services account ID, organization ARN, or OU ARN to add to the list of launch permissions for the AMI.

*/ @property (nonatomic, strong) NSArray * _Nullable add; /**

The Amazon Web Services account ID, organization ARN, or OU ARN to remove from the list of launch permissions for the AMI.

*/ @property (nonatomic, strong) NSArray * _Nullable remove; @end /**

Describes the launch specification for an instance.

*/ @interface AWSEC2LaunchSpecification : AWSModel /**

Deprecated.

*/ @property (nonatomic, strong) NSString * _Nullable addressingType; /**

The block device mapping entries.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

The IAM instance profile.

*/ @property (nonatomic, strong) AWSEC2IamInstanceProfileSpecification * _Nullable iamInstanceProfile; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The instance type. Only one instance type can be specified.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The ID of the kernel.

*/ @property (nonatomic, strong) NSString * _Nullable kernelId; /**

The name of the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

Describes the monitoring of an instance.

*/ @property (nonatomic, strong) AWSEC2RunInstancesMonitoringEnabled * _Nullable monitoring; /**

The network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaces; /**

The placement information for the instance.

*/ @property (nonatomic, strong) AWSEC2SpotPlacement * _Nullable placement; /**

The ID of the RAM disk.

*/ @property (nonatomic, strong) NSString * _Nullable ramdiskId; /**

The IDs of the security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroups; /**

The ID of the subnet in which to launch the instance.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.

*/ @property (nonatomic, strong) NSString * _Nullable userData; @end /**

Describes a launch template.

*/ @interface AWSEC2LaunchTemplate : AWSModel /**

The time launch template was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createTime; /**

The principal that created the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable createdBy; /**

The version number of the default version of the launch template.

*/ @property (nonatomic, strong) NSNumber * _Nullable defaultVersionNumber; /**

The version number of the latest version of the launch template.

*/ @property (nonatomic, strong) NSNumber * _Nullable latestVersionNumber; /**

The ID of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

The tags for the launch template.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes a launch template and overrides.

*/ @interface AWSEC2LaunchTemplateAndOverridesResponse : AWSModel /**

The launch template.

*/ @property (nonatomic, strong) AWSEC2FleetLaunchTemplateSpecification * _Nullable launchTemplateSpecification; /**

Any parameters that you specify override the same parameters in the launch template.

*/ @property (nonatomic, strong) AWSEC2FleetLaunchTemplateOverrides * _Nullable overrides; @end /**

Describes a block device mapping.

*/ @interface AWSEC2LaunchTemplateBlockDeviceMapping : AWSModel /**

The device name.

*/ @property (nonatomic, strong) NSString * _Nullable deviceName; /**

Information about the block device for an EBS volume.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateEbsBlockDevice * _Nullable ebs; /**

To omit the device from the block device mapping, specify an empty string.

*/ @property (nonatomic, strong) NSString * _Nullable noDevice; /**

The virtual device name (ephemeralN).

*/ @property (nonatomic, strong) NSString * _Nullable virtualName; @end /**

Describes a block device mapping.

*/ @interface AWSEC2LaunchTemplateBlockDeviceMappingRequest : AWSModel /**

The device name (for example, /dev/sdh or xvdh).

*/ @property (nonatomic, strong) NSString * _Nullable deviceName; /**

Parameters used to automatically set up EBS volumes when the instance is launched.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateEbsBlockDeviceRequest * _Nullable ebs; /**

To omit the device from the block device mapping, specify an empty string.

*/ @property (nonatomic, strong) NSString * _Nullable noDevice; /**

The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

*/ @property (nonatomic, strong) NSString * _Nullable virtualName; @end /**

Describes an instance's Capacity Reservation targeting option. You can specify only one option at a time. Use the CapacityReservationPreference parameter to configure the instance to run in On-Demand capacity or to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). Use the CapacityReservationTarget parameter to explicitly target a specific Capacity Reservation or a Capacity Reservation group.

*/ @interface AWSEC2LaunchTemplateCapacityReservationSpecificationRequest : AWSModel /**

Indicates the instance's Capacity Reservation preferences. Possible preferences include:

  • open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).

  • none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationPreference capacityReservationPreference; /**

Information about the target Capacity Reservation or Capacity Reservation group.

*/ @property (nonatomic, strong) AWSEC2CapacityReservationTarget * _Nullable capacityReservationTarget; @end /**

Information about the Capacity Reservation targeting option.

*/ @interface AWSEC2LaunchTemplateCapacityReservationSpecificationResponse : AWSModel /**

Indicates the instance's Capacity Reservation preferences. Possible preferences include:

  • open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).

  • none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationPreference capacityReservationPreference; /**

Information about the target Capacity Reservation or Capacity Reservation group.

*/ @property (nonatomic, strong) AWSEC2CapacityReservationTargetResponse * _Nullable capacityReservationTarget; @end /**

Describes a launch template and overrides.

*/ @interface AWSEC2LaunchTemplateConfig : AWSModel /**

The launch template to use. Make sure that the launch template does not contain the NetworkInterfaceId parameter because you can't specify a network interface ID in a Spot Fleet.

*/ @property (nonatomic, strong) AWSEC2FleetLaunchTemplateSpecification * _Nullable launchTemplateSpecification; /**

Any parameters that you specify override the same parameters in the launch template.

*/ @property (nonatomic, strong) NSArray * _Nullable overrides; @end /**

The CPU options for the instance.

*/ @interface AWSEC2LaunchTemplateCpuOptions : AWSModel /**

Indicates whether the instance is enabled for AMD SEV-SNP. For more information, see AMD SEV-SNP.

*/ @property (nonatomic, assign) AWSEC2AmdSevSnpSpecification amdSevSnp; /**

The number of CPU cores for the instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable coreCount; /**

The number of threads per CPU core.

*/ @property (nonatomic, strong) NSNumber * _Nullable threadsPerCore; @end /**

The CPU options for the instance. Both the core count and threads per core must be specified in the request.

*/ @interface AWSEC2LaunchTemplateCpuOptionsRequest : AWSModel /**

Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is supported with M6a, R6a, and C6a instance types only. For more information, see AMD SEV-SNP.

*/ @property (nonatomic, assign) AWSEC2AmdSevSnpSpecification amdSevSnp; /**

The number of CPU cores for the instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable coreCount; /**

The number of threads per CPU core. To disable multithreading for the instance, specify a value of 1. Otherwise, specify the default value of 2.

*/ @property (nonatomic, strong) NSNumber * _Nullable threadsPerCore; @end /**

Describes a block device for an EBS volume.

*/ @interface AWSEC2LaunchTemplateEbsBlockDevice : AWSModel /**

Indicates whether the EBS volume is deleted on instance termination.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

Indicates whether the EBS volume is encrypted.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The number of I/O operations per second (IOPS) that the volume supports.

*/ @property (nonatomic, strong) NSNumber * _Nullable iops; /**

The ARN of the Key Management Service (KMS) CMK used for encryption.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The throughput that the volume supports, in MiB/s.

*/ @property (nonatomic, strong) NSNumber * _Nullable throughput; /**

The size of the volume, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable volumeSize; /**

The volume type.

*/ @property (nonatomic, assign) AWSEC2VolumeType volumeType; @end /**

The parameters for a block device for an EBS volume.

*/ @interface AWSEC2LaunchTemplateEbsBlockDeviceRequest : AWSModel /**

Indicates whether the EBS volume is deleted on instance termination.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you are creating a volume from a snapshot, you can't specify an encryption value.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

The following are the supported values for each volume type:

  • gp3: 3,000-16,000 IOPS

  • io1: 100-64,000 IOPS

  • io2: 100-64,000 IOPS

For io1 and io2 volumes, we guarantee 64,000 IOPS only for Instances built on the Nitro System. Other instance families guarantee performance up to 32,000 IOPS.

This parameter is supported for io1, io2, and gp3 volumes only. This parameter is not supported for gp2, st1, sc1, or standard volumes.

*/ @property (nonatomic, strong) NSNumber * _Nullable iops; /**

The ARN of the symmetric Key Management Service (KMS) CMK used for encryption.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s.

Valid Range: Minimum value of 125. Maximum value of 1000.

*/ @property (nonatomic, strong) NSNumber * _Nullable throughput; /**

The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. The following are the supported volumes sizes for each volume type:

  • gp2 and gp3: 1-16,384

  • io1 and io2: 4-16,384

  • st1 and sc1: 125-16,384

  • standard: 1-1,024

*/ @property (nonatomic, strong) NSNumber * _Nullable volumeSize; /**

The volume type. For more information, see Amazon EBS volume types in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, assign) AWSEC2VolumeType volumeType; @end /**

Describes an elastic inference accelerator.

Required parameters: [Type] */ @interface AWSEC2LaunchTemplateElasticInferenceAccelerator : AWSModel /**

The number of elastic inference accelerators to attach to the instance.

Default: 1

*/ @property (nonatomic, strong) NSNumber * _Nullable count; /**

The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.

*/ @property (nonatomic, strong) NSString * _Nullable types; @end /**

Describes an elastic inference accelerator.

*/ @interface AWSEC2LaunchTemplateElasticInferenceAcceleratorResponse : AWSModel /**

The number of elastic inference accelerators to attach to the instance.

Default: 1

*/ @property (nonatomic, strong) NSNumber * _Nullable count; /**

The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.

*/ @property (nonatomic, strong) NSString * _Nullable types; @end /**

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

*/ @interface AWSEC2LaunchTemplateEnclaveOptions : AWSModel /**

If this parameter is set to true, the instance is enabled for Amazon Web Services Nitro Enclaves; otherwise, it is not enabled for Amazon Web Services Nitro Enclaves.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more information, see What is Amazon Web Services Nitro Enclaves? in the Amazon Web Services Nitro Enclaves User Guide.

*/ @interface AWSEC2LaunchTemplateEnclaveOptionsRequest : AWSModel /**

To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to true.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Indicates whether an instance is configured for hibernation.

*/ @interface AWSEC2LaunchTemplateHibernationOptions : AWSModel /**

If this parameter is set to true, the instance is enabled for hibernation; otherwise, it is not enabled for hibernation.

*/ @property (nonatomic, strong) NSNumber * _Nullable configured; @end /**

Indicates whether the instance is configured for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites.

*/ @interface AWSEC2LaunchTemplateHibernationOptionsRequest : AWSModel /**

If you set this parameter to true, the instance is enabled for hibernation.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable configured; @end /**

Describes an IAM instance profile.

*/ @interface AWSEC2LaunchTemplateIamInstanceProfileSpecification : AWSModel /**

The Amazon Resource Name (ARN) of the instance profile.

*/ @property (nonatomic, strong) NSString * _Nullable arn; /**

The name of the instance profile.

*/ @property (nonatomic, strong) NSString * _Nullable name; @end /**

An IAM instance profile.

*/ @interface AWSEC2LaunchTemplateIamInstanceProfileSpecificationRequest : AWSModel /**

The Amazon Resource Name (ARN) of the instance profile.

*/ @property (nonatomic, strong) NSString * _Nullable arn; /**

The name of the instance profile.

*/ @property (nonatomic, strong) NSString * _Nullable name; @end /**

The maintenance options of your instance.

*/ @interface AWSEC2LaunchTemplateInstanceMaintenanceOptions : AWSModel /**

Disables the automatic recovery behavior of your instance or sets it to default.

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateAutoRecoveryState autoRecovery; @end /**

The maintenance options of your instance.

*/ @interface AWSEC2LaunchTemplateInstanceMaintenanceOptionsRequest : AWSModel /**

Disables the automatic recovery behavior of your instance or sets it to default. For more information, see Simplified automatic recovery.

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateAutoRecoveryState autoRecovery; @end /**

The market (purchasing) option for the instances.

*/ @interface AWSEC2LaunchTemplateInstanceMarketOptions : AWSModel /**

The market type.

*/ @property (nonatomic, assign) AWSEC2MarketType marketType; /**

The options for Spot Instances.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateSpotMarketOptions * _Nullable spotOptions; @end /**

The market (purchasing) option for the instances.

*/ @interface AWSEC2LaunchTemplateInstanceMarketOptionsRequest : AWSModel /**

The market type.

*/ @property (nonatomic, assign) AWSEC2MarketType marketType; /**

The options for Spot Instances.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateSpotMarketOptionsRequest * _Nullable spotOptions; @end /**

The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon Elastic Compute Cloud User Guide.

*/ @interface AWSEC2LaunchTemplateInstanceMetadataOptions : AWSModel /**

Enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled.

If you specify a value of disabled, you will not be able to access your instance metadata.

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateInstanceMetadataEndpointState httpEndpoint; /**

Enables or disables the IPv6 endpoint for the instance metadata service.

Default: disabled

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateInstanceMetadataProtocolIpv6 httpProtocolIpv6; /**

The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel.

Default: 1

Possible values: Integers from 1 to 64

*/ @property (nonatomic, strong) NSNumber * _Nullable httpPutResponseHopLimit; /**

Indicates whether IMDSv2 is optional or required.

optional - When IMDSv2 is optional, you can choose to retrieve instance metadata with or without a session token in your request. If you retrieve the IAM role credentials without a token, the IMDSv1 role credentials are returned. If you retrieve the IAM role credentials using a valid session token, the IMDSv2 role credentials are returned.

required - When IMDSv2 is required, you must send a session token with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.

Default: optional

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateHttpTokensState httpTokens; /**

Set to enabled to allow access to instance tags from the instance metadata. Set to disabled to turn off access to instance tags from the instance metadata. For more information, see Work with instance tags using the instance metadata.

Default: disabled

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateInstanceMetadataTagsState instanceMetadataTags; /**

The state of the metadata option changes.

pending - The metadata options are being updated and the instance is not ready to process metadata traffic with the new selection.

applied - The metadata options have been successfully applied on the instance.

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateInstanceMetadataOptionsState state; @end /**

The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon Elastic Compute Cloud User Guide.

*/ @interface AWSEC2LaunchTemplateInstanceMetadataOptionsRequest : AWSModel /**

Enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled.

If you specify a value of disabled, you will not be able to access your instance metadata.

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateInstanceMetadataEndpointState httpEndpoint; /**

Enables or disables the IPv6 endpoint for the instance metadata service.

Default: disabled

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateInstanceMetadataProtocolIpv6 httpProtocolIpv6; /**

The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel.

Default: 1

Possible values: Integers from 1 to 64

*/ @property (nonatomic, strong) NSNumber * _Nullable httpPutResponseHopLimit; /**

IMDSv2 uses token-backed sessions. Set the use of HTTP tokens to optional (in other words, set the use of IMDSv2 to optional) or required (in other words, set the use of IMDSv2 to required).

  • optional - When IMDSv2 is optional, you can choose to retrieve instance metadata with or without a session token in your request. If you retrieve the IAM role credentials without a token, the IMDSv1 role credentials are returned. If you retrieve the IAM role credentials using a valid session token, the IMDSv2 role credentials are returned.

  • required - When IMDSv2 is required, you must send a session token with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.

Default: optional

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateHttpTokensState httpTokens; /**

Set to enabled to allow access to instance tags from the instance metadata. Set to disabled to turn off access to instance tags from the instance metadata. For more information, see Work with instance tags using the instance metadata.

Default: disabled

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateInstanceMetadataTagsState instanceMetadataTags; @end /**

Describes a network interface.

*/ @interface AWSEC2LaunchTemplateInstanceNetworkInterfaceSpecification : AWSModel /**

Indicates whether to associate a Carrier IP address with eth0 for a new network interface.

Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information about Carrier IP addresses, see Carrier IP addresses in the Wavelength Developer Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable associateCarrierIpAddress; /**

Indicates whether to associate a public IPv4 address with eth0 for a new network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable associatePublicIpAddress; /**

Indicates whether the network interface is deleted when the instance is terminated.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

A description for the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The device index for the network interface attachment.

*/ @property (nonatomic, strong) NSNumber * _Nullable deviceIndex; /**

The IDs of one or more security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The type of network interface.

*/ @property (nonatomic, strong) NSString * _Nullable interfaceType; /**

The number of IPv4 prefixes that Amazon Web Services automatically assigned to the network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv4PrefixCount; /**

One or more IPv4 prefixes assigned to the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv4Prefixes; /**

The number of IPv6 addresses for the network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6AddressCount; /**

The IPv6 addresses for the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Addresses; /**

The number of IPv6 prefixes that Amazon Web Services automatically assigned to the network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6PrefixCount; /**

One or more IPv6 prefixes assigned to the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Prefixes; /**

The index of the network card.

*/ @property (nonatomic, strong) NSNumber * _Nullable networkCardIndex; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The primary private IPv4 address of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

One or more private IPv4 addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddresses; /**

The number of secondary private IPv4 addresses for the network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable secondaryPrivateIpAddressCount; /**

The ID of the subnet for the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /**

The parameters for a network interface.

*/ @interface AWSEC2LaunchTemplateInstanceNetworkInterfaceSpecificationRequest : AWSModel /**

Associates a Carrier IP address with eth0 for a new network interface.

Use this option when you launch an instance in a Wavelength Zone and want to associate a Carrier IP address with the network interface. For more information about Carrier IP addresses, see Carrier IP addresses in the Wavelength Developer Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable associateCarrierIpAddress; /**

Associates a public IPv4 address with eth0 for a new network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable associatePublicIpAddress; /**

Indicates whether the network interface is deleted when the instance is terminated.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

A description for the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The device index for the network interface attachment.

*/ @property (nonatomic, strong) NSNumber * _Nullable deviceIndex; /**

The IDs of one or more security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon Elastic Compute Cloud User Guide.

If you are not creating an EFA, specify interface or omit this parameter.

Valid values: interface | efa

*/ @property (nonatomic, strong) NSString * _Nullable interfaceType; /**

The number of IPv4 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv4Prefix option.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv4PrefixCount; /**

One or more IPv4 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount option.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv4Prefixes; /**

The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6AddressCount; /**

One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Addresses; /**

The number of IPv6 prefixes to be automatically assigned to the network interface. You cannot use this option if you use the Ipv6Prefix option.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6PrefixCount; /**

One or more IPv6 prefixes to be assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount option.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Prefixes; /**

The index of the network card. Some instance types support multiple network cards. The primary network interface must be assigned to network card index 0. The default is network card index 0.

*/ @property (nonatomic, strong) NSNumber * _Nullable networkCardIndex; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The primary private IPv4 address of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

One or more private IPv4 addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddresses; /**

The number of secondary private IPv4 addresses to assign to a network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable secondaryPrivateIpAddressCount; /**

The ID of the subnet for the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /**

Describes a license configuration.

*/ @interface AWSEC2LaunchTemplateLicenseConfiguration : AWSModel /**

The Amazon Resource Name (ARN) of the license configuration.

*/ @property (nonatomic, strong) NSString * _Nullable licenseConfigurationArn; @end /**

Describes a license configuration.

*/ @interface AWSEC2LaunchTemplateLicenseConfigurationRequest : AWSModel /**

The Amazon Resource Name (ARN) of the license configuration.

*/ @property (nonatomic, strong) NSString * _Nullable licenseConfigurationArn; @end /**

Describes overrides for a launch template.

*/ @interface AWSEC2LaunchTemplateOverrides : AWSModel /**

The Availability Zone in which to launch the instances.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The instance requirements. When you specify instance requirements, Amazon EC2 will identify instance types with the provided requirements, and then use your On-Demand and Spot allocation strategies to launch instances from these instance types, in the same way as when you specify a list of instance types.

If you specify InstanceRequirements, you can't specify InstanceType.

*/ @property (nonatomic, strong) AWSEC2InstanceRequirements * _Nullable instanceRequirements; /**

The instance type.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The priority for the launch template override. The highest priority is launched first.

If OnDemandAllocationStrategy is set to prioritized, Spot Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity.

If the Spot AllocationStrategy is set to capacityOptimizedPrioritized, Spot Fleet uses priority on a best-effort basis to determine which launch template override to use in fulfilling Spot capacity, but optimizes for capacity first.

Valid values are whole numbers starting at 0. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority. You can set the same priority for different launch template overrides.

*/ @property (nonatomic, strong) NSNumber * _Nullable priority; /**

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable spotPrice; /**

The ID of the subnet in which to launch the instances.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The number of units provided by the specified instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable weightedCapacity; @end /**

Describes the placement of an instance.

*/ @interface AWSEC2LaunchTemplatePlacement : AWSModel /**

The affinity setting for the instance on the Dedicated Host.

*/ @property (nonatomic, strong) NSString * _Nullable affinity; /**

The Availability Zone of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The Group ID of the placement group. You must specify the Placement Group Group ID to launch an instance in a shared placement group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The name of the placement group for the instance.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The ID of the Dedicated Host for the instance.

*/ @property (nonatomic, strong) NSString * _Nullable hostId; /**

The ARN of the host resource group in which to launch the instances.

*/ @property (nonatomic, strong) NSString * _Nullable hostResourceGroupArn; /**

The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.

*/ @property (nonatomic, strong) NSNumber * _Nullable partitionNumber; /**

Reserved for future use.

*/ @property (nonatomic, strong) NSString * _Nullable spreadDomain; /**

The tenancy of the instance. An instance with a tenancy of dedicated runs on single-tenant hardware.

*/ @property (nonatomic, assign) AWSEC2Tenancy tenancy; @end /**

Describes the placement of an instance.

*/ @interface AWSEC2LaunchTemplatePlacementRequest : AWSModel /**

The affinity setting for an instance on a Dedicated Host.

*/ @property (nonatomic, strong) NSString * _Nullable affinity; /**

The Availability Zone for the instance.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The name of the placement group for the instance.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The ID of the Dedicated Host for the instance.

*/ @property (nonatomic, strong) NSString * _Nullable hostId; /**

The ARN of the host resource group in which to launch the instances. If you specify a host resource group ARN, omit the Tenancy parameter or set it to host.

*/ @property (nonatomic, strong) NSString * _Nullable hostResourceGroupArn; /**

The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.

*/ @property (nonatomic, strong) NSNumber * _Nullable partitionNumber; /**

Reserved for future use.

*/ @property (nonatomic, strong) NSString * _Nullable spreadDomain; /**

The tenancy of the instance. An instance with a tenancy of dedicated runs on single-tenant hardware.

*/ @property (nonatomic, assign) AWSEC2Tenancy tenancy; @end /**

Describes the options for instance hostnames.

*/ @interface AWSEC2LaunchTemplatePrivateDnsNameOptions : AWSModel /**

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsAAAARecord; /**

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsARecord; /**

The type of hostname to assign to an instance.

*/ @property (nonatomic, assign) AWSEC2HostnameType hostnameType; @end /**

Describes the options for instance hostnames.

*/ @interface AWSEC2LaunchTemplatePrivateDnsNameOptionsRequest : AWSModel /**

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsAAAARecord; /**

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsARecord; /**

The type of hostname for Amazon EC2 instances. For IPv4 only subnets, an instance DNS name must be based on the instance IPv4 address. For IPv6 native subnets, an instance DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance IPv4 address or the instance ID.

*/ @property (nonatomic, assign) AWSEC2HostnameType hostnameType; @end /**

The launch template to use. You must specify either the launch template ID or launch template name in the request, but not both.

*/ @interface AWSEC2LaunchTemplateSpecification : AWSModel /**

The ID of the launch template.

You must specify the LaunchTemplateId or the LaunchTemplateName, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

You must specify the LaunchTemplateName or the LaunchTemplateId, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

The launch template version number, $Latest, or $Default.

If the value is $Latest, Amazon EC2 uses the latest version of the launch template.

If the value is $Default, Amazon EC2 uses the default version of the launch template.

Default: The default version of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable version; @end /**

The options for Spot Instances.

*/ @interface AWSEC2LaunchTemplateSpotMarketOptions : AWSModel /**

The required duration for the Spot Instances (also known as Spot blocks), in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).

*/ @property (nonatomic, strong) NSNumber * _Nullable blockDurationMinutes; /**

The behavior when a Spot Instance is interrupted.

*/ @property (nonatomic, assign) AWSEC2InstanceInterruptionBehavior instanceInterruptionBehavior; /**

The maximum hourly price you're willing to pay for the Spot Instances. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable maxPrice; /**

The Spot Instance request type.

*/ @property (nonatomic, assign) AWSEC2SpotInstanceType spotInstanceType; /**

The end date of the request. For a one-time request, the request remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date and time is reached.

*/ @property (nonatomic, strong) NSDate * _Nullable validUntil; @end /**

The options for Spot Instances.

*/ @interface AWSEC2LaunchTemplateSpotMarketOptionsRequest : AWSModel /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable blockDurationMinutes; /**

The behavior when a Spot Instance is interrupted. The default is terminate.

*/ @property (nonatomic, assign) AWSEC2InstanceInterruptionBehavior instanceInterruptionBehavior; /**

The maximum hourly price you're willing to pay for the Spot Instances. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable maxPrice; /**

The Spot Instance request type.

*/ @property (nonatomic, assign) AWSEC2SpotInstanceType spotInstanceType; /**

The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent requests.

  • For a persistent request, the request remains active until the ValidUntil date and time is reached. Otherwise, the request remains active until you cancel it.

  • For a one-time request, ValidUntil is not supported. The request remains active until all instances launch or you cancel the request.

Default: 7 days from the current date

*/ @property (nonatomic, strong) NSDate * _Nullable validUntil; @end /**

The tags specification for the launch template.

*/ @interface AWSEC2LaunchTemplateTagSpecification : AWSModel /**

The type of resource to tag.

*/ @property (nonatomic, assign) AWSEC2ResourceType resourceType; /**

The tags for the resource.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

The tags specification for the resources that are created during instance launch.

*/ @interface AWSEC2LaunchTemplateTagSpecificationRequest : AWSModel /**

The type of resource to tag.

The Valid Values are all the resource types that can be tagged. However, when creating a launch template, you can specify tags for the following resource types only: instance | volume | elastic-gpu | network-interface | spot-instances-request

To tag a resource after it has been created, see CreateTags.

*/ @property (nonatomic, assign) AWSEC2ResourceType resourceType; /**

The tags to apply to the resource.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes a launch template version.

*/ @interface AWSEC2LaunchTemplateVersion : AWSModel /**

The time the version was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createTime; /**

The principal that created the version.

*/ @property (nonatomic, strong) NSString * _Nullable createdBy; /**

Indicates whether the version is the default version.

*/ @property (nonatomic, strong) NSNumber * _Nullable defaultVersion; /**

Information about the launch template.

*/ @property (nonatomic, strong) AWSEC2ResponseLaunchTemplateData * _Nullable launchTemplateData; /**

The ID of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; /**

The description for the version.

*/ @property (nonatomic, strong) NSString * _Nullable versionDescription; /**

The version number.

*/ @property (nonatomic, strong) NSNumber * _Nullable versionNumber; @end /**

Describes the monitoring for the instance.

*/ @interface AWSEC2LaunchTemplatesMonitoring : AWSModel /**

Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Describes the monitoring for the instance.

*/ @interface AWSEC2LaunchTemplatesMonitoringRequest : AWSModel /**

Specify true to enable detailed monitoring. Otherwise, basic monitoring is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Describes a license configuration.

*/ @interface AWSEC2LicenseConfiguration : AWSModel /**

The Amazon Resource Name (ARN) of the license configuration.

*/ @property (nonatomic, strong) NSString * _Nullable licenseConfigurationArn; @end /**

Describes a license configuration.

*/ @interface AWSEC2LicenseConfigurationRequest : AWSModel /**

The Amazon Resource Name (ARN) of the license configuration.

*/ @property (nonatomic, strong) NSString * _Nullable licenseConfigurationArn; @end /** */ @interface AWSEC2ListImagesInRecycleBinRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the AMIs to list. Omit this parameter to list all of the AMIs that are in the Recycle Bin. You can specify up to 20 IDs in a single request.

*/ @property (nonatomic, strong) NSArray * _Nullable imageIds; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2ListImagesInRecycleBinResult : AWSModel /**

Information about the AMIs.

*/ @property (nonatomic, strong) NSArray * _Nullable images; /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2ListSnapshotsInRecycleBinRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of items to return for this request. To get the next page of items, make another request with the token returned in the output. For more information, see Pagination.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token returned from a previous paginated request. Pagination continues from the end of the items returned by the previous request.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The IDs of the snapshots to list. Omit this parameter to list all of the snapshots that are in the Recycle Bin.

*/ @property (nonatomic, strong) NSArray * _Nullable snapshotIds; @end /** */ @interface AWSEC2ListSnapshotsInRecycleBinResult : AWSModel /**

The token to include in another request to get the next page of items. This value is null when there are no more items to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the snapshots.

*/ @property (nonatomic, strong) NSArray * _Nullable snapshots; @end /**

Describes the Classic Load Balancers and target groups to attach to a Spot Fleet request.

*/ @interface AWSEC2LoadBalancersConfig : AWSModel /**

The Classic Load Balancers.

*/ @property (nonatomic, strong) AWSEC2ClassicLoadBalancersConfig * _Nullable classicLoadBalancersConfig; /**

The target groups.

*/ @property (nonatomic, strong) AWSEC2TargetGroupsConfig * _Nullable targetGroupsConfig; @end /**

Describes a load permission.

*/ @interface AWSEC2LoadPermission : AWSModel /**

The name of the group.

*/ @property (nonatomic, assign) AWSEC2PermissionGroup group; /**

The Amazon Web Services account ID.

*/ @property (nonatomic, strong) NSString * _Nullable userId; @end /**

Describes modifications to the load permissions of an Amazon FPGA image (AFI).

*/ @interface AWSEC2LoadPermissionModifications : AWSModel /**

The load permissions to add.

*/ @property (nonatomic, strong) NSArray * _Nullable add; /**

The load permissions to remove.

*/ @property (nonatomic, strong) NSArray * _Nullable remove; @end /**

Describes a load permission.

*/ @interface AWSEC2LoadPermissionRequest : AWSModel /**

The name of the group.

*/ @property (nonatomic, assign) AWSEC2PermissionGroup group; /**

The Amazon Web Services account ID.

*/ @property (nonatomic, strong) NSString * _Nullable userId; @end /**

Describes a local gateway.

*/ @interface AWSEC2LocalGateway : AWSModel /**

The ID of the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayId; /**

The Amazon Resource Name (ARN) of the Outpost.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The ID of the Amazon Web Services account that owns the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The state of the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable state; /**

The tags assigned to the local gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes a route for a local gateway route table.

*/ @interface AWSEC2LocalGatewayRoute : AWSModel /**

The ID of the customer-owned address pool.

*/ @property (nonatomic, strong) NSString * _Nullable coipPoolId; /**

The CIDR block used for destination matches.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable destinationPrefixListId; /**

The Amazon Resource Name (ARN) of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableArn; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; /**

The ID of the virtual interface group.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayVirtualInterfaceGroupId; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The ID of the Amazon Web Services account that owns the local gateway route.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The state of the route.

*/ @property (nonatomic, assign) AWSEC2LocalGatewayRouteState state; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The route type.

*/ @property (nonatomic, assign) AWSEC2LocalGatewayRouteType types; @end /**

Describes a local gateway route table.

*/ @interface AWSEC2LocalGatewayRouteTable : AWSModel /**

The ID of the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayId; /**

The Amazon Resource Name (ARN) of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableArn; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; /**

The mode of the local gateway route table.

*/ @property (nonatomic, assign) AWSEC2LocalGatewayRouteTableMode mode; /**

The Amazon Resource Name (ARN) of the Outpost.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The ID of the Amazon Web Services account that owns the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The state of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable state; /**

Information about the state change.

*/ @property (nonatomic, strong) AWSEC2StateReason * _Nullable stateReason; /**

The tags assigned to the local gateway route table.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes an association between a local gateway route table and a virtual interface group.

*/ @interface AWSEC2LocalGatewayRouteTableVirtualInterfaceGroupAssociation : AWSModel /**

The ID of the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayId; /**

The Amazon Resource Name (ARN) of the local gateway route table for the virtual interface group.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableArn; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; /**

The ID of the association.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableVirtualInterfaceGroupAssociationId; /**

The ID of the virtual interface group.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayVirtualInterfaceGroupId; /**

The ID of the Amazon Web Services account that owns the local gateway virtual interface group association.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The state of the association.

*/ @property (nonatomic, strong) NSString * _Nullable state; /**

The tags assigned to the association.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes an association between a local gateway route table and a VPC.

*/ @interface AWSEC2LocalGatewayRouteTableVpcAssociation : AWSModel /**

The ID of the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayId; /**

The Amazon Resource Name (ARN) of the local gateway route table for the association.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableArn; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; /**

The ID of the association.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableVpcAssociationId; /**

The ID of the Amazon Web Services account that owns the local gateway route table for the association.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The state of the association.

*/ @property (nonatomic, strong) NSString * _Nullable state; /**

The tags assigned to the association.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes a local gateway virtual interface.

*/ @interface AWSEC2LocalGatewayVirtualInterface : AWSModel /**

The local address.

*/ @property (nonatomic, strong) NSString * _Nullable localAddress; /**

The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the local gateway.

*/ @property (nonatomic, strong) NSNumber * _Nullable localBgpAsn; /**

The ID of the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayId; /**

The ID of the virtual interface.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayVirtualInterfaceId; /**

The ID of the Amazon Web Services account that owns the local gateway virtual interface.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The peer address.

*/ @property (nonatomic, strong) NSString * _Nullable peerAddress; /**

The peer BGP ASN.

*/ @property (nonatomic, strong) NSNumber * _Nullable peerBgpAsn; /**

The tags assigned to the virtual interface.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VLAN.

*/ @property (nonatomic, strong) NSNumber * _Nullable vlan; @end /**

Describes a local gateway virtual interface group.

*/ @interface AWSEC2LocalGatewayVirtualInterfaceGroup : AWSModel /**

The ID of the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayId; /**

The ID of the virtual interface group.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayVirtualInterfaceGroupId; /**

The IDs of the virtual interfaces.

*/ @property (nonatomic, strong) NSArray * _Nullable localGatewayVirtualInterfaceIds; /**

The ID of the Amazon Web Services account that owns the local gateway virtual interface group.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The tags assigned to the virtual interface group.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Details for Site-to-Site VPN tunnel endpoint maintenance events.

*/ @interface AWSEC2MaintenanceDetails : AWSModel /**

Timestamp of last applied maintenance.

*/ @property (nonatomic, strong) NSDate * _Nullable lastMaintenanceApplied; /**

The timestamp after which Amazon Web Services will automatically apply maintenance.

*/ @property (nonatomic, strong) NSDate * _Nullable maintenanceAutoAppliedAfter; /**

Verify existence of a pending maintenance.

*/ @property (nonatomic, strong) NSString * _Nullable pendingMaintenance; @end /**

Describes a managed prefix list.

*/ @interface AWSEC2ManagedPrefixList : AWSModel /**

The IP address version.

*/ @property (nonatomic, strong) NSString * _Nullable addressFamily; /**

The maximum number of entries for the prefix list.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxEntries; /**

The ID of the owner of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The Amazon Resource Name (ARN) for the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListArn; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The name of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListName; /**

The current state of the prefix list.

*/ @property (nonatomic, assign) AWSEC2PrefixListState state; /**

The state message.

*/ @property (nonatomic, strong) NSString * _Nullable stateMessage; /**

The tags for the prefix list.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The version of the prefix list.

*/ @property (nonatomic, strong) NSNumber * _Nullable version; @end /**

The minimum and maximum amount of memory per vCPU, in GiB.

*/ @interface AWSEC2MemoryGiBPerVCpu : AWSModel /**

The maximum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no maximum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum amount of memory per vCPU, in GiB. If this parameter is not specified, there is no minimum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

The minimum and maximum amount of memory per vCPU, in GiB.

*/ @interface AWSEC2MemoryGiBPerVCpuRequest : AWSModel /**

The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

Describes the memory for the instance type.

*/ @interface AWSEC2MemoryInfo : AWSModel /**

The size of the memory, in MiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable sizeInMiB; @end /**

The minimum and maximum amount of memory, in MiB.

*/ @interface AWSEC2MemoryMiB : AWSModel /**

The maximum amount of memory, in MiB. If this parameter is not specified, there is no maximum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum amount of memory, in MiB. If this parameter is not specified, there is no minimum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

The minimum and maximum amount of memory, in MiB.

Required parameters: [Min] */ @interface AWSEC2MemoryMiBRequest : AWSModel /**

The maximum amount of memory, in MiB. To specify no maximum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum amount of memory, in MiB. To specify no minimum limit, specify 0.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

Indicates whether the network was healthy or degraded at a particular point. The value is aggregated from the startDate to the endDate. Currently only five_minutes is supported.

*/ @interface AWSEC2MetricPoint : AWSModel /**

The end date for the metric point. The ending time must be formatted as yyyy-mm-ddThh:mm:ss. For example, 2022-06-12T12:00:00.000Z.

*/ @property (nonatomic, strong) NSDate * _Nullable endDate; /**

The start date for the metric point. The starting date for the metric point. The starting time must be formatted as yyyy-mm-ddThh:mm:ss. For example, 2022-06-10T12:00:00.000Z.

*/ @property (nonatomic, strong) NSDate * _Nullable startDate; /**

The status of the metric point.

*/ @property (nonatomic, strong) NSString * _Nullable status; /** */ @property (nonatomic, strong) NSNumber * _Nullable value; @end /** */ @interface AWSEC2ModifyAddressAttributeRequest : AWSRequest /**

[EC2-VPC] The allocation ID.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

The domain name to modify for the IP address.

*/ @property (nonatomic, strong) NSString * _Nullable domainName; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2ModifyAddressAttributeResult : AWSModel /**

Information about the Elastic IP address.

*/ @property (nonatomic, strong) AWSEC2AddressAttribute * _Nullable address; @end /** */ @interface AWSEC2ModifyAvailabilityZoneGroupRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The name of the Availability Zone group, Local Zone group, or Wavelength Zone group.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

Indicates whether you are opted in to the Local Zone group or Wavelength Zone group. The only valid value is opted-in. You must contact Amazon Web Services Support to opt out of a Local Zone or Wavelength Zone group.

*/ @property (nonatomic, assign) AWSEC2ModifyAvailabilityZoneOptInStatus optInStatus; @end /** */ @interface AWSEC2ModifyAvailabilityZoneGroupResult : AWSModel /**

Is true if the request succeeds, and an error otherwise.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ModifyCapacityReservationFleetRequest : AWSRequest /**

The ID of the Capacity Reservation Fleet to modify.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationFleetId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The date and time at which the Capacity Reservation Fleet expires. When the Capacity Reservation Fleet expires, its state changes to expired and all of the Capacity Reservations in the Fleet expire.

The Capacity Reservation Fleet expires within an hour after the specified time. For example, if you specify 5/31/2019, 13:30:55, the Capacity Reservation Fleet is guaranteed to expire between 13:30:55 and 14:30:55 on 5/31/2019.

You can't specify EndDate and RemoveEndDate in the same request.

*/ @property (nonatomic, strong) NSDate * _Nullable endDate; /**

Indicates whether to remove the end date from the Capacity Reservation Fleet. If you remove the end date, the Capacity Reservation Fleet does not expire and it remains active until you explicitly cancel it using the CancelCapacityReservationFleet action.

You can't specify RemoveEndDate and EndDate in the same request.

*/ @property (nonatomic, strong) NSNumber * _Nullable removeEndDate; /**

The total number of capacity units to be reserved by the Capacity Reservation Fleet. This value, together with the instance type weights that you assign to each instance type used by the Fleet determine the number of instances for which the Fleet reserves capacity. Both values are based on units that make sense for your workload. For more information, see Total target capacity in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalTargetCapacity; @end /** */ @interface AWSEC2ModifyCapacityReservationFleetResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ModifyCapacityReservationRequest : AWSRequest /**

Reserved. Capacity Reservations you have created are accepted by default.

*/ @property (nonatomic, strong) NSNumber * _Nullable accept; /**

Reserved for future use.

*/ @property (nonatomic, strong) NSString * _Nullable additionalInfo; /**

The ID of the Capacity Reservation.

*/ @property (nonatomic, strong) NSString * _Nullable capacityReservationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. The Capacity Reservation's state changes to expired when it reaches its end date and time.

The Capacity Reservation is cancelled within an hour from the specified time. For example, if you specify 5/31/2019, 13:30:55, the Capacity Reservation is guaranteed to end between 13:30:55 and 14:30:55 on 5/31/2019.

You must provide an EndDate value if EndDateType is limited. Omit EndDate if EndDateType is unlimited.

*/ @property (nonatomic, strong) NSDate * _Nullable endDate; /**

Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end types:

  • unlimited - The Capacity Reservation remains active until you explicitly cancel it. Do not provide an EndDate value if EndDateType is unlimited.

  • limited - The Capacity Reservation expires automatically at a specified date and time. You must provide an EndDate value if EndDateType is limited.

*/ @property (nonatomic, assign) AWSEC2EndDateType endDateType; /**

The number of instances for which to reserve capacity. The number of instances can't be increased or decreased by more than 1000 in a single request.

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; @end /** */ @interface AWSEC2ModifyCapacityReservationResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ModifyClientVpnEndpointRequest : AWSRequest /**

The options for managing connection authorization for new client connections.

*/ @property (nonatomic, strong) AWSEC2ClientConnectOptions * _Nullable clientConnectOptions; /**

Options for enabling a customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

*/ @property (nonatomic, strong) AWSEC2ClientLoginBannerOptions * _Nullable clientLoginBannerOptions; /**

The ID of the Client VPN endpoint to modify.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Information about the client connection logging options.

If you enable client connection logging, data about client connections is sent to a Cloudwatch Logs log stream. The following information is logged:

  • Client connection requests

  • Client connection results (successful and unsuccessful)

  • Reasons for unsuccessful client connection requests

  • Client connection termination time

*/ @property (nonatomic, strong) AWSEC2ConnectionLogOptions * _Nullable connectionLogOptions; /**

A brief description of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Information about the DNS servers to be used by Client VPN connections. A Client VPN endpoint can have up to two DNS servers.

*/ @property (nonatomic, strong) AWSEC2DnsServersOptionsModifyStructure * _Nullable dnsServers; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of one or more security groups to apply to the target network.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

Specify whether to enable the self-service portal for the Client VPN endpoint.

*/ @property (nonatomic, assign) AWSEC2SelfServicePortal selfServicePortal; /**

The ARN of the server certificate to be used. The server certificate must be provisioned in Certificate Manager (ACM).

*/ @property (nonatomic, strong) NSString * _Nullable serverCertificateArn; /**

The maximum VPN session duration time in hours.

Valid values: 8 | 10 | 12 | 24

Default value: 24

*/ @property (nonatomic, strong) NSNumber * _Nullable sessionTimeoutHours; /**

Indicates whether the VPN is split-tunnel.

For information about split-tunnel VPN endpoints, see Split-tunnel Client VPN endpoint in the Client VPN Administrator Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable splitTunnel; /**

The ID of the VPC to associate with the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; /**

The port number to assign to the Client VPN endpoint for TCP and UDP traffic.

Valid Values: 443 | 1194

Default Value: 443

*/ @property (nonatomic, strong) NSNumber * _Nullable vpnPort; @end /** */ @interface AWSEC2ModifyClientVpnEndpointResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ModifyDefaultCreditSpecificationRequest : AWSRequest /**

The credit option for CPU usage of the instance family.

Valid Values: standard | unlimited

*/ @property (nonatomic, strong) NSString * _Nullable cpuCredits; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The instance family.

*/ @property (nonatomic, assign) AWSEC2UnlimitedSupportedInstanceFamily instanceFamily; @end /** */ @interface AWSEC2ModifyDefaultCreditSpecificationResult : AWSModel /**

The default credit option for CPU usage of the instance family.

*/ @property (nonatomic, strong) AWSEC2InstanceFamilyCreditSpecification * _Nullable instanceFamilyCreditSpecification; @end /** */ @interface AWSEC2ModifyEbsDefaultKmsKeyIdRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The identifier of the Key Management Service (KMS) KMS key to use for Amazon EBS encryption. If this parameter is not specified, your KMS key for Amazon EBS is used. If KmsKeyId is specified, the encrypted state must be true.

You can specify the KMS key using any of the following:

  • Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.

  • Key alias. For example, alias/ExampleAlias.

  • Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab.

  • Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.

Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, the action can appear to complete, but eventually fails.

Amazon EBS does not support asymmetric KMS keys.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; @end /** */ @interface AWSEC2ModifyEbsDefaultKmsKeyIdResult : AWSModel /**

The Amazon Resource Name (ARN) of the default KMS key for encryption by default.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; @end /** */ @interface AWSEC2ModifyFleetRequest : AWSRequest /**

Reserved.

*/ @property (nonatomic, strong) NSString * _Nullable context; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether running instances should be terminated if the total target capacity of the EC2 Fleet is decreased below the current size of the EC2 Fleet.

Supported only for fleets of type maintain.

*/ @property (nonatomic, assign) AWSEC2FleetExcessCapacityTerminationPolicy excessCapacityTerminationPolicy; /**

The ID of the EC2 Fleet.

*/ @property (nonatomic, strong) NSString * _Nullable fleetId; /**

The launch template and overrides.

*/ @property (nonatomic, strong) NSArray * _Nullable launchTemplateConfigs; /**

The size of the EC2 Fleet.

*/ @property (nonatomic, strong) AWSEC2TargetCapacitySpecificationRequest * _Nullable targetCapacitySpecification; @end /** */ @interface AWSEC2ModifyFleetResult : AWSModel /**

If the request succeeds, the response returns true. If the request fails, no response is returned, and instead an error message is returned.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ModifyFpgaImageAttributeRequest : AWSRequest /**

The name of the attribute.

*/ @property (nonatomic, assign) AWSEC2FpgaImageAttributeName attribute; /**

A description for the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable fpgaImageId; /**

The load permission for the AFI.

*/ @property (nonatomic, strong) AWSEC2LoadPermissionModifications * _Nullable loadPermission; /**

A name for the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The operation type.

*/ @property (nonatomic, assign) AWSEC2OperationType operationType; /**

The product codes. After you add a product code to an AFI, it can't be removed. This parameter is valid only when modifying the productCodes attribute.

*/ @property (nonatomic, strong) NSArray * _Nullable productCodes; /**

The user groups. This parameter is valid only when modifying the loadPermission attribute.

*/ @property (nonatomic, strong) NSArray * _Nullable userGroups; /**

The Amazon Web Services account IDs. This parameter is valid only when modifying the loadPermission attribute.

*/ @property (nonatomic, strong) NSArray * _Nullable userIds; @end /** */ @interface AWSEC2ModifyFpgaImageAttributeResult : AWSModel /**

Information about the attribute.

*/ @property (nonatomic, strong) AWSEC2FpgaImageAttribute * _Nullable fpgaImageAttribute; @end /** */ @interface AWSEC2ModifyHostsRequest : AWSRequest /**

Specify whether to enable or disable auto-placement.

*/ @property (nonatomic, assign) AWSEC2AutoPlacement autoPlacement; /**

The IDs of the Dedicated Hosts to modify.

*/ @property (nonatomic, strong) NSArray * _Nullable hostIds; /**

Indicates whether to enable or disable host maintenance for the Dedicated Host. For more information, see Host maintenance in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2HostMaintenance hostMaintenance; /**

Indicates whether to enable or disable host recovery for the Dedicated Host. For more information, see Host recovery in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2HostRecovery hostRecovery; /**

Specifies the instance family to be supported by the Dedicated Host. Specify this parameter to modify a Dedicated Host to support multiple instance types within its current instance family.

If you want to modify a Dedicated Host to support a specific instance type only, omit this parameter and specify InstanceType instead. You cannot specify InstanceFamily and InstanceType in the same request.

*/ @property (nonatomic, strong) NSString * _Nullable instanceFamily; /**

Specifies the instance type to be supported by the Dedicated Host. Specify this parameter to modify a Dedicated Host to support only a specific instance type.

If you want to modify a Dedicated Host to support multiple instance types in its current instance family, omit this parameter and specify InstanceFamily instead. You cannot specify InstanceType and InstanceFamily in the same request.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; @end /** */ @interface AWSEC2ModifyHostsResult : AWSModel /**

The IDs of the Dedicated Hosts that were successfully modified.

*/ @property (nonatomic, strong) NSArray * _Nullable successful; /**

The IDs of the Dedicated Hosts that could not be modified. Check whether the setting you requested can be used.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessful; @end /** */ @interface AWSEC2ModifyIdFormatRequest : AWSRequest /**

The type of resource: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | route-table | route-table-association | security-group | subnet | subnet-cidr-block-association | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.

Alternatively, use the all-current option to include all resource types that are currently within their opt-in period for longer IDs.

*/ @property (nonatomic, strong) NSString * _Nullable resource; /**

Indicate whether the resource should use longer IDs (17-character IDs).

*/ @property (nonatomic, strong) NSNumber * _Nullable useLongIds; @end /** */ @interface AWSEC2ModifyIdentityIdFormatRequest : AWSRequest /**

The ARN of the principal, which can be an IAM user, IAM role, or the root user. Specify all to modify the ID format for all IAM users, IAM roles, and the root user of the account.

*/ @property (nonatomic, strong) NSString * _Nullable principalArn; /**

The type of resource: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | route-table | route-table-association | security-group | subnet | subnet-cidr-block-association | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.

Alternatively, use the all-current option to include all resource types that are currently within their opt-in period for longer IDs.

*/ @property (nonatomic, strong) NSString * _Nullable resource; /**

Indicates whether the resource should use longer IDs (17-character IDs)

*/ @property (nonatomic, strong) NSNumber * _Nullable useLongIds; @end /**

Contains the parameters for ModifyImageAttribute.

Required parameters: [ImageId] */ @interface AWSEC2ModifyImageAttributeRequest : AWSRequest /**

The name of the attribute to modify.

Valid values: description | imdsSupport | launchPermission

*/ @property (nonatomic, strong) NSString * _Nullable attribute; /**

A new description for the AMI.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

Set to v2.0 to indicate that IMDSv2 is specified in the AMI. Instances launched from this AMI will have HttpTokens automatically set to required so that, by default, the instance requires that IMDSv2 is used when requesting instance metadata. In addition, HttpPutResponseHopLimit is set to 2. For more information, see Configure the AMI in the Amazon EC2 User Guide.

Do not use this parameter unless your AMI software supports IMDSv2. After you set the value to v2.0, you can't undo it. The only way to “reset” your AMI is to create a new AMI from the underlying snapshot.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable imdsSupport; /**

A new launch permission for the AMI.

*/ @property (nonatomic, strong) AWSEC2LaunchPermissionModifications * _Nullable launchPermission; /**

The operation type. This parameter can be used only when the Attribute parameter is launchPermission.

*/ @property (nonatomic, assign) AWSEC2OperationType operationType; /**

The Amazon Resource Name (ARN) of an organization. This parameter can be used only when the Attribute parameter is launchPermission.

*/ @property (nonatomic, strong) NSArray * _Nullable organizationArns; /**

The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter can be used only when the Attribute parameter is launchPermission.

*/ @property (nonatomic, strong) NSArray * _Nullable organizationalUnitArns; /**

Not supported.

*/ @property (nonatomic, strong) NSArray * _Nullable productCodes; /**

The user groups. This parameter can be used only when the Attribute parameter is launchPermission.

*/ @property (nonatomic, strong) NSArray * _Nullable userGroups; /**

The Amazon Web Services account IDs. This parameter can be used only when the Attribute parameter is launchPermission.

*/ @property (nonatomic, strong) NSArray * _Nullable userIds; /**

The value of the attribute being modified. This parameter can be used only when the Attribute parameter is description or imdsSupport.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /** */ @interface AWSEC2ModifyInstanceAttributeRequest : AWSRequest /**

The name of the attribute to modify.

You can modify the following attributes only: disableApiTermination | instanceType | kernel | ramdisk | instanceInitiatedShutdownBehavior | blockDeviceMapping | userData | sourceDestCheck | groupSet | ebsOptimized | sriovNetSupport | enaSupport | nvmeSupport | disableApiStop | enclaveOptions

*/ @property (nonatomic, assign) AWSEC2InstanceAttributeName attribute; /**

Modifies the DeleteOnTermination attribute for volumes that are currently attached. The volume must be owned by the caller. If no value is specified for DeleteOnTermination, the default is true and the volume is deleted when the instance is terminated.

To add instance store volumes to an Amazon EBS-backed instance, you must add them when you launch the instance. For more information, see Update the block device mapping when launching an instance in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

Indicates whether an instance is enabled for stop protection. For more information, see Stop Protection.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable disableApiStop; /**

If the value is true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use this parameter for Spot Instances.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable disableApiTermination; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Specifies whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable ebsOptimized; /**

Set to true to enable enhanced networking with ENA for the instance.

This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable enaSupport; /**

Replaces the security groups of the instance with the specified security groups. You must specify the ID of at least one security group, even if it's just the default security group for the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

Specifies whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable instanceInitiatedShutdownBehavior; /**

Changes the instance type to the specified value. For more information, see Instance types in the Amazon EC2 User Guide. If the instance type is not valid, the error returned is InvalidInstanceAttributeValue.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable instanceType; /**

Changes the instance's kernel to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable kernel; /**

Changes the instance's RAM disk to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable ramdisk; /**

Enable or disable source/destination checks, which ensure that the instance is either the source or the destination of any traffic that it receives. If the value is true, source/destination checks are enabled; otherwise, they are disabled. The default value is true. You must disable source/destination checks if the instance runs services such as network address translation, routing, or firewalls.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable sourceDestCheck; /**

Set to simple to enable enhanced networking with the Intel 82599 Virtual Function interface for the instance.

There is no way to disable enhanced networking with the Intel 82599 Virtual Function interface at this time.

This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable sriovNetSupport; /**

Changes the instance's user data to the specified value. If you are using an Amazon Web Services SDK or command line tool, base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide base64-encoded text.

*/ @property (nonatomic, strong) AWSEC2BlobAttributeValue * _Nullable userData; /**

A new value for the attribute. Use only with the kernel, ramdisk, userData, disableApiTermination, or instanceInitiatedShutdownBehavior attribute.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /** */ @interface AWSEC2ModifyInstanceCapacityReservationAttributesRequest : AWSRequest /**

Information about the Capacity Reservation targeting option.

*/ @property (nonatomic, strong) AWSEC2CapacityReservationSpecification * _Nullable capacityReservationSpecification; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance to be modified.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /** */ @interface AWSEC2ModifyInstanceCapacityReservationAttributesResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ModifyInstanceCreditSpecificationRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Information about the credit option for CPU usage.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceCreditSpecifications; @end /** */ @interface AWSEC2ModifyInstanceCreditSpecificationResult : AWSModel /**

Information about the instances whose credit option for CPU usage was successfully modified.

*/ @property (nonatomic, strong) NSArray * _Nullable successfulInstanceCreditSpecifications; /**

Information about the instances whose credit option for CPU usage was not modified.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessfulInstanceCreditSpecifications; @end /** */ @interface AWSEC2ModifyInstanceEventStartTimeRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the event whose date and time you are modifying.

*/ @property (nonatomic, strong) NSString * _Nullable instanceEventId; /**

The ID of the instance with the scheduled event.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The new date and time when the event will take place.

*/ @property (nonatomic, strong) NSDate * _Nullable notBefore; @end /** */ @interface AWSEC2ModifyInstanceEventStartTimeResult : AWSModel /**

Information about the event.

*/ @property (nonatomic, strong) AWSEC2InstanceStatusEvent * _Nullable event; @end /** */ @interface AWSEC2ModifyInstanceEventWindowRequest : AWSRequest /**

The cron expression of the event window, for example, * 0-4,20-23 * * 1,5.

Constraints:

  • Only hour and day of the week values are supported.

  • For day of the week values, you can specify either integers 0 through 6, or alternative single values SUN through SAT.

  • The minute, month, and year must be specified by *.

  • The hour value must be one or a multiple range, for example, 0-4 or 0-4,20-23.

  • Each hour range must be >= 2 hours, for example, 0-2 or 20-23.

  • The event window must be >= 4 hours. The combined total time ranges in the event window must be >= 4 hours.

For more information about cron expressions, see cron on the Wikipedia website.

*/ @property (nonatomic, strong) NSString * _Nullable cronExpression; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the event window.

*/ @property (nonatomic, strong) NSString * _Nullable instanceEventWindowId; /**

The name of the event window.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The time ranges of the event window.

*/ @property (nonatomic, strong) NSArray * _Nullable timeRanges; @end /** */ @interface AWSEC2ModifyInstanceEventWindowResult : AWSModel /**

Information about the event window.

*/ @property (nonatomic, strong) AWSEC2InstanceEventWindow * _Nullable instanceEventWindow; @end /** */ @interface AWSEC2ModifyInstanceMaintenanceOptionsRequest : AWSRequest /**

Disables the automatic recovery behavior of your instance or sets it to default.

*/ @property (nonatomic, assign) AWSEC2InstanceAutoRecoveryState autoRecovery; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /** */ @interface AWSEC2ModifyInstanceMaintenanceOptionsResult : AWSModel /**

Provides information on the current automatic recovery behavior of your instance.

*/ @property (nonatomic, assign) AWSEC2InstanceAutoRecoveryState autoRecovery; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /** */ @interface AWSEC2ModifyInstanceMetadataOptionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Enables or disables the HTTP metadata endpoint on your instances. If this parameter is not specified, the existing state is maintained.

If you specify a value of disabled, you cannot access your instance metadata.

*/ @property (nonatomic, assign) AWSEC2InstanceMetadataEndpointState httpEndpoint; /**

Enables or disables the IPv6 endpoint for the instance metadata service. Applies only if you enabled the HTTP metadata endpoint.

*/ @property (nonatomic, assign) AWSEC2InstanceMetadataProtocolState httpProtocolIpv6; /**

The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. If no parameter is specified, the existing state is maintained.

Possible values: Integers from 1 to 64

*/ @property (nonatomic, strong) NSNumber * _Nullable httpPutResponseHopLimit; /**

IMDSv2 uses token-backed sessions. Set the use of HTTP tokens to optional (in other words, set the use of IMDSv2 to optional) or required (in other words, set the use of IMDSv2 to required).

  • optional - When IMDSv2 is optional, you can choose to retrieve instance metadata with or without a session token in your request. If you retrieve the IAM role credentials without a token, the IMDSv1 role credentials are returned. If you retrieve the IAM role credentials using a valid session token, the IMDSv2 role credentials are returned.

  • required - When IMDSv2 is required, you must send a session token with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.

Default: optional

*/ @property (nonatomic, assign) AWSEC2HttpTokensState httpTokens; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

Set to enabled to allow access to instance tags from the instance metadata. Set to disabled to turn off access to instance tags from the instance metadata. For more information, see Work with instance tags using the instance metadata.

Default: disabled

*/ @property (nonatomic, assign) AWSEC2InstanceMetadataTagsState instanceMetadataTags; @end /** */ @interface AWSEC2ModifyInstanceMetadataOptionsResult : AWSModel /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The metadata options for the instance.

*/ @property (nonatomic, strong) AWSEC2InstanceMetadataOptionsResponse * _Nullable instanceMetadataOptions; @end /** */ @interface AWSEC2ModifyInstancePlacementRequest : AWSRequest /**

The affinity setting for the instance.

*/ @property (nonatomic, assign) AWSEC2Affinity affinity; /**

The Group Id of a placement group. You must specify the Placement Group Group Id to launch an instance in a shared placement group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The name of the placement group in which to place the instance. For spread placement groups, the instance must have a tenancy of default. For cluster and partition placement groups, the instance must have a tenancy of default or dedicated.

To remove an instance from a placement group, specify an empty string ("").

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The ID of the Dedicated Host with which to associate the instance.

*/ @property (nonatomic, strong) NSString * _Nullable hostId; /**

The ARN of the host resource group in which to place the instance. The instance must have a tenancy of host to specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable hostResourceGroupArn; /**

The ID of the instance that you are modifying.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The number of the partition in which to place the instance. Valid only if the placement group strategy is set to partition.

*/ @property (nonatomic, strong) NSNumber * _Nullable partitionNumber; /**

The tenancy for the instance.

For T3 instances, you must launch the instance on a Dedicated Host to use a tenancy of host. You can't change the tenancy from host to dedicated or default. Attempting to make one of these unsupported tenancy changes results in an InvalidRequest error code.

*/ @property (nonatomic, assign) AWSEC2HostTenancy tenancy; @end /** */ @interface AWSEC2ModifyInstancePlacementResult : AWSModel /**

Is true if the request succeeds, and an error otherwise.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ModifyIpamPoolRequest : AWSRequest /**

Add tag allocation rules to a pool. For more information about allocation rules, see Create a top-level pool in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable addAllocationResourceTags; /**

The default netmask length for allocations added to this pool. If, for example, the CIDR assigned to this pool is 10.0.0.0/8 and you enter 16 here, new allocations will default to 10.0.0.0/16.

*/ @property (nonatomic, strong) NSNumber * _Nullable allocationDefaultNetmaskLength; /**

The maximum netmask length possible for CIDR allocations in this IPAM pool to be compliant. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128.The maximum netmask length must be greater than the minimum netmask length.

*/ @property (nonatomic, strong) NSNumber * _Nullable allocationMaxNetmaskLength; /**

The minimum netmask length required for CIDR allocations in this IPAM pool to be compliant. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask lengths for IPv6 addresses are 0 - 128. The minimum netmask length must be less than the maximum netmask length.

*/ @property (nonatomic, strong) NSNumber * _Nullable allocationMinNetmaskLength; /**

If true, IPAM will continuously look for resources within the CIDR range of this pool and automatically import them as allocations into your IPAM. The CIDRs that will be allocated for these resources must not already be allocated to other resources in order for the import to succeed. IPAM will import a CIDR regardless of its compliance with the pool's allocation rules, so a resource might be imported and subsequently marked as noncompliant. If IPAM discovers multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of them only.

A locale must be set on the pool for this feature to work.

*/ @property (nonatomic, strong) NSNumber * _Nullable autoImport; /**

Clear the default netmask length allocation rule for this pool.

*/ @property (nonatomic, strong) NSNumber * _Nullable clearAllocationDefaultNetmaskLength; /**

The description of the IPAM pool you want to modify.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the IPAM pool you want to modify.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; /**

Remove tag allocation rules from a pool.

*/ @property (nonatomic, strong) NSArray * _Nullable removeAllocationResourceTags; @end /** */ @interface AWSEC2ModifyIpamPoolResult : AWSModel /**

The results of the modification.

*/ @property (nonatomic, strong) AWSEC2IpamPool * _Nullable ipamPool; @end /** */ @interface AWSEC2ModifyIpamRequest : AWSRequest /**

Choose the operating Regions for the IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable addOperatingRegions; /**

The description of the IPAM you want to modify.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the IPAM you want to modify.

*/ @property (nonatomic, strong) NSString * _Nullable ipamId; /**

The operating Regions to remove.

*/ @property (nonatomic, strong) NSArray * _Nullable removeOperatingRegions; @end /** */ @interface AWSEC2ModifyIpamResourceCidrRequest : AWSRequest /**

The ID of the current scope that the resource CIDR is in.

*/ @property (nonatomic, strong) NSString * _Nullable currentIpamScopeId; /**

The ID of the scope you want to transfer the resource CIDR to.

*/ @property (nonatomic, strong) NSString * _Nullable destinationIpamScopeId; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Determines if the resource is monitored by IPAM. If a resource is monitored, the resource is discovered by IPAM and you can view details about the resource’s CIDR.

*/ @property (nonatomic, strong) NSNumber * _Nullable monitored; /**

The CIDR of the resource you want to modify.

*/ @property (nonatomic, strong) NSString * _Nullable resourceCidr; /**

The ID of the resource you want to modify.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The Amazon Web Services Region of the resource you want to modify.

*/ @property (nonatomic, strong) NSString * _Nullable resourceRegion; @end /** */ @interface AWSEC2ModifyIpamResourceCidrResult : AWSModel /**

The CIDR of the resource.

*/ @property (nonatomic, strong) AWSEC2IpamResourceCidr * _Nullable ipamResourceCidr; @end /** */ @interface AWSEC2ModifyIpamResourceDiscoveryRequest : AWSRequest /**

Add operating Regions to the resource discovery. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

*/ @property (nonatomic, strong) NSArray * _Nullable addOperatingRegions; /**

A resource discovery description.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

A resource discovery ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamResourceDiscoveryId; /**

Remove operating Regions.

*/ @property (nonatomic, strong) NSArray * _Nullable removeOperatingRegions; @end /** */ @interface AWSEC2ModifyIpamResourceDiscoveryResult : AWSModel /**

A resource discovery.

*/ @property (nonatomic, strong) AWSEC2IpamResourceDiscovery * _Nullable ipamResourceDiscovery; @end /** */ @interface AWSEC2ModifyIpamResult : AWSModel /**

The results of the modification.

*/ @property (nonatomic, strong) AWSEC2Ipam * _Nullable ipam; @end /** */ @interface AWSEC2ModifyIpamScopeRequest : AWSRequest /**

The description of the scope you want to modify.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the scope you want to modify.

*/ @property (nonatomic, strong) NSString * _Nullable ipamScopeId; @end /** */ @interface AWSEC2ModifyIpamScopeResult : AWSModel /**

The results of the modification.

*/ @property (nonatomic, strong) AWSEC2IpamScope * _Nullable ipamScope; @end /** */ @interface AWSEC2ModifyLaunchTemplateRequest : AWSRequest /**

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring idempotency.

Constraint: Maximum 128 ASCII characters.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The version number of the launch template to set as the default version.

*/ @property (nonatomic, strong) NSString * _Nullable defaultVersion; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the launch template.

You must specify either the LaunchTemplateId or the LaunchTemplateName, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateId; /**

The name of the launch template.

You must specify either the LaunchTemplateName or the LaunchTemplateId, but not both.

*/ @property (nonatomic, strong) NSString * _Nullable launchTemplateName; @end /** */ @interface AWSEC2ModifyLaunchTemplateResult : AWSModel /**

Information about the launch template.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplate * _Nullable launchTemplate; @end /** */ @interface AWSEC2ModifyLocalGatewayRouteRequest : AWSRequest /**

The CIDR block used for destination matches. The value that you provide must match the CIDR of an existing route in the table.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The ID of the prefix list. Use a prefix list in place of DestinationCidrBlock. You cannot use DestinationPrefixListId and DestinationCidrBlock in the same request.

*/ @property (nonatomic, strong) NSString * _Nullable destinationPrefixListId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; /**

The ID of the virtual interface group.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayVirtualInterfaceGroupId; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; @end /** */ @interface AWSEC2ModifyLocalGatewayRouteResult : AWSModel /**

Information about the local gateway route table.

*/ @property (nonatomic, strong) AWSEC2LocalGatewayRoute * _Nullable route; @end /** */ @interface AWSEC2ModifyManagedPrefixListRequest : AWSRequest /**

One or more entries to add to the prefix list.

*/ @property (nonatomic, strong) NSArray * _Nullable addEntries; /**

The current version of the prefix list.

*/ @property (nonatomic, strong) NSNumber * _Nullable currentVersion; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of entries for the prefix list. You cannot modify the entries of a prefix list and modify the size of a prefix list at the same time.

If any of the resources that reference the prefix list cannot support the new maximum size, the modify operation fails. Check the state message for the IDs of the first ten resources that do not support the new maximum size.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxEntries; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

A name for the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListName; /**

One or more entries to remove from the prefix list.

*/ @property (nonatomic, strong) NSArray * _Nullable removeEntries; @end /** */ @interface AWSEC2ModifyManagedPrefixListResult : AWSModel /**

Information about the prefix list.

*/ @property (nonatomic, strong) AWSEC2ManagedPrefixList * _Nullable prefixList; @end /**

Contains the parameters for ModifyNetworkInterfaceAttribute.

Required parameters: [NetworkInterfaceId] */ @interface AWSEC2ModifyNetworkInterfaceAttributeRequest : AWSRequest /**

Information about the interface attachment. If modifying the delete on termination attribute, you must specify the ID of the interface attachment.

*/ @property (nonatomic, strong) AWSEC2NetworkInterfaceAttachmentChanges * _Nullable attachment; /**

A description for the network interface.

*/ @property (nonatomic, strong) AWSEC2AttributeValue * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Updates the ENA Express configuration for the network interface that’s attached to the instance.

*/ @property (nonatomic, strong) AWSEC2EnaSrdSpecification * _Nullable enaSrdSpecification; /**

Changes the security groups for the network interface. The new set of groups you specify replaces the current set. You must specify at least one group, even if it's just the default security group in the VPC. You must specify the ID of the security group, not the name.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

Enable or disable source/destination checks, which ensure that the instance is either the source or the destination of any traffic that it receives. If the value is true, source/destination checks are enabled; otherwise, they are disabled. The default value is true. You must disable source/destination checks if the instance runs services such as network address translation, routing, or firewalls.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable sourceDestCheck; @end /** */ @interface AWSEC2ModifyPrivateDnsNameOptionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsAAAARecord; /**

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsARecord; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance IPv4 address or the instance ID.

*/ @property (nonatomic, assign) AWSEC2HostnameType privateDnsHostnameType; @end /** */ @interface AWSEC2ModifyPrivateDnsNameOptionsResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /**

Contains the parameters for ModifyReservedInstances.

Required parameters: [ReservedInstancesIds, TargetConfigurations] */ @interface AWSEC2ModifyReservedInstancesRequest : AWSRequest /**

A unique, case-sensitive token you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The IDs of the Reserved Instances to modify.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstancesIds; /**

The configuration settings for the Reserved Instances to modify.

*/ @property (nonatomic, strong) NSArray * _Nullable targetConfigurations; @end /**

Contains the output of ModifyReservedInstances.

*/ @interface AWSEC2ModifyReservedInstancesResult : AWSModel /**

The ID for the modification.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesModificationId; @end /** */ @interface AWSEC2ModifySecurityGroupRulesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

Information about the security group properties to update.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupRules; @end /** */ @interface AWSEC2ModifySecurityGroupRulesResult : AWSModel /**

Returns true if the request succeeds; otherwise, returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ModifySnapshotAttributeRequest : AWSRequest /**

The snapshot attribute to modify. Only volume creation permissions can be modified.

*/ @property (nonatomic, assign) AWSEC2SnapshotAttributeName attribute; /**

A JSON representation of the snapshot attribute modification.

*/ @property (nonatomic, strong) AWSEC2CreateVolumePermissionModifications * _Nullable createVolumePermission; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The group to modify for the snapshot.

*/ @property (nonatomic, strong) NSArray * _Nullable groupNames; /**

The type of operation to perform to the attribute.

*/ @property (nonatomic, assign) AWSEC2OperationType operationType; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The account ID to modify for the snapshot.

*/ @property (nonatomic, strong) NSArray * _Nullable userIds; @end /** */ @interface AWSEC2ModifySnapshotTierRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The name of the storage tier. You must specify archive.

*/ @property (nonatomic, assign) AWSEC2TargetStorageTier storageTier; @end /** */ @interface AWSEC2ModifySnapshotTierResult : AWSModel /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The date and time when the archive process was started.

*/ @property (nonatomic, strong) NSDate * _Nullable tieringStartTime; @end /**

Contains the parameters for ModifySpotFleetRequest.

Required parameters: [SpotFleetRequestId] */ @interface AWSEC2ModifySpotFleetRequestRequest : AWSRequest /**

Reserved.

*/ @property (nonatomic, strong) NSString * _Nullable context; /**

Indicates whether running instances should be terminated if the target capacity of the Spot Fleet request is decreased below the current size of the Spot Fleet.

Supported only for fleets of type maintain.

*/ @property (nonatomic, assign) AWSEC2ExcessCapacityTerminationPolicy excessCapacityTerminationPolicy; /**

The launch template and overrides. You can only use this parameter if you specified a launch template (LaunchTemplateConfigs) in your Spot Fleet request. If you specified LaunchSpecifications in your Spot Fleet request, then omit this parameter.

*/ @property (nonatomic, strong) NSArray * _Nullable launchTemplateConfigs; /**

The number of On-Demand Instances in the fleet.

*/ @property (nonatomic, strong) NSNumber * _Nullable onDemandTargetCapacity; /**

The ID of the Spot Fleet request.

*/ @property (nonatomic, strong) NSString * _Nullable spotFleetRequestId; /**

The size of the fleet.

*/ @property (nonatomic, strong) NSNumber * _Nullable targetCapacity; @end /**

Contains the output of ModifySpotFleetRequest.

*/ @interface AWSEC2ModifySpotFleetRequestResponse : AWSModel /**

If the request succeeds, the response returns true. If the request fails, no response is returned, and instead an error message is returned.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ModifySubnetAttributeRequest : AWSRequest /**

Specify true to indicate that network interfaces created in the specified subnet should be assigned an IPv6 address. This includes a network interface that's created when launching an instance into the subnet (the instance therefore receives an IPv6 address).

If you enable the IPv6 addressing feature for your subnet, your network interface or instance only receives an IPv6 address if it's created using version 2016-11-15 or later of the Amazon EC2 API.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable assignIpv6AddressOnCreation; /**

The customer-owned IPv4 address pool associated with the subnet.

You must set this value when you specify true for MapCustomerOwnedIpOnLaunch.

*/ @property (nonatomic, strong) NSString * _Nullable customerOwnedIpv4Pool; /**

Specify true to indicate that local network interfaces at the current position should be disabled.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable disableLniAtDeviceIndex; /**

Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet should return synthetic IPv6 addresses for IPv4-only destinations.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable enableDns64; /**

Indicates the device position for local network interfaces in this subnet. For example, 1 indicates local network interfaces in this subnet are the secondary network interface (eth1). A local network interface cannot be the primary network interface (eth0).

*/ @property (nonatomic, strong) NSNumber * _Nullable enableLniAtDeviceIndex; /**

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable enableResourceNameDnsAAAARecordOnLaunch; /**

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable enableResourceNameDnsARecordOnLaunch; /**

Specify true to indicate that network interfaces attached to instances created in the specified subnet should be assigned a customer-owned IPv4 address.

When this value is true, you must specify the customer-owned IP pool using CustomerOwnedIpv4Pool.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable mapCustomerOwnedIpOnLaunch; /**

Specify true to indicate that network interfaces attached to instances created in the specified subnet should be assigned a public IPv4 address.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable mapPublicIpOnLaunch; /**

The type of hostname to assign to instances in the subnet at launch. For IPv4-only and dual-stack (IPv4 and IPv6) subnets, an instance DNS name can be based on the instance IPv4 address (ip-name) or the instance ID (resource-name). For IPv6 only subnets, an instance DNS name must be based on the instance ID (resource-name).

*/ @property (nonatomic, assign) AWSEC2HostnameType privateDnsHostnameTypeOnLaunch; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /** */ @interface AWSEC2ModifyTrafficMirrorFilterNetworkServicesRequest : AWSRequest /**

The network service, for example Amazon DNS, that you want to mirror.

*/ @property (nonatomic, strong) NSArray * _Nullable addNetworkServices; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The network service, for example Amazon DNS, that you no longer want to mirror.

*/ @property (nonatomic, strong) NSArray * _Nullable removeNetworkServices; /**

The ID of the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterId; @end /** */ @interface AWSEC2ModifyTrafficMirrorFilterNetworkServicesResult : AWSModel /**

The Traffic Mirror filter that the network service is associated with.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorFilter * _Nullable trafficMirrorFilter; @end /** */ @interface AWSEC2ModifyTrafficMirrorFilterRuleRequest : AWSRequest /**

The description to assign to the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The destination CIDR block to assign to the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The destination ports that are associated with the Traffic Mirror rule.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorPortRangeRequest * _Nullable destinationPortRange; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The protocol, for example TCP, to assign to the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSNumber * _Nullable protocols; /**

The properties that you want to remove from the Traffic Mirror filter rule.

When you remove a property from a Traffic Mirror filter rule, the property is set to the default.

*/ @property (nonatomic, strong) NSArray * _Nullable removeFields; /**

The action to assign to the rule.

*/ @property (nonatomic, assign) AWSEC2TrafficMirrorRuleAction ruleAction; /**

The number of the Traffic Mirror rule. This number must be unique for each Traffic Mirror rule in a given direction. The rules are processed in ascending order by rule number.

*/ @property (nonatomic, strong) NSNumber * _Nullable ruleNumber; /**

The source CIDR block to assign to the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable sourceCidrBlock; /**

The port range to assign to the Traffic Mirror rule.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorPortRangeRequest * _Nullable sourcePortRange; /**

The type of traffic to assign to the rule.

*/ @property (nonatomic, assign) AWSEC2TrafficDirection trafficDirection; /**

The ID of the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterRuleId; @end /** */ @interface AWSEC2ModifyTrafficMirrorFilterRuleResult : AWSModel /**

Modifies a Traffic Mirror rule.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorFilterRule * _Nullable trafficMirrorFilterRule; @end /** */ @interface AWSEC2ModifyTrafficMirrorSessionRequest : AWSRequest /**

The description to assign to the Traffic Mirror session.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The number of bytes in each packet to mirror. These are bytes after the VXLAN header. To mirror a subset, set this to the length (in bytes) to mirror. For example, if you set this value to 100, then the first 100 bytes that meet the filter criteria are copied to the target. Do not specify this parameter when you want to mirror the entire packet.

*/ @property (nonatomic, strong) NSNumber * _Nullable packetLength; /**

The properties that you want to remove from the Traffic Mirror session.

When you remove a property from a Traffic Mirror session, the property is set to the default.

*/ @property (nonatomic, strong) NSArray * _Nullable removeFields; /**

The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.

Valid values are 1-32766.

*/ @property (nonatomic, strong) NSNumber * _Nullable sessionNumber; /**

The ID of the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterId; /**

The ID of the Traffic Mirror session.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorSessionId; /**

The Traffic Mirror target. The target must be in the same VPC as the source, or have a VPC peering connection with the source.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorTargetId; /**

The virtual network ID of the Traffic Mirror session.

*/ @property (nonatomic, strong) NSNumber * _Nullable virtualNetworkId; @end /** */ @interface AWSEC2ModifyTrafficMirrorSessionResult : AWSModel /**

Information about the Traffic Mirror session.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorSession * _Nullable trafficMirrorSession; @end /**

The transit gateway options.

*/ @interface AWSEC2ModifyTransitGatewayOptions : AWSModel /**

Adds IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for IPv4, or a size /64 CIDR block or larger for IPv6.

*/ @property (nonatomic, strong) NSArray * _Nullable addTransitGatewayCidrBlocks; /**

A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs.

The modify ASN operation is not allowed on a transit gateway with active BGP sessions. You must first delete all transit gateway attachments that have BGP configured prior to modifying the ASN on the transit gateway.

*/ @property (nonatomic, strong) NSNumber * _Nullable amazonSideAsn; /**

The ID of the default association route table.

*/ @property (nonatomic, strong) NSString * _Nullable associationDefaultRouteTableId; /**

Enable or disable automatic acceptance of attachment requests.

*/ @property (nonatomic, assign) AWSEC2AutoAcceptSharedAttachmentsValue autoAcceptSharedAttachments; /**

Enable or disable automatic association with the default association route table.

*/ @property (nonatomic, assign) AWSEC2DefaultRouteTableAssociationValue defaultRouteTableAssociation; /**

Enable or disable automatic propagation of routes to the default propagation route table.

*/ @property (nonatomic, assign) AWSEC2DefaultRouteTablePropagationValue defaultRouteTablePropagation; /**

Enable or disable DNS support.

*/ @property (nonatomic, assign) AWSEC2DnsSupportValue dnsSupport; /**

The ID of the default propagation route table.

*/ @property (nonatomic, strong) NSString * _Nullable propagationDefaultRouteTableId; /**

Removes CIDR blocks for the transit gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable removeTransitGatewayCidrBlocks; /**

Enable or disable Equal Cost Multipath Protocol support.

*/ @property (nonatomic, assign) AWSEC2VpnEcmpSupportValue vpnEcmpSupport; @end /** */ @interface AWSEC2ModifyTransitGatewayPrefixListReferenceRequest : AWSRequest /**

Indicates whether to drop traffic that matches this route.

*/ @property (nonatomic, strong) NSNumber * _Nullable blackhole; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The ID of the attachment to which traffic is routed.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2ModifyTransitGatewayPrefixListReferenceResult : AWSModel /**

Information about the prefix list reference.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPrefixListReference * _Nullable transitGatewayPrefixListReference; @end /** */ @interface AWSEC2ModifyTransitGatewayRequest : AWSRequest /**

The description for the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The options to modify.

*/ @property (nonatomic, strong) AWSEC2ModifyTransitGatewayOptions * _Nullable options; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; @end /** */ @interface AWSEC2ModifyTransitGatewayResult : AWSModel /**

Information about the transit gateway.

*/ @property (nonatomic, strong) AWSEC2TransitGateway * _Nullable transitGateway; @end /** */ @interface AWSEC2ModifyTransitGatewayVpcAttachmentRequest : AWSRequest /**

The IDs of one or more subnets to add. You can specify at most one subnet per Availability Zone.

*/ @property (nonatomic, strong) NSArray * _Nullable addSubnetIds; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The new VPC attachment options.

*/ @property (nonatomic, strong) AWSEC2ModifyTransitGatewayVpcAttachmentRequestOptions * _Nullable options; /**

The IDs of one or more subnets to remove.

*/ @property (nonatomic, strong) NSArray * _Nullable removeSubnetIds; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /**

Describes the options for a VPC attachment.

*/ @interface AWSEC2ModifyTransitGatewayVpcAttachmentRequestOptions : AWSModel /**

Enable or disable support for appliance mode. If enabled, a traffic flow between a source and destination uses the same Availability Zone for the VPC attachment for the lifetime of that flow. The default is disable.

*/ @property (nonatomic, assign) AWSEC2ApplianceModeSupportValue applianceModeSupport; /**

Enable or disable DNS support. The default is enable.

*/ @property (nonatomic, assign) AWSEC2DnsSupportValue dnsSupport; /**

Enable or disable IPv6 support. The default is enable.

*/ @property (nonatomic, assign) AWSEC2Ipv6SupportValue ipv6Support; @end /** */ @interface AWSEC2ModifyTransitGatewayVpcAttachmentResult : AWSModel /**

Information about the modified attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayVpcAttachment * _Nullable transitGatewayVpcAttachment; @end /**

Describes the options when modifying a Verified Access endpoint with the network-interface type.

*/ @interface AWSEC2ModifyVerifiedAccessEndpointEniOptions : AWSModel /**

The IP port number.

*/ @property (nonatomic, strong) NSNumber * _Nullable port; /**

The IP protocol.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessEndpointProtocol protocols; @end /**

Describes a load balancer when creating an Amazon Web Services Verified Access endpoint using the load-balancer type.

*/ @interface AWSEC2ModifyVerifiedAccessEndpointLoadBalancerOptions : AWSModel /**

The IP port number.

*/ @property (nonatomic, strong) NSNumber * _Nullable port; /**

The IP protocol.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessEndpointProtocol protocols; /**

The IDs of the subnets.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; @end /** */ @interface AWSEC2ModifyVerifiedAccessEndpointPolicyRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Verified Access policy document.

*/ @property (nonatomic, strong) NSString * _Nullable policyDocument; /**

The status of the Verified Access policy.

*/ @property (nonatomic, strong) NSNumber * _Nullable policyEnabled; /**

The ID of the Verified Access endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessEndpointId; @end /** */ @interface AWSEC2ModifyVerifiedAccessEndpointPolicyResult : AWSModel /**

The Verified Access policy document.

*/ @property (nonatomic, strong) NSString * _Nullable policyDocument; /**

The status of the Verified Access policy.

*/ @property (nonatomic, strong) NSNumber * _Nullable policyEnabled; @end /** */ @interface AWSEC2ModifyVerifiedAccessEndpointRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the Verified Access endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The load balancer details if creating the Verified Access endpoint as load-balancertype.

*/ @property (nonatomic, strong) AWSEC2ModifyVerifiedAccessEndpointLoadBalancerOptions * _Nullable loadBalancerOptions; /**

The network interface options.

*/ @property (nonatomic, strong) AWSEC2ModifyVerifiedAccessEndpointEniOptions * _Nullable networkInterfaceOptions; /**

The ID of the Verified Access endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessEndpointId; /**

The ID of the Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessGroupId; @end /** */ @interface AWSEC2ModifyVerifiedAccessEndpointResult : AWSModel /**

The Verified Access endpoint details.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessEndpoint * _Nullable verifiedAccessEndpoint; @end /** */ @interface AWSEC2ModifyVerifiedAccessGroupPolicyRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Verified Access policy document.

*/ @property (nonatomic, strong) NSString * _Nullable policyDocument; /**

The status of the Verified Access policy.

*/ @property (nonatomic, strong) NSNumber * _Nullable policyEnabled; /**

The ID of the Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessGroupId; @end /** */ @interface AWSEC2ModifyVerifiedAccessGroupPolicyResult : AWSModel /**

The Verified Access policy document.

*/ @property (nonatomic, strong) NSString * _Nullable policyDocument; /**

The status of the Verified Access policy.

*/ @property (nonatomic, strong) NSNumber * _Nullable policyEnabled; @end /** */ @interface AWSEC2ModifyVerifiedAccessGroupRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessGroupId; /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; @end /** */ @interface AWSEC2ModifyVerifiedAccessGroupResult : AWSModel /**

Details of Verified Access group.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessGroup * _Nullable verifiedAccessGroup; @end /** */ @interface AWSEC2ModifyVerifiedAccessInstanceLoggingConfigurationRequest : AWSRequest /**

The configuration options for Verified Access instances.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessLogOptions * _Nullable accessLogs; /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; @end /** */ @interface AWSEC2ModifyVerifiedAccessInstanceLoggingConfigurationResult : AWSModel /**

The logging configuration for the Verified Access instance.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessInstanceLoggingConfiguration * _Nullable loggingConfiguration; @end /** */ @interface AWSEC2ModifyVerifiedAccessInstanceRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; @end /** */ @interface AWSEC2ModifyVerifiedAccessInstanceResult : AWSModel /**

The ID of the Verified Access instance.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessInstance * _Nullable verifiedAccessInstance; @end /**

Options for an OpenID Connect-compatible user-identity trust provider.

*/ @interface AWSEC2ModifyVerifiedAccessTrustProviderOidcOptions : AWSModel /**

The OIDC authorization endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable authorizationEndpoint; /**

The client identifier.

*/ @property (nonatomic, strong) NSString * _Nullable clientId; /**

The client secret.

*/ @property (nonatomic, strong) NSString * _Nullable clientSecret; /**

The OIDC issuer.

*/ @property (nonatomic, strong) NSString * _Nullable issuer; /**

OpenID Connect (OIDC) scopes are used by an application during authentication to authorize access to a user's details. Each scope returns a specific set of user attributes.

*/ @property (nonatomic, strong) NSString * _Nullable scope; /**

The OIDC token endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable tokenEndpoint; /**

The OIDC user info endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable userInfoEndpoint; @end /** */ @interface AWSEC2ModifyVerifiedAccessTrustProviderRequest : AWSRequest /**

A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A description for the Verified Access trust provider.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The options for an OpenID Connect-compatible user-identity trust provider.

*/ @property (nonatomic, strong) AWSEC2ModifyVerifiedAccessTrustProviderOidcOptions * _Nullable oidcOptions; /**

The ID of the Verified Access trust provider.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessTrustProviderId; @end /** */ @interface AWSEC2ModifyVerifiedAccessTrustProviderResult : AWSModel /**

The ID of the Verified Access trust provider.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessTrustProvider * _Nullable verifiedAccessTrustProvider; @end /** */ @interface AWSEC2ModifyVolumeAttributeRequest : AWSRequest /**

Indicates whether the volume should be auto-enabled for I/O operations.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable autoEnableIO; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /** */ @interface AWSEC2ModifyVolumeRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The target IOPS rate of the volume. This parameter is valid only for gp3, io1, and io2 volumes.

The following are the supported values for each volume type:

  • gp3: 3,000-16,000 IOPS

  • io1: 100-64,000 IOPS

  • io2: 100-64,000 IOPS

Default: The existing value is retained if you keep the same volume type. If you change the volume type to io1, io2, or gp3, the default is 3,000.

*/ @property (nonatomic, strong) NSNumber * _Nullable iops; /**

Specifies whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, you can attach the volume to up to 16 Nitro-based instances in the same Availability Zone. This parameter is supported with io1 and io2 volumes only. For more information, see Amazon EBS Multi-Attach in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable multiAttachEnabled; /**

The target size of the volume, in GiB. The target volume size must be greater than or equal to the existing size of the volume.

The following are the supported volumes sizes for each volume type:

  • gp2 and gp3: 1-16,384

  • io1 and io2: 4-16,384

  • st1 and sc1: 125-16,384

  • standard: 1-1,024

Default: The existing size is retained.

*/ @property (nonatomic, strong) NSNumber * _Nullable size; /**

The target throughput of the volume, in MiB/s. This parameter is valid only for gp3 volumes. The maximum value is 1,000.

Default: The existing value is retained if the source and target volume type is gp3. Otherwise, the default value is 125.

Valid Range: Minimum value of 125. Maximum value of 1000.

*/ @property (nonatomic, strong) NSNumber * _Nullable throughput; /**

The ID of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; /**

The target EBS volume type of the volume. For more information, see Amazon EBS volume types in the Amazon Elastic Compute Cloud User Guide.

Default: The existing type is retained.

*/ @property (nonatomic, assign) AWSEC2VolumeType volumeType; @end /** */ @interface AWSEC2ModifyVolumeResult : AWSModel /**

Information about the volume modification.

*/ @property (nonatomic, strong) AWSEC2VolumeModification * _Nullable volumeModification; @end /** */ @interface AWSEC2ModifyVpcAttributeRequest : AWSRequest /**

Indicates whether the instances launched in the VPC get DNS hostnames. If enabled, instances in the VPC get DNS hostnames; otherwise, they do not.

You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute. You can only enable DNS hostnames if you've enabled DNS support.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable enableDnsHostnames; /**

Indicates whether the DNS resolution is supported for the VPC. If enabled, queries to the Amazon provided DNS server at the 169.254.169.253 IP address, or the reserved IP address at the base of the VPC network range "plus two" succeed. If disabled, the Amazon provided DNS service in the VPC that resolves public DNS hostnames to IP addresses is not enabled.

You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable enableDnsSupport; /**

Indicates whether Network Address Usage metrics are enabled for your VPC.

*/ @property (nonatomic, strong) AWSEC2AttributeBooleanValue * _Nullable enableNetworkAddressUsageMetrics; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2ModifyVpcEndpointConnectionNotificationRequest : AWSRequest /**

The events for the endpoint. Valid values are Accept, Connect, Delete, and Reject.

*/ @property (nonatomic, strong) NSArray * _Nullable connectionEvents; /**

The ARN for the SNS topic for the notification.

*/ @property (nonatomic, strong) NSString * _Nullable connectionNotificationArn; /**

The ID of the notification.

*/ @property (nonatomic, strong) NSString * _Nullable connectionNotificationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2ModifyVpcEndpointConnectionNotificationResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returnValue; @end /** */ @interface AWSEC2ModifyVpcEndpointRequest : AWSRequest /**

(Gateway endpoint) The IDs of the route tables to associate with the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable addRouteTableIds; /**

(Interface endpoint) The IDs of the security groups to associate with the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable addSecurityGroupIds; /**

(Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to serve the endpoint. For a Gateway Load Balancer endpoint, you can specify only one subnet.

*/ @property (nonatomic, strong) NSArray * _Nullable addSubnetIds; /**

The DNS options for the endpoint.

*/ @property (nonatomic, strong) AWSEC2DnsOptionsSpecification * _Nullable dnsOptions; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IP address type for the endpoint.

*/ @property (nonatomic, assign) AWSEC2IpAddressType ipAddressType; /**

(Interface and gateway endpoints) A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format.

*/ @property (nonatomic, strong) NSString * _Nullable policyDocument; /**

(Interface endpoint) Indicates whether a private hosted zone is associated with the VPC.

*/ @property (nonatomic, strong) NSNumber * _Nullable privateDnsEnabled; /**

(Gateway endpoint) The IDs of the route tables to disassociate from the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable removeRouteTableIds; /**

(Interface endpoint) The IDs of the security groups to disassociate from the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable removeSecurityGroupIds; /**

(Interface endpoint) The IDs of the subnets from which to remove the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable removeSubnetIds; /**

(Gateway endpoint) Specify true to reset the policy document to the default policy. The default policy allows full access to the service.

*/ @property (nonatomic, strong) NSNumber * _Nullable resetPolicy; /**

The ID of the endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable vpcEndpointId; @end /** */ @interface AWSEC2ModifyVpcEndpointResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ModifyVpcEndpointServiceConfigurationRequest : AWSRequest /**

Indicates whether requests to create an endpoint to your service must be accepted.

*/ @property (nonatomic, strong) NSNumber * _Nullable acceptanceRequired; /**

The Amazon Resource Names (ARNs) of Gateway Load Balancers to add to your service configuration.

*/ @property (nonatomic, strong) NSArray * _Nullable addGatewayLoadBalancerArns; /**

The Amazon Resource Names (ARNs) of Network Load Balancers to add to your service configuration.

*/ @property (nonatomic, strong) NSArray * _Nullable addNetworkLoadBalancerArns; /**

The IP address types to add to your service configuration.

*/ @property (nonatomic, strong) NSArray * _Nullable addSupportedIpAddressTypes; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

(Interface endpoint configuration) The private DNS name to assign to the endpoint service.

*/ @property (nonatomic, strong) NSString * _Nullable privateDnsName; /**

The Amazon Resource Names (ARNs) of Gateway Load Balancers to remove from your service configuration.

*/ @property (nonatomic, strong) NSArray * _Nullable removeGatewayLoadBalancerArns; /**

The Amazon Resource Names (ARNs) of Network Load Balancers to remove from your service configuration.

*/ @property (nonatomic, strong) NSArray * _Nullable removeNetworkLoadBalancerArns; /**

(Interface endpoint configuration) Removes the private DNS name of the endpoint service.

*/ @property (nonatomic, strong) NSNumber * _Nullable removePrivateDnsName; /**

The IP address types to remove from your service configuration.

*/ @property (nonatomic, strong) NSArray * _Nullable removeSupportedIpAddressTypes; /**

The ID of the service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; @end /** */ @interface AWSEC2ModifyVpcEndpointServiceConfigurationResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ModifyVpcEndpointServicePayerResponsibilityRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The entity that is responsible for the endpoint costs. The default is the endpoint owner. If you set the payer responsibility to the service owner, you cannot set it back to the endpoint owner.

*/ @property (nonatomic, assign) AWSEC2PayerResponsibility payerResponsibility; /**

The ID of the service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; @end /** */ @interface AWSEC2ModifyVpcEndpointServicePayerResponsibilityResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returnValue; @end /** */ @interface AWSEC2ModifyVpcEndpointServicePermissionsRequest : AWSRequest /**

The Amazon Resource Names (ARN) of the principals. Permissions are granted to the principals in this list. To grant permissions to all principals, specify an asterisk (*).

*/ @property (nonatomic, strong) NSArray * _Nullable addAllowedPrincipals; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Amazon Resource Names (ARN) of the principals. Permissions are revoked for principals in this list.

*/ @property (nonatomic, strong) NSArray * _Nullable removeAllowedPrincipals; /**

The ID of the service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; @end /** */ @interface AWSEC2ModifyVpcEndpointServicePermissionsResult : AWSModel /**

Information about the added principals.

*/ @property (nonatomic, strong) NSArray * _Nullable addedPrincipals; /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returnValue; @end /** */ @interface AWSEC2ModifyVpcPeeringConnectionOptionsRequest : AWSRequest /**

The VPC peering connection options for the accepter VPC.

*/ @property (nonatomic, strong) AWSEC2PeeringConnectionOptionsRequest * _Nullable accepterPeeringConnectionOptions; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The VPC peering connection options for the requester VPC.

*/ @property (nonatomic, strong) AWSEC2PeeringConnectionOptionsRequest * _Nullable requesterPeeringConnectionOptions; /**

The ID of the VPC peering connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /** */ @interface AWSEC2ModifyVpcPeeringConnectionOptionsResult : AWSModel /**

Information about the VPC peering connection options for the accepter VPC.

*/ @property (nonatomic, strong) AWSEC2PeeringConnectionOptions * _Nullable accepterPeeringConnectionOptions; /**

Information about the VPC peering connection options for the requester VPC.

*/ @property (nonatomic, strong) AWSEC2PeeringConnectionOptions * _Nullable requesterPeeringConnectionOptions; @end /** */ @interface AWSEC2ModifyVpcTenancyRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The instance tenancy attribute for the VPC.

*/ @property (nonatomic, assign) AWSEC2VpcTenancy instanceTenancy; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2ModifyVpcTenancyResult : AWSModel /**

Returns true if the request succeeds; otherwise, returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returnValue; @end /** */ @interface AWSEC2ModifyVpnConnectionOptionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.

Default: 0.0.0.0/0

*/ @property (nonatomic, strong) NSString * _Nullable localIpv4NetworkCidr; /**

The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.

Default: ::/0

*/ @property (nonatomic, strong) NSString * _Nullable localIpv6NetworkCidr; /**

The IPv4 CIDR on the Amazon Web Services side of the VPN connection.

Default: 0.0.0.0/0

*/ @property (nonatomic, strong) NSString * _Nullable remoteIpv4NetworkCidr; /**

The IPv6 CIDR on the Amazon Web Services side of the VPN connection.

Default: ::/0

*/ @property (nonatomic, strong) NSString * _Nullable remoteIpv6NetworkCidr; /**

The ID of the Site-to-Site VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; @end /** */ @interface AWSEC2ModifyVpnConnectionOptionsResult : AWSModel /**

Information about the VPN connection.

*/ @property (nonatomic, strong) AWSEC2VpnConnection * _Nullable vpnConnection; @end /** */ @interface AWSEC2ModifyVpnConnectionRequest : AWSRequest /**

The ID of the customer gateway at your end of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable customerGatewayId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; /**

The ID of the virtual private gateway at the Amazon Web Services side of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnGatewayId; @end /** */ @interface AWSEC2ModifyVpnConnectionResult : AWSModel /**

Information about the VPN connection.

*/ @property (nonatomic, strong) AWSEC2VpnConnection * _Nullable vpnConnection; @end /** */ @interface AWSEC2ModifyVpnTunnelCertificateRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Amazon Web Services Site-to-Site VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; /**

The external IP address of the VPN tunnel.

*/ @property (nonatomic, strong) NSString * _Nullable vpnTunnelOutsideIpAddress; @end /** */ @interface AWSEC2ModifyVpnTunnelCertificateResult : AWSModel /**

Information about the VPN connection.

*/ @property (nonatomic, strong) AWSEC2VpnConnection * _Nullable vpnConnection; @end /** */ @interface AWSEC2ModifyVpnTunnelOptionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Choose whether or not to trigger immediate tunnel replacement.

Valid values: True | False

*/ @property (nonatomic, strong) NSNumber * _Nullable skipTunnelReplacement; /**

The tunnel options to modify.

*/ @property (nonatomic, strong) AWSEC2ModifyVpnTunnelOptionsSpecification * _Nullable tunnelOptions; /**

The ID of the Amazon Web Services Site-to-Site VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; /**

The external IP address of the VPN tunnel.

*/ @property (nonatomic, strong) NSString * _Nullable vpnTunnelOutsideIpAddress; @end /** */ @interface AWSEC2ModifyVpnTunnelOptionsResult : AWSModel /**

Information about the VPN connection.

*/ @property (nonatomic, strong) AWSEC2VpnConnection * _Nullable vpnConnection; @end /**

The Amazon Web Services Site-to-Site VPN tunnel options to modify.

*/ @interface AWSEC2ModifyVpnTunnelOptionsSpecification : AWSModel /**

The action to take after DPD timeout occurs. Specify restart to restart the IKE initiation. Specify clear to end the IKE session.

Valid Values: clear | none | restart

Default: clear

*/ @property (nonatomic, strong) NSString * _Nullable DPDTimeoutAction; /**

The number of seconds after which a DPD timeout occurs.

Constraints: A value greater than or equal to 30.

Default: 30

*/ @property (nonatomic, strong) NSNumber * _Nullable DPDTimeoutSeconds; /**

Turn on or off tunnel endpoint lifecycle control feature.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableTunnelLifecycleControl; /**

The IKE versions that are permitted for the VPN tunnel.

Valid values: ikev1 | ikev2

*/ @property (nonatomic, strong) NSArray * _Nullable IKEVersions; /**

Options for logging VPN tunnel activity.

*/ @property (nonatomic, strong) AWSEC2VpnTunnelLogOptionsSpecification * _Nullable logOptions; /**

One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 1 IKE negotiations.

Valid values: 2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24

*/ @property (nonatomic, strong) NSArray * _Nullable phase1DHGroupNumbers; /**

One or more encryption algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations.

Valid values: AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16

*/ @property (nonatomic, strong) NSArray * _Nullable phase1EncryptionAlgorithms; /**

One or more integrity algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations.

Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512

*/ @property (nonatomic, strong) NSArray * _Nullable phase1IntegrityAlgorithms; /**

The lifetime for phase 1 of the IKE negotiation, in seconds.

Constraints: A value between 900 and 28,800.

Default: 28800

*/ @property (nonatomic, strong) NSNumber * _Nullable phase1LifetimeSeconds; /**

One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 2 IKE negotiations.

Valid values: 2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24

*/ @property (nonatomic, strong) NSArray * _Nullable phase2DHGroupNumbers; /**

One or more encryption algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations.

Valid values: AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16

*/ @property (nonatomic, strong) NSArray * _Nullable phase2EncryptionAlgorithms; /**

One or more integrity algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations.

Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512

*/ @property (nonatomic, strong) NSArray * _Nullable phase2IntegrityAlgorithms; /**

The lifetime for phase 2 of the IKE negotiation, in seconds.

Constraints: A value between 900 and 3,600. The value must be less than the value for Phase1LifetimeSeconds.

Default: 3600

*/ @property (nonatomic, strong) NSNumber * _Nullable phase2LifetimeSeconds; /**

The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and the customer gateway.

Constraints: Allowed characters are alphanumeric characters, periods (.), and underscores (_). Must be between 8 and 64 characters in length and cannot start with zero (0).

*/ @property (nonatomic, strong) NSString * _Nullable preSharedKey; /**

The percentage of the rekey window (determined by RekeyMarginTimeSeconds) during which the rekey time is randomly selected.

Constraints: A value between 0 and 100.

Default: 100

*/ @property (nonatomic, strong) NSNumber * _Nullable rekeyFuzzPercentage; /**

The margin time, in seconds, before the phase 2 lifetime expires, during which the Amazon Web Services side of the VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for RekeyFuzzPercentage.

Constraints: A value between 60 and half of Phase2LifetimeSeconds.

Default: 540

*/ @property (nonatomic, strong) NSNumber * _Nullable rekeyMarginTimeSeconds; /**

The number of packets in an IKE replay window.

Constraints: A value between 64 and 2048.

Default: 1024

*/ @property (nonatomic, strong) NSNumber * _Nullable replayWindowSize; /**

The action to take when the establishing the tunnel for the VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start for Amazon Web Services to initiate the IKE negotiation.

Valid Values: add | start

Default: add

*/ @property (nonatomic, strong) NSString * _Nullable startupAction; /**

The range of inside IPv4 addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same virtual private gateway.

Constraints: A size /30 CIDR block from the 169.254.0.0/16 range. The following CIDR blocks are reserved and cannot be used:

  • 169.254.0.0/30

  • 169.254.1.0/30

  • 169.254.2.0/30

  • 169.254.3.0/30

  • 169.254.4.0/30

  • 169.254.5.0/30

  • 169.254.169.252/30

*/ @property (nonatomic, strong) NSString * _Nullable tunnelInsideCidr; /**

The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same transit gateway.

Constraints: A size /126 CIDR block from the local fd00::/8 range.

*/ @property (nonatomic, strong) NSString * _Nullable tunnelInsideIpv6Cidr; @end /** */ @interface AWSEC2MonitorInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; @end /** */ @interface AWSEC2MonitorInstancesResult : AWSModel /**

The monitoring information.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceMonitorings; @end /**

Describes the monitoring of an instance.

*/ @interface AWSEC2Monitoring : AWSModel /**

Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is enabled.

*/ @property (nonatomic, assign) AWSEC2MonitoringState state; @end /** */ @interface AWSEC2MoveAddressToVpcRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; @end /** */ @interface AWSEC2MoveAddressToVpcResult : AWSModel /**

The allocation ID for the Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

The status of the move of the IP address.

*/ @property (nonatomic, assign) AWSEC2Status status; @end /** */ @interface AWSEC2MoveByoipCidrToIpamRequest : AWSRequest /**

The BYOIP CIDR.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IPAM pool ID.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; /**

The Amazon Web Services account ID of the owner of the IPAM pool.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolOwner; @end /** */ @interface AWSEC2MoveByoipCidrToIpamResult : AWSModel /**

The BYOIP CIDR.

*/ @property (nonatomic, strong) AWSEC2ByoipCidr * _Nullable byoipCidr; @end /**

This action is deprecated.

Describes the status of a moving Elastic IP address.

*/ @interface AWSEC2MovingAddressStatus : AWSModel /**

The status of the Elastic IP address that's being moved or restored.

*/ @property (nonatomic, assign) AWSEC2MoveStatus moveStatus; /**

The Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; @end /**

Describes a NAT gateway.

*/ @interface AWSEC2NatGateway : AWSModel /**

Indicates whether the NAT gateway supports public or private connectivity.

*/ @property (nonatomic, assign) AWSEC2ConnectivityType connectivityType; /**

The date and time the NAT gateway was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createTime; /**

The date and time the NAT gateway was deleted, if applicable.

*/ @property (nonatomic, strong) NSDate * _Nullable deleteTime; /**

If the NAT gateway could not be created, specifies the error code for the failure. (InsufficientFreeAddressesInSubnet | Gateway.NotAttached | InvalidAllocationID.NotFound | Resource.AlreadyAssociated | InternalError | InvalidSubnetID.NotFound)

*/ @property (nonatomic, strong) NSString * _Nullable failureCode; /**

If the NAT gateway could not be created, specifies the error message for the failure, that corresponds to the error code.

  • For InsufficientFreeAddressesInSubnet: "Subnet has insufficient free addresses to create this NAT gateway"

  • For Gateway.NotAttached: "Network vpc-xxxxxxxx has no Internet gateway attached"

  • For InvalidAllocationID.NotFound: "Elastic IP address eipalloc-xxxxxxxx could not be associated with this NAT gateway"

  • For Resource.AlreadyAssociated: "Elastic IP address eipalloc-xxxxxxxx is already associated"

  • For InternalError: "Network interface eni-xxxxxxxx, created and used internally by this NAT gateway is in an invalid state. Please try again."

  • For InvalidSubnetID.NotFound: "The specified subnet subnet-xxxxxxxx does not exist or could not be found."

*/ @property (nonatomic, strong) NSString * _Nullable failureMessage; /**

Information about the IP addresses and network interface associated with the NAT gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable natGatewayAddresses; /**

The ID of the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; /**

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

*/ @property (nonatomic, strong) AWSEC2ProvisionedBandwidth * _Nullable provisionedBandwidth; /**

The state of the NAT gateway.

  • pending: The NAT gateway is being created and is not ready to process traffic.

  • failed: The NAT gateway could not be created. Check the failureCode and failureMessage fields for the reason.

  • available: The NAT gateway is able to process traffic. This status remains until you delete the NAT gateway, and does not indicate the health of the NAT gateway.

  • deleting: The NAT gateway is in the process of being terminated and may still be processing traffic.

  • deleted: The NAT gateway has been terminated and is no longer processing traffic.

*/ @property (nonatomic, assign) AWSEC2NatGatewayState state; /**

The ID of the subnet in which the NAT gateway is located.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The tags for the NAT gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC in which the NAT gateway is located.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes the IP addresses and network interface associated with a NAT gateway.

*/ @interface AWSEC2NatGatewayAddress : AWSModel /**

[Public NAT gateway only] The allocation ID of the Elastic IP address that's associated with the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

[Public NAT gateway only] The association ID of the Elastic IP address that's associated with the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The address failure message.

*/ @property (nonatomic, strong) NSString * _Nullable failureMessage; /**

Defines if the IP address is the primary address.

*/ @property (nonatomic, strong) NSNumber * _Nullable isPrimary; /**

The ID of the network interface associated with the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The private IP address associated with the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable privateIp; /**

[Public NAT gateway only] The Elastic IP address associated with the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; /**

The address status.

*/ @property (nonatomic, assign) AWSEC2NatGatewayAddressStatus status; @end /**

Describes a network ACL.

*/ @interface AWSEC2NetworkAcl : AWSModel /**

Any associations between the network ACL and one or more subnets

*/ @property (nonatomic, strong) NSArray * _Nullable associations; /**

The entries (rules) in the network ACL.

*/ @property (nonatomic, strong) NSArray * _Nullable entries; /**

Indicates whether this is the default network ACL for the VPC.

*/ @property (nonatomic, strong) NSNumber * _Nullable isDefault; /**

The ID of the network ACL.

*/ @property (nonatomic, strong) NSString * _Nullable networkAclId; /**

The ID of the Amazon Web Services account that owns the network ACL.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

Any tags assigned to the network ACL.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC for the network ACL.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes an association between a network ACL and a subnet.

*/ @interface AWSEC2NetworkAclAssociation : AWSModel /**

The ID of the association between a network ACL and a subnet.

*/ @property (nonatomic, strong) NSString * _Nullable networkAclAssociationId; /**

The ID of the network ACL.

*/ @property (nonatomic, strong) NSString * _Nullable networkAclId; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /**

Describes an entry in a network ACL.

*/ @interface AWSEC2NetworkAclEntry : AWSModel /**

The IPv4 network range to allow or deny, in CIDR notation.

*/ @property (nonatomic, strong) NSString * _Nullable cidrBlock; /**

Indicates whether the rule is an egress rule (applied to traffic leaving the subnet).

*/ @property (nonatomic, strong) NSNumber * _Nullable egress; /**

ICMP protocol: The ICMP type and code.

*/ @property (nonatomic, strong) AWSEC2IcmpTypeCode * _Nullable icmpTypeCode; /**

The IPv6 network range to allow or deny, in CIDR notation.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlock; /**

TCP or UDP protocols: The range of ports the rule applies to.

*/ @property (nonatomic, strong) AWSEC2PortRange * _Nullable portRange; /**

The protocol number. A value of "-1" means all protocols.

*/ @property (nonatomic, strong) NSString * _Nullable protocols; /**

Indicates whether to allow or deny the traffic that matches the rule.

*/ @property (nonatomic, assign) AWSEC2RuleAction ruleAction; /**

The rule number for the entry. ACL entries are processed in ascending order by rule number.

*/ @property (nonatomic, strong) NSNumber * _Nullable ruleNumber; @end /**

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see Available instance bandwidth in the Amazon EC2 User Guide.

*/ @interface AWSEC2NetworkBandwidthGbps : AWSModel /**

The maximum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no maximum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum amount of network bandwidth, in Gbps. If this parameter is not specified, there is no minimum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see Available instance bandwidth in the Amazon EC2 User Guide.

*/ @interface AWSEC2NetworkBandwidthGbpsRequest : AWSModel /**

The maximum amount of network bandwidth, in Gbps. To specify no maximum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum amount of network bandwidth, in Gbps. To specify no minimum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

Describes the network card support of the instance type.

*/ @interface AWSEC2NetworkCardInfo : AWSModel /**

The baseline network performance of the network card, in Gbps.

*/ @property (nonatomic, strong) NSNumber * _Nullable baselineBandwidthInGbps; /**

The maximum number of network interfaces for the network card.

*/ @property (nonatomic, strong) NSNumber * _Nullable maximumNetworkInterfaces; /**

The index of the network card.

*/ @property (nonatomic, strong) NSNumber * _Nullable networkCardIndex; /**

The network performance of the network card.

*/ @property (nonatomic, strong) NSString * _Nullable networkPerformance; /**

The peak (burst) network performance of the network card, in Gbps.

*/ @property (nonatomic, strong) NSNumber * _Nullable peakBandwidthInGbps; @end /**

Describes the networking features of the instance type.

*/ @interface AWSEC2NetworkInfo : AWSModel /**

The index of the default network card, starting at 0.

*/ @property (nonatomic, strong) NSNumber * _Nullable defaultNetworkCardIndex; /**

Describes the Elastic Fabric Adapters for the instance type.

*/ @property (nonatomic, strong) AWSEC2EfaInfo * _Nullable efaInfo; /**

Indicates whether Elastic Fabric Adapter (EFA) is supported.

*/ @property (nonatomic, strong) NSNumber * _Nullable efaSupported; /**

Indicates whether the instance type supports ENA Express. ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances.

*/ @property (nonatomic, strong) NSNumber * _Nullable enaSrdSupported; /**

Indicates whether Elastic Network Adapter (ENA) is supported.

*/ @property (nonatomic, assign) AWSEC2EnaSupport enaSupport; /**

Indicates whether the instance type automatically encrypts in-transit traffic between instances.

*/ @property (nonatomic, strong) NSNumber * _Nullable encryptionInTransitSupported; /**

The maximum number of IPv4 addresses per network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv4AddressesPerInterface; /**

The maximum number of IPv6 addresses per network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6AddressesPerInterface; /**

Indicates whether IPv6 is supported.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6Supported; /**

The maximum number of physical network cards that can be allocated to the instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable maximumNetworkCards; /**

The maximum number of network interfaces for the instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable maximumNetworkInterfaces; /**

Describes the network cards for the instance type.

*/ @property (nonatomic, strong) NSArray * _Nullable networkCards; /**

The network performance.

*/ @property (nonatomic, strong) NSString * _Nullable networkPerformance; @end /**

Describes a Network Access Scope.

*/ @interface AWSEC2NetworkInsightsAccessScope : AWSModel /**

The creation date.

*/ @property (nonatomic, strong) NSDate * _Nullable createdDate; /**

The Amazon Resource Name (ARN) of the Network Access Scope.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeArn; /**

The ID of the Network Access Scope.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeId; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The last updated date.

*/ @property (nonatomic, strong) NSDate * _Nullable updatedDate; @end /**

Describes a Network Access Scope analysis.

*/ @interface AWSEC2NetworkInsightsAccessScopeAnalysis : AWSModel /**

The number of network interfaces analyzed.

*/ @property (nonatomic, strong) NSNumber * _Nullable analyzedEniCount; /**

The analysis end date.

*/ @property (nonatomic, strong) NSDate * _Nullable endDate; /**

Indicates whether there are findings.

*/ @property (nonatomic, assign) AWSEC2FindingsFound findingsFound; /**

The Amazon Resource Name (ARN) of the Network Access Scope analysis.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeAnalysisArn; /**

The ID of the Network Access Scope analysis.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeAnalysisId; /**

The ID of the Network Access Scope.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeId; /**

The analysis start date.

*/ @property (nonatomic, strong) NSDate * _Nullable startDate; /**

The status.

*/ @property (nonatomic, assign) AWSEC2AnalysisStatus status; /**

The status message.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The warning message.

*/ @property (nonatomic, strong) NSString * _Nullable warningMessage; @end /**

Describes the Network Access Scope content.

*/ @interface AWSEC2NetworkInsightsAccessScopeContent : AWSModel /**

The paths to exclude.

*/ @property (nonatomic, strong) NSArray * _Nullable excludePaths; /**

The paths to match.

*/ @property (nonatomic, strong) NSArray * _Nullable matchPaths; /**

The ID of the Network Access Scope.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeId; @end /**

Describes a network insights analysis.

*/ @interface AWSEC2NetworkInsightsAnalysis : AWSModel /**

The member accounts that contain resources that the path can traverse.

*/ @property (nonatomic, strong) NSArray * _Nullable additionalAccounts; /**

Potential intermediate components.

*/ @property (nonatomic, strong) NSArray * _Nullable alternatePathHints; /**

The explanations. For more information, see Reachability Analyzer explanation codes.

*/ @property (nonatomic, strong) NSArray * _Nullable explanations; /**

The Amazon Resource Names (ARN) of the resources that the path must traverse.

*/ @property (nonatomic, strong) NSArray * _Nullable filterInArns; /**

The components in the path from source to destination.

*/ @property (nonatomic, strong) NSArray * _Nullable forwardPathComponents; /**

The Amazon Resource Name (ARN) of the network insights analysis.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAnalysisArn; /**

The ID of the network insights analysis.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAnalysisId; /**

The ID of the path.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsPathId; /**

Indicates whether the destination is reachable from the source.

*/ @property (nonatomic, strong) NSNumber * _Nullable networkPathFound; /**

The components in the path from destination to source.

*/ @property (nonatomic, strong) NSArray * _Nullable returnPathComponents; /**

The time the analysis started.

*/ @property (nonatomic, strong) NSDate * _Nullable startDate; /**

The status of the network insights analysis.

*/ @property (nonatomic, assign) AWSEC2AnalysisStatus status; /**

The status message, if the status is failed.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

Potential intermediate accounts.

*/ @property (nonatomic, strong) NSArray * _Nullable suggestedAccounts; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The warning message.

*/ @property (nonatomic, strong) NSString * _Nullable warningMessage; @end /**

Describes a path.

*/ @interface AWSEC2NetworkInsightsPath : AWSModel /**

The time stamp when the path was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createdDate; /**

The ID of the destination.

*/ @property (nonatomic, strong) NSString * _Nullable destination; /**

The Amazon Resource Name (ARN) of the destination.

*/ @property (nonatomic, strong) NSString * _Nullable destinationArn; /**

The IP address of the destination.

*/ @property (nonatomic, strong) NSString * _Nullable destinationIp; /**

The destination port.

*/ @property (nonatomic, strong) NSNumber * _Nullable destinationPort; /**

Scopes the analysis to network paths that match specific filters at the destination.

*/ @property (nonatomic, strong) AWSEC2PathFilter * _Nullable filterAtDestination; /**

Scopes the analysis to network paths that match specific filters at the source.

*/ @property (nonatomic, strong) AWSEC2PathFilter * _Nullable filterAtSource; /**

The Amazon Resource Name (ARN) of the path.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsPathArn; /**

The ID of the path.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsPathId; /**

The protocol.

*/ @property (nonatomic, assign) AWSEC2Protocols protocols; /**

The ID of the source.

*/ @property (nonatomic, strong) NSString * _Nullable source; /**

The Amazon Resource Name (ARN) of the source.

*/ @property (nonatomic, strong) NSString * _Nullable sourceArn; /**

The IP address of the source.

*/ @property (nonatomic, strong) NSString * _Nullable sourceIp; /**

The tags associated with the path.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes a network interface.

*/ @interface AWSEC2NetworkInterface : AWSModel /**

The association information for an Elastic IP address (IPv4) associated with the network interface.

*/ @property (nonatomic, strong) AWSEC2NetworkInterfaceAssociation * _Nullable association; /**

The network interface attachment.

*/ @property (nonatomic, strong) AWSEC2NetworkInterfaceAttachment * _Nullable attachment; /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

Indicates whether a network interface with an IPv6 address is unreachable from the public internet. If the value is true, inbound traffic from the internet is dropped and you cannot assign an elastic IP address to the network interface. The network interface is reachable from peered VPCs and resources connected through a transit gateway, including on-premises networks.

*/ @property (nonatomic, strong) NSNumber * _Nullable denyAllIgwTraffic; /**

A description.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Any security groups for the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The type of network interface.

*/ @property (nonatomic, assign) AWSEC2NetworkInterfaceType interfaceType; /**

The IPv4 prefixes that are assigned to the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv4Prefixes; /**

The IPv6 globally unique address associated with the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Address; /**

The IPv6 addresses associated with the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Addresses; /**

Indicates whether this is an IPv6 only network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6Native; /**

The IPv6 prefixes that are assigned to the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Prefixes; /**

The MAC address.

*/ @property (nonatomic, strong) NSString * _Nullable macAddress; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The Amazon Resource Name (ARN) of the Outpost.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The Amazon Web Services account ID of the owner of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The private DNS name.

*/ @property (nonatomic, strong) NSString * _Nullable privateDnsName; /**

The IPv4 address of the network interface within the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

The private IPv4 addresses associated with the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddresses; /**

The alias or Amazon Web Services account ID of the principal or service that created the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable requesterId; /**

Indicates whether the network interface is being managed by Amazon Web Services.

*/ @property (nonatomic, strong) NSNumber * _Nullable requesterManaged; /**

Indicates whether source/destination checking is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable sourceDestCheck; /**

The status of the network interface.

*/ @property (nonatomic, assign) AWSEC2NetworkInterfaceStatus status; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

Any tags assigned to the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSet; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes association information for an Elastic IP address (IPv4 only), or a Carrier IP address (for a network interface which resides in a subnet in a Wavelength Zone).

*/ @interface AWSEC2NetworkInterfaceAssociation : AWSModel /**

The allocation ID.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

The association ID.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The carrier IP address associated with the network interface.

This option is only available when the network interface is in a subnet which is associated with a Wavelength Zone.

*/ @property (nonatomic, strong) NSString * _Nullable carrierIp; /**

The customer-owned IP address associated with the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable customerOwnedIp; /**

The ID of the Elastic IP address owner.

*/ @property (nonatomic, strong) NSString * _Nullable ipOwnerId; /**

The public DNS name.

*/ @property (nonatomic, strong) NSString * _Nullable publicDnsName; /**

The address of the Elastic IP address bound to the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; @end /**

Describes a network interface attachment.

*/ @interface AWSEC2NetworkInterfaceAttachment : AWSModel /**

The timestamp indicating when the attachment initiated.

*/ @property (nonatomic, strong) NSDate * _Nullable attachTime; /**

The ID of the network interface attachment.

*/ @property (nonatomic, strong) NSString * _Nullable attachmentId; /**

Indicates whether the network interface is deleted when the instance is terminated.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

The device index of the network interface attachment on the instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable deviceIndex; /**

Configures ENA Express for the network interface that this action attaches to the instance.

*/ @property (nonatomic, strong) AWSEC2AttachmentEnaSrdSpecification * _Nullable enaSrdSpecification; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The Amazon Web Services account ID of the owner of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceOwnerId; /**

The index of the network card.

*/ @property (nonatomic, strong) NSNumber * _Nullable networkCardIndex; /**

The attachment state.

*/ @property (nonatomic, assign) AWSEC2AttachmentStatus status; @end /**

Describes an attachment change.

*/ @interface AWSEC2NetworkInterfaceAttachmentChanges : AWSModel /**

The ID of the network interface attachment.

*/ @property (nonatomic, strong) NSString * _Nullable attachmentId; /**

Indicates whether the network interface is deleted when the instance is terminated.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; @end /**

The minimum and maximum number of network interfaces.

*/ @interface AWSEC2NetworkInterfaceCount : AWSModel /**

The maximum number of network interfaces. If this parameter is not specified, there is no maximum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum number of network interfaces. If this parameter is not specified, there is no minimum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

The minimum and maximum number of network interfaces.

*/ @interface AWSEC2NetworkInterfaceCountRequest : AWSModel /**

The maximum number of network interfaces. To specify no maximum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum number of network interfaces. To specify no minimum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

Describes an IPv6 address associated with a network interface.

*/ @interface AWSEC2NetworkInterfaceIpv6Address : AWSModel /**

The IPv6 address.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Address; @end /**

Describes a permission for a network interface.

*/ @interface AWSEC2NetworkInterfacePermission : AWSModel /**

The Amazon Web Services account ID.

*/ @property (nonatomic, strong) NSString * _Nullable awsAccountId; /**

The Amazon Web Service.

*/ @property (nonatomic, strong) NSString * _Nullable awsService; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The ID of the network interface permission.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfacePermissionId; /**

The type of permission.

*/ @property (nonatomic, assign) AWSEC2InterfacePermissionType permission; /**

Information about the state of the permission.

*/ @property (nonatomic, strong) AWSEC2NetworkInterfacePermissionState * _Nullable permissionState; @end /**

Describes the state of a network interface permission.

*/ @interface AWSEC2NetworkInterfacePermissionState : AWSModel /**

The state of the permission.

*/ @property (nonatomic, assign) AWSEC2NetworkInterfacePermissionStateCode state; /**

A status message, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; @end /**

Describes the private IPv4 address of a network interface.

*/ @interface AWSEC2NetworkInterfacePrivateIpAddress : AWSModel /**

The association information for an Elastic IP address (IPv4) associated with the network interface.

*/ @property (nonatomic, strong) AWSEC2NetworkInterfaceAssociation * _Nullable association; /**

Indicates whether this IPv4 address is the primary private IPv4 address of the network interface.

*/ @property (nonatomic, strong) NSNumber * _Nullable primary; /**

The private DNS name.

*/ @property (nonatomic, strong) NSString * _Nullable privateDnsName; /**

The private IPv4 address.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; @end /** */ @interface AWSEC2LatestDhcpConfiguration : AWSModel /** */ @property (nonatomic, strong) NSString * _Nullable key; /** */ @property (nonatomic, strong) NSArray * _Nullable values; @end /**

Describes the supported NitroTPM versions for the instance type.

*/ @interface AWSEC2NitroTpmInfo : AWSModel /**

Indicates the supported NitroTPM versions.

*/ @property (nonatomic, strong) NSArray * _Nullable supportedVersions; @end /**

Describes the options for an OpenID Connect-compatible user-identity trust provider.

*/ @interface AWSEC2OidcOptions : AWSModel /**

The OIDC authorization endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable authorizationEndpoint; /**

The client identifier.

*/ @property (nonatomic, strong) NSString * _Nullable clientId; /**

The client secret.

*/ @property (nonatomic, strong) NSString * _Nullable clientSecret; /**

The OIDC issuer.

*/ @property (nonatomic, strong) NSString * _Nullable issuer; /**

The OpenID Connect (OIDC) scope specified.

*/ @property (nonatomic, strong) NSString * _Nullable scope; /**

The OIDC token endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable tokenEndpoint; /**

The OIDC user info endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable userInfoEndpoint; @end /**

Describes the configuration of On-Demand Instances in an EC2 Fleet.

*/ @interface AWSEC2OnDemandOptions : AWSModel /**

The strategy that determines the order of the launch template overrides to use in fulfilling On-Demand capacity.

lowest-price - EC2 Fleet uses price to determine the order, launching the lowest price first.

prioritized - EC2 Fleet uses the priority that you assigned to each launch template override, launching the highest priority first.

Default: lowest-price

*/ @property (nonatomic, assign) AWSEC2FleetOnDemandAllocationStrategy allocationStrategy; /**

The strategy for using unused Capacity Reservations for fulfilling On-Demand capacity.

Supported only for fleets of type instant.

*/ @property (nonatomic, strong) AWSEC2CapacityReservationOptions * _Nullable capacityReservationOptions; /**

The maximum amount per hour for On-Demand Instances that you're willing to pay.

*/ @property (nonatomic, strong) NSString * _Nullable maxTotalPrice; /**

The minimum target capacity for On-Demand Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.

Supported only for fleets of type instant.

At least one of the following must be specified: SingleAvailabilityZone | SingleInstanceType

*/ @property (nonatomic, strong) NSNumber * _Nullable minTargetCapacity; /**

Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.

Supported only for fleets of type instant.

*/ @property (nonatomic, strong) NSNumber * _Nullable singleAvailabilityZone; /**

Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the fleet.

Supported only for fleets of type instant.

*/ @property (nonatomic, strong) NSNumber * _Nullable singleInstanceType; @end /**

Describes the configuration of On-Demand Instances in an EC2 Fleet.

*/ @interface AWSEC2OnDemandOptionsRequest : AWSModel /**

The strategy that determines the order of the launch template overrides to use in fulfilling On-Demand capacity.

lowest-price - EC2 Fleet uses price to determine the order, launching the lowest price first.

prioritized - EC2 Fleet uses the priority that you assigned to each launch template override, launching the highest priority first.

Default: lowest-price

*/ @property (nonatomic, assign) AWSEC2FleetOnDemandAllocationStrategy allocationStrategy; /**

The strategy for using unused Capacity Reservations for fulfilling On-Demand capacity.

Supported only for fleets of type instant.

*/ @property (nonatomic, strong) AWSEC2CapacityReservationOptionsRequest * _Nullable capacityReservationOptions; /**

The maximum amount per hour for On-Demand Instances that you're willing to pay.

*/ @property (nonatomic, strong) NSString * _Nullable maxTotalPrice; /**

The minimum target capacity for On-Demand Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.

Supported only for fleets of type instant.

At least one of the following must be specified: SingleAvailabilityZone | SingleInstanceType

*/ @property (nonatomic, strong) NSNumber * _Nullable minTargetCapacity; /**

Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.

Supported only for fleets of type instant.

*/ @property (nonatomic, strong) NSNumber * _Nullable singleAvailabilityZone; /**

Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the fleet.

Supported only for fleets of type instant.

*/ @property (nonatomic, strong) NSNumber * _Nullable singleInstanceType; @end /**

Describes a packet header statement.

*/ @interface AWSEC2PacketHeaderStatement : AWSModel /**

The destination addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable destinationAddresses; /**

The destination ports.

*/ @property (nonatomic, strong) NSArray * _Nullable destinationPorts; /**

The destination prefix lists.

*/ @property (nonatomic, strong) NSArray * _Nullable destinationPrefixLists; /**

The protocols.

*/ @property (nonatomic, strong) NSArray * _Nullable protocols; /**

The source addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable sourceAddresses; /**

The source ports.

*/ @property (nonatomic, strong) NSArray * _Nullable sourcePorts; /**

The source prefix lists.

*/ @property (nonatomic, strong) NSArray * _Nullable sourcePrefixLists; @end /**

Describes a packet header statement.

*/ @interface AWSEC2PacketHeaderStatementRequest : AWSModel /**

The destination addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable destinationAddresses; /**

The destination ports.

*/ @property (nonatomic, strong) NSArray * _Nullable destinationPorts; /**

The destination prefix lists.

*/ @property (nonatomic, strong) NSArray * _Nullable destinationPrefixLists; /**

The protocols.

*/ @property (nonatomic, strong) NSArray * _Nullable protocols; /**

The source addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable sourceAddresses; /**

The source ports.

*/ @property (nonatomic, strong) NSArray * _Nullable sourcePorts; /**

The source prefix lists.

*/ @property (nonatomic, strong) NSArray * _Nullable sourcePrefixLists; @end /**

Describes a path component.

*/ @interface AWSEC2PathComponent : AWSModel /**

The network ACL rule.

*/ @property (nonatomic, strong) AWSEC2AnalysisAclRule * _Nullable aclRule; /**

The additional details.

*/ @property (nonatomic, strong) NSArray * _Nullable additionalDetails; /**

The resource to which the path component is attached.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable attachedTo; /**

The component.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable component; /**

The destination VPC.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable destinationVpc; /**

The load balancer listener.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable elasticLoadBalancerListener; /**

The explanation codes.

*/ @property (nonatomic, strong) NSArray * _Nullable explanations; /**

The Network Firewall stateful rule.

*/ @property (nonatomic, strong) AWSEC2FirewallStatefulRule * _Nullable firewallStatefulRule; /**

The Network Firewall stateless rule.

*/ @property (nonatomic, strong) AWSEC2FirewallStatelessRule * _Nullable firewallStatelessRule; /**

The inbound header.

*/ @property (nonatomic, strong) AWSEC2AnalysisPacketHeader * _Nullable inboundHeader; /**

The outbound header.

*/ @property (nonatomic, strong) AWSEC2AnalysisPacketHeader * _Nullable outboundHeader; /**

The route table route.

*/ @property (nonatomic, strong) AWSEC2AnalysisRouteTableRoute * _Nullable routeTableRoute; /**

The security group rule.

*/ @property (nonatomic, strong) AWSEC2AnalysisSecurityGroupRule * _Nullable securityGroupRule; /**

The sequence number.

*/ @property (nonatomic, strong) NSNumber * _Nullable sequenceNumber; /**

The name of the VPC endpoint service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceName; /**

The source VPC.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable sourceVpc; /**

The subnet.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable subnet; /**

The transit gateway.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable transitGateway; /**

The route in a transit gateway route table.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayRouteTableRoute * _Nullable transitGatewayRouteTableRoute; /**

The component VPC.

*/ @property (nonatomic, strong) AWSEC2AnalysisComponent * _Nullable vpc; @end /**

Describes a set of filters for a path analysis. Use path filters to scope the analysis when there can be multiple resulting paths.

*/ @interface AWSEC2PathFilter : AWSModel /**

The destination IPv4 address.

*/ @property (nonatomic, strong) NSString * _Nullable destinationAddress; /**

The destination port range.

*/ @property (nonatomic, strong) AWSEC2FilterPortRange * _Nullable destinationPortRange; /**

The source IPv4 address.

*/ @property (nonatomic, strong) NSString * _Nullable sourceAddress; /**

The source port range.

*/ @property (nonatomic, strong) AWSEC2FilterPortRange * _Nullable sourcePortRange; @end /**

Describes a set of filters for a path analysis. Use path filters to scope the analysis when there can be multiple resulting paths.

*/ @interface AWSEC2PathRequestFilter : AWSModel /**

The destination IPv4 address.

*/ @property (nonatomic, strong) NSString * _Nullable destinationAddress; /**

The destination port range.

*/ @property (nonatomic, strong) AWSEC2RequestFilterPortRange * _Nullable destinationPortRange; /**

The source IPv4 address.

*/ @property (nonatomic, strong) NSString * _Nullable sourceAddress; /**

The source port range.

*/ @property (nonatomic, strong) AWSEC2RequestFilterPortRange * _Nullable sourcePortRange; @end /**

Describes a path statement.

*/ @interface AWSEC2PathStatement : AWSModel /**

The packet header statement.

*/ @property (nonatomic, strong) AWSEC2PacketHeaderStatement * _Nullable packetHeaderStatement; /**

The resource statement.

*/ @property (nonatomic, strong) AWSEC2ResourceStatement * _Nullable resourceStatement; @end /**

Describes a path statement.

*/ @interface AWSEC2PathStatementRequest : AWSModel /**

The packet header statement.

*/ @property (nonatomic, strong) AWSEC2PacketHeaderStatementRequest * _Nullable packetHeaderStatement; /**

The resource statement.

*/ @property (nonatomic, strong) AWSEC2ResourceStatementRequest * _Nullable resourceStatement; @end /**

Describes the data that identifies an Amazon FPGA image (AFI) on the PCI bus.

*/ @interface AWSEC2PciId : AWSModel /**

The ID of the device.

*/ @property (nonatomic, strong) NSString * _Nullable deviceId; /**

The ID of the subsystem.

*/ @property (nonatomic, strong) NSString * _Nullable subsystemId; /**

The ID of the vendor for the subsystem.

*/ @property (nonatomic, strong) NSString * _Nullable subsystemVendorId; /**

The ID of the vendor.

*/ @property (nonatomic, strong) NSString * _Nullable vendorId; @end /**

The status of the transit gateway peering attachment.

*/ @interface AWSEC2PeeringAttachmentStatus : AWSModel /**

The status code.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

The status message, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes the VPC peering connection options.

*/ @interface AWSEC2PeeringConnectionOptions : AWSModel /**

If true, the public DNS hostnames of instances in the specified VPC resolve to private IP addresses when queried from instances in the peer VPC.

*/ @property (nonatomic, strong) NSNumber * _Nullable allowDnsResolutionFromRemoteVpc; /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable allowEgressFromLocalClassicLinkToRemoteVpc; /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable allowEgressFromLocalVpcToRemoteClassicLink; @end /**

The VPC peering connection options.

*/ @interface AWSEC2PeeringConnectionOptionsRequest : AWSModel /**

If true, enables a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.

*/ @property (nonatomic, strong) NSNumber * _Nullable allowDnsResolutionFromRemoteVpc; /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable allowEgressFromLocalClassicLinkToRemoteVpc; /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable allowEgressFromLocalVpcToRemoteClassicLink; @end /**

Information about the transit gateway in the peering attachment.

*/ @interface AWSEC2PeeringTgwInfo : AWSModel /**

The ID of the core network where the transit gateway peer is located.

*/ @property (nonatomic, strong) NSString * _Nullable coreNetworkId; /**

The ID of the Amazon Web Services account that owns the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The Region of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable region; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; @end /**

The Diffie-Hellmann group number for phase 1 IKE negotiations.

*/ @interface AWSEC2Phase1DHGroupNumbersListValue : AWSModel /**

The Diffie-Hellmann group number.

*/ @property (nonatomic, strong) NSNumber * _Nullable value; @end /**

Specifies a Diffie-Hellman group number for the VPN tunnel for phase 1 IKE negotiations.

*/ @interface AWSEC2Phase1DHGroupNumbersRequestListValue : AWSModel /**

The Diffie-Hellmann group number.

*/ @property (nonatomic, strong) NSNumber * _Nullable value; @end /**

The encryption algorithm for phase 1 IKE negotiations.

*/ @interface AWSEC2Phase1EncryptionAlgorithmsListValue : AWSModel /**

The value for the encryption algorithm.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

Specifies the encryption algorithm for the VPN tunnel for phase 1 IKE negotiations.

*/ @interface AWSEC2Phase1EncryptionAlgorithmsRequestListValue : AWSModel /**

The value for the encryption algorithm.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

The integrity algorithm for phase 1 IKE negotiations.

*/ @interface AWSEC2Phase1IntegrityAlgorithmsListValue : AWSModel /**

The value for the integrity algorithm.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

Specifies the integrity algorithm for the VPN tunnel for phase 1 IKE negotiations.

*/ @interface AWSEC2Phase1IntegrityAlgorithmsRequestListValue : AWSModel /**

The value for the integrity algorithm.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

The Diffie-Hellmann group number for phase 2 IKE negotiations.

*/ @interface AWSEC2Phase2DHGroupNumbersListValue : AWSModel /**

The Diffie-Hellmann group number.

*/ @property (nonatomic, strong) NSNumber * _Nullable value; @end /**

Specifies a Diffie-Hellman group number for the VPN tunnel for phase 2 IKE negotiations.

*/ @interface AWSEC2Phase2DHGroupNumbersRequestListValue : AWSModel /**

The Diffie-Hellmann group number.

*/ @property (nonatomic, strong) NSNumber * _Nullable value; @end /**

The encryption algorithm for phase 2 IKE negotiations.

*/ @interface AWSEC2Phase2EncryptionAlgorithmsListValue : AWSModel /**

The encryption algorithm.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

Specifies the encryption algorithm for the VPN tunnel for phase 2 IKE negotiations.

*/ @interface AWSEC2Phase2EncryptionAlgorithmsRequestListValue : AWSModel /**

The encryption algorithm.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

The integrity algorithm for phase 2 IKE negotiations.

*/ @interface AWSEC2Phase2IntegrityAlgorithmsListValue : AWSModel /**

The integrity algorithm.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

Specifies the integrity algorithm for the VPN tunnel for phase 2 IKE negotiations.

*/ @interface AWSEC2Phase2IntegrityAlgorithmsRequestListValue : AWSModel /**

The integrity algorithm.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

Describes the placement of an instance.

*/ @interface AWSEC2Placement : AWSModel /**

The affinity setting for the instance on the Dedicated Host.

This parameter is not supported for CreateFleet or ImportInstance.

*/ @property (nonatomic, strong) NSString * _Nullable affinity; /**

The Availability Zone of the instance.

If not specified, an Availability Zone will be automatically chosen for you based on the load balancing criteria for the Region.

This parameter is not supported for CreateFleet.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The ID of the placement group that the instance is in. If you specify GroupId, you can't specify GroupName.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The name of the placement group that the instance is in. If you specify GroupName, you can't specify GroupId.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The ID of the Dedicated Host on which the instance resides.

This parameter is not supported for CreateFleet or ImportInstance.

*/ @property (nonatomic, strong) NSString * _Nullable hostId; /**

The ARN of the host resource group in which to launch the instances.

If you specify this parameter, either omit the Tenancy parameter or set it to host.

This parameter is not supported for CreateFleet.

*/ @property (nonatomic, strong) NSString * _Nullable hostResourceGroupArn; /**

The number of the partition that the instance is in. Valid only if the placement group strategy is set to partition.

This parameter is not supported for CreateFleet.

*/ @property (nonatomic, strong) NSNumber * _Nullable partitionNumber; /**

Reserved for future use.

*/ @property (nonatomic, strong) NSString * _Nullable spreadDomain; /**

The tenancy of the instance. An instance with a tenancy of dedicated runs on single-tenant hardware.

This parameter is not supported for CreateFleet. The host tenancy is not supported for ImportInstance or for T3 instances that are configured for the unlimited CPU credit option.

*/ @property (nonatomic, assign) AWSEC2Tenancy tenancy; @end /**

Describes a placement group.

*/ @interface AWSEC2PlacementGroup : AWSModel /**

The Amazon Resource Name (ARN) of the placement group.

*/ @property (nonatomic, strong) NSString * _Nullable groupArn; /**

The ID of the placement group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The name of the placement group.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The number of partitions. Valid only if strategy is set to partition.

*/ @property (nonatomic, strong) NSNumber * _Nullable partitionCount; /**

The spread level for the placement group. Only Outpost placement groups can be spread across hosts.

*/ @property (nonatomic, assign) AWSEC2SpreadLevel spreadLevel; /**

The state of the placement group.

*/ @property (nonatomic, assign) AWSEC2PlacementGroupState state; /**

The placement strategy.

*/ @property (nonatomic, assign) AWSEC2PlacementStrategy strategy; /**

Any tags applied to the placement group.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes the placement group support of the instance type.

*/ @interface AWSEC2PlacementGroupInfo : AWSModel /**

The supported placement group types.

*/ @property (nonatomic, strong) NSArray * _Nullable supportedStrategies; @end /**

Describes the placement of an instance.

*/ @interface AWSEC2PlacementResponse : AWSModel /**

The name of the placement group that the instance is in.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; @end /**

Describes a CIDR block for an address pool.

*/ @interface AWSEC2PoolCidrBlock : AWSModel /**

The CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; @end /**

Describes a range of ports.

*/ @interface AWSEC2PortRange : AWSModel /**

The first port in the range.

*/ @property (nonatomic, strong) NSNumber * _Nullable from; /**

The last port in the range.

*/ @property (nonatomic, strong) NSNumber * _Nullable to; @end /**

Describes prefixes for Amazon Web Services services.

*/ @interface AWSEC2PrefixList : AWSModel /**

The IP address range of the Amazon Web Service.

*/ @property (nonatomic, strong) NSArray * _Nullable cidrs; /**

The ID of the prefix.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The name of the prefix.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListName; @end /**

Describes the resource with which a prefix list is associated.

*/ @interface AWSEC2PrefixListAssociation : AWSModel /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The owner of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceOwner; @end /**

Describes a prefix list entry.

*/ @interface AWSEC2PrefixListEntry : AWSModel /**

The CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

The description.

*/ @property (nonatomic, strong) NSString * _Nullable detail; @end /**

Describes a prefix list ID.

*/ @interface AWSEC2PrefixListId : AWSModel /**

A description for the security group rule that references this prefix list ID.

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the prefix.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; @end /**

Describes the price for a Reserved Instance.

*/ @interface AWSEC2PriceSchedule : AWSModel /**

The current price schedule, as determined by the term remaining for the Reserved Instance in the listing.

A specific price schedule is always in effect, but only one price schedule can be active at any time. Take, for example, a Reserved Instance listing that has five months remaining in its term. When you specify price schedules for five months and two months, this means that schedule 1, covering the first three months of the remaining term, will be active during months 5, 4, and 3. Then schedule 2, covering the last two months of the term, will be active for months 2 and 1.

*/ @property (nonatomic, strong) NSNumber * _Nullable active; /**

The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.

*/ @property (nonatomic, assign) AWSEC2CurrencyCodeValues currencyCode; /**

The fixed price for the term.

*/ @property (nonatomic, strong) NSNumber * _Nullable price; /**

The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

*/ @property (nonatomic, strong) NSNumber * _Nullable term; @end /**

Describes the price for a Reserved Instance.

*/ @interface AWSEC2PriceScheduleSpecification : AWSModel /**

The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.

*/ @property (nonatomic, assign) AWSEC2CurrencyCodeValues currencyCode; /**

The fixed price for the term.

*/ @property (nonatomic, strong) NSNumber * _Nullable price; /**

The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.

*/ @property (nonatomic, strong) NSNumber * _Nullable term; @end /**

Describes a Reserved Instance offering.

*/ @interface AWSEC2PricingDetail : AWSModel /**

The number of reservations available for the price.

*/ @property (nonatomic, strong) NSNumber * _Nullable count; /**

The price per instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable price; @end /**

PrincipalIdFormat description

*/ @interface AWSEC2PrincipalIdFormat : AWSModel /**

PrincipalIdFormatARN description

*/ @property (nonatomic, strong) NSString * _Nullable arn; /**

PrincipalIdFormatStatuses description

*/ @property (nonatomic, strong) NSArray * _Nullable statuses; @end /**

Information about the Private DNS name for interface endpoints.

*/ @interface AWSEC2PrivateDnsDetails : AWSModel /**

The private DNS name assigned to the VPC endpoint service.

*/ @property (nonatomic, strong) NSString * _Nullable privateDnsName; @end /**

Information about the private DNS name for the service endpoint.

*/ @interface AWSEC2PrivateDnsNameConfiguration : AWSModel /**

The name of the record subdomain the service provider needs to create. The service provider adds the value text to the name.

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The verification state of the VPC endpoint service.

>Consumers of the endpoint service can use the private name only when the state is verified.

*/ @property (nonatomic, assign) AWSEC2DnsNameState state; /**

The endpoint service verification type, for example TXT.

*/ @property (nonatomic, strong) NSString * _Nullable types; /**

The value the service provider adds to the private DNS name domain record before verification.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

Describes the options for instance hostnames.

*/ @interface AWSEC2PrivateDnsNameOptionsOnLaunch : AWSModel /**

Indicates whether to respond to DNS queries for instance hostname with DNS AAAA records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsAAAARecord; /**

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsARecord; /**

The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance IPv4 address or the instance ID.

*/ @property (nonatomic, assign) AWSEC2HostnameType hostnameType; @end /**

Describes the options for instance hostnames.

*/ @interface AWSEC2PrivateDnsNameOptionsRequest : AWSModel /**

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsAAAARecord; /**

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsARecord; /**

The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance IPv4 address or the instance ID.

*/ @property (nonatomic, assign) AWSEC2HostnameType hostnameType; @end /**

Describes the options for instance hostnames.

*/ @interface AWSEC2PrivateDnsNameOptionsResponse : AWSModel /**

Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsAAAARecord; /**

Indicates whether to respond to DNS queries for instance hostnames with DNS A records.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableResourceNameDnsARecord; /**

The type of hostname to assign to an instance.

*/ @property (nonatomic, assign) AWSEC2HostnameType hostnameType; @end /**

Describes a secondary private IPv4 address for a network interface.

*/ @interface AWSEC2PrivateIpAddressSpecification : AWSModel /**

Indicates whether the private IPv4 address is the primary private IPv4 address. Only one IPv4 address can be designated as primary.

*/ @property (nonatomic, strong) NSNumber * _Nullable primary; /**

The private IPv4 address.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; @end /**

Describes the processor used by the instance type.

*/ @interface AWSEC2ProcessorInfo : AWSModel /**

The architectures supported by the instance type.

*/ @property (nonatomic, strong) NSArray * _Nullable supportedArchitectures; /**

Indicates whether the instance type supports AMD SEV-SNP. If the request returns amd-sev-snp, AMD SEV-SNP is supported. Otherwise, it is not supported. For more information, see AMD SEV-SNP.

*/ @property (nonatomic, strong) NSArray * _Nullable supportedFeatures; /**

The speed of the processor, in GHz.

*/ @property (nonatomic, strong) NSNumber * _Nullable sustainedClockSpeedInGhz; @end /**

Describes a product code.

*/ @interface AWSEC2ProductCode : AWSModel /**

The product code.

*/ @property (nonatomic, strong) NSString * _Nullable productCodeId; /**

The type of product code.

*/ @property (nonatomic, assign) AWSEC2ProductCodeValues productCodeType; @end /**

Describes a virtual private gateway propagating route.

*/ @interface AWSEC2PropagatingVgw : AWSModel /**

The ID of the virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable gatewayId; @end /** */ @interface AWSEC2ProvisionByoipCidrRequest : AWSRequest /**

The public IPv4 or IPv6 address range, in CIDR notation. The most specific IPv4 prefix that you can specify is /24. The most specific IPv6 prefix you can specify is /56. The address range cannot overlap with another address range that you've brought to this or another Region.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP.

*/ @property (nonatomic, strong) AWSEC2CidrAuthorizationContext * _Nullable cidrAuthorizationContext; /**

A description for the address range and the address pool.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Reserved.

*/ @property (nonatomic, strong) NSNumber * _Nullable multiRegion; /**

The tags to apply to the address pool.

*/ @property (nonatomic, strong) NSArray * _Nullable poolTagSpecifications; /**

(IPv6 only) Indicate whether the address range will be publicly advertised to the internet.

Default: true

*/ @property (nonatomic, strong) NSNumber * _Nullable publiclyAdvertisable; @end /** */ @interface AWSEC2ProvisionByoipCidrResult : AWSModel /**

Information about the address range.

*/ @property (nonatomic, strong) AWSEC2ByoipCidr * _Nullable byoipCidr; @end /** */ @interface AWSEC2ProvisionIpamPoolCidrRequest : AWSRequest /**

The CIDR you want to assign to the IPAM pool. Either "NetmaskLength" or "Cidr" is required. This value will be null if you specify "NetmaskLength" and will be filled in during the provisioning process.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

A signed document that proves that you are authorized to bring a specified IP address range to Amazon using BYOIP. This option applies to public pools only.

*/ @property (nonatomic, strong) AWSEC2IpamCidrAuthorizationContext * _Nullable cidrAuthorizationContext; /**

A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the IPAM pool to which you want to assign a CIDR.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; /**

The netmask length of the CIDR you'd like to provision to a pool. Can be used for provisioning Amazon-provided IPv6 CIDRs to top-level pools and for provisioning CIDRs to pools with source pools. Cannot be used to provision BYOIP CIDRs to top-level pools. Either "NetmaskLength" or "Cidr" is required.

*/ @property (nonatomic, strong) NSNumber * _Nullable netmaskLength; @end /** */ @interface AWSEC2ProvisionIpamPoolCidrResult : AWSModel /**

Information about the provisioned CIDR.

*/ @property (nonatomic, strong) AWSEC2IpamPoolCidr * _Nullable ipamPoolCidr; @end /** */ @interface AWSEC2ProvisionPublicIpv4PoolCidrRequest : AWSRequest /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the IPAM pool you would like to use to allocate this CIDR.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; /**

The netmask length of the CIDR you would like to allocate to the public IPv4 pool.

*/ @property (nonatomic, strong) NSNumber * _Nullable netmaskLength; /**

The ID of the public IPv4 pool you would like to use for this CIDR.

*/ @property (nonatomic, strong) NSString * _Nullable poolId; @end /** */ @interface AWSEC2ProvisionPublicIpv4PoolCidrResult : AWSModel /**

Information about the address range of the public IPv4 pool.

*/ @property (nonatomic, strong) AWSEC2PublicIpv4PoolRange * _Nullable poolAddressRange; /**

The ID of the pool that you want to provision the CIDR to.

*/ @property (nonatomic, strong) NSString * _Nullable poolId; @end /**

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

*/ @interface AWSEC2ProvisionedBandwidth : AWSModel /**

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

*/ @property (nonatomic, strong) NSDate * _Nullable provisionTime; /**

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

*/ @property (nonatomic, strong) NSString * _Nullable provisioned; /**

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

*/ @property (nonatomic, strong) NSDate * _Nullable requestTime; /**

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

*/ @property (nonatomic, strong) NSString * _Nullable requested; /**

Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.

*/ @property (nonatomic, strong) NSString * _Nullable status; @end /**

The status of an updated pointer (PTR) record for an Elastic IP address.

*/ @interface AWSEC2PtrUpdateStatus : AWSModel /**

The reason for the PTR record update.

*/ @property (nonatomic, strong) NSString * _Nullable reason; /**

The status of the PTR record update.

*/ @property (nonatomic, strong) NSString * _Nullable status; /**

The value for the PTR record update.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

Describes an IPv4 address pool.

*/ @interface AWSEC2PublicIpv4Pool : AWSModel /**

A description of the address pool.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The name of the location from which the address pool is advertised. A network border group is a unique set of Availability Zones or Local Zones from where Amazon Web Services advertises public IP addresses.

*/ @property (nonatomic, strong) NSString * _Nullable networkBorderGroup; /**

The address ranges.

*/ @property (nonatomic, strong) NSArray * _Nullable poolAddressRanges; /**

The ID of the address pool.

*/ @property (nonatomic, strong) NSString * _Nullable poolId; /**

Any tags for the address pool.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The total number of addresses.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalAddressCount; /**

The total number of available addresses.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalAvailableAddressCount; @end /**

Describes an address range of an IPv4 address pool.

*/ @interface AWSEC2PublicIpv4PoolRange : AWSModel /**

The number of addresses in the range.

*/ @property (nonatomic, strong) NSNumber * _Nullable addressCount; /**

The number of available addresses in the range.

*/ @property (nonatomic, strong) NSNumber * _Nullable availableAddressCount; /**

The first IP address in the range.

*/ @property (nonatomic, strong) NSString * _Nullable firstAddress; /**

The last IP address in the range.

*/ @property (nonatomic, strong) NSString * _Nullable lastAddress; @end /**

Describes the result of the purchase.

*/ @interface AWSEC2Purchase : AWSModel /**

The currency in which the UpfrontPrice and HourlyPrice amounts are specified. At this time, the only supported currency is USD.

*/ @property (nonatomic, assign) AWSEC2CurrencyCodeValues currencyCode; /**

The duration of the reservation's term in seconds.

*/ @property (nonatomic, strong) NSNumber * _Nullable duration; /**

The IDs of the Dedicated Hosts associated with the reservation.

*/ @property (nonatomic, strong) NSArray * _Nullable hostIdSet; /**

The ID of the reservation.

*/ @property (nonatomic, strong) NSString * _Nullable hostReservationId; /**

The hourly price of the reservation per hour.

*/ @property (nonatomic, strong) NSString * _Nullable hourlyPrice; /**

The instance family on the Dedicated Host that the reservation can be associated with.

*/ @property (nonatomic, strong) NSString * _Nullable instanceFamily; /**

The payment option for the reservation.

*/ @property (nonatomic, assign) AWSEC2PaymentOption paymentOption; /**

The upfront price of the reservation.

*/ @property (nonatomic, strong) NSString * _Nullable upfrontPrice; @end /** */ @interface AWSEC2PurchaseHostReservationRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The currency in which the totalUpfrontPrice, LimitPrice, and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.

*/ @property (nonatomic, assign) AWSEC2CurrencyCodeValues currencyCode; /**

The IDs of the Dedicated Hosts with which the reservation will be associated.

*/ @property (nonatomic, strong) NSArray * _Nullable hostIdSet; /**

The specified limit is checked against the total upfront cost of the reservation (calculated as the offering's upfront cost multiplied by the host count). If the total upfront cost is greater than the specified price limit, the request fails. This is used to ensure that the purchase does not exceed the expected upfront cost of the purchase. At this time, the only supported currency is USD. For example, to indicate a limit price of USD 100, specify 100.00.

*/ @property (nonatomic, strong) NSString * _Nullable limitPrice; /**

The ID of the offering.

*/ @property (nonatomic, strong) NSString * _Nullable offeringId; /**

The tags to apply to the Dedicated Host Reservation during purchase.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2PurchaseHostReservationResult : AWSModel /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The currency in which the totalUpfrontPrice and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.

*/ @property (nonatomic, assign) AWSEC2CurrencyCodeValues currencyCode; /**

Describes the details of the purchase.

*/ @property (nonatomic, strong) NSArray * _Nullable purchase; /**

The total hourly price of the reservation calculated per hour.

*/ @property (nonatomic, strong) NSString * _Nullable totalHourlyPrice; /**

The total amount charged to your account when you purchase the reservation.

*/ @property (nonatomic, strong) NSString * _Nullable totalUpfrontPrice; @end /**

Describes a request to purchase Scheduled Instances.

Required parameters: [InstanceCount, PurchaseToken] */ @interface AWSEC2PurchaseRequest : AWSModel /**

The number of instances.

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

The purchase token.

*/ @property (nonatomic, strong) NSString * _Nullable purchaseToken; @end /**

Contains the parameters for PurchaseReservedInstancesOffering.

Required parameters: [InstanceCount, ReservedInstancesOfferingId] */ @interface AWSEC2PurchaseReservedInstancesOfferingRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The number of Reserved Instances to purchase.

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.

*/ @property (nonatomic, strong) AWSEC2ReservedInstanceLimitPrice * _Nullable limitPrice; /**

The time at which to purchase the Reserved Instance, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable purchaseTime; /**

The ID of the Reserved Instance offering to purchase.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesOfferingId; @end /**

Contains the output of PurchaseReservedInstancesOffering.

*/ @interface AWSEC2PurchaseReservedInstancesOfferingResult : AWSModel /**

The IDs of the purchased Reserved Instances. If your purchase crosses into a discounted pricing tier, the final Reserved Instances IDs might change. For more information, see Crossing pricing tiers in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesId; @end /**

Contains the parameters for PurchaseScheduledInstances.

Required parameters: [PurchaseRequests] */ @interface AWSEC2PurchaseScheduledInstancesRequest : AWSRequest /**

Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The purchase requests.

*/ @property (nonatomic, strong) NSArray * _Nullable purchaseRequests; @end /**

Contains the output of PurchaseScheduledInstances.

*/ @interface AWSEC2PurchaseScheduledInstancesResult : AWSModel /**

Information about the Scheduled Instances.

*/ @property (nonatomic, strong) NSArray * _Nullable scheduledInstanceSet; @end /** */ @interface AWSEC2RebootInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The instance IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; @end /**

Describes a recurring charge.

*/ @interface AWSEC2RecurringCharge : AWSModel /**

The amount of the recurring charge.

*/ @property (nonatomic, strong) NSNumber * _Nullable amount; /**

The frequency of the recurring charge.

*/ @property (nonatomic, assign) AWSEC2RecurringChargeFrequency frequency; @end /**

Describes the security group that is referenced in the security group rule.

*/ @interface AWSEC2ReferencedSecurityGroup : AWSModel /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The status of a VPC peering connection, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable peeringStatus; /**

The Amazon Web Services account ID.

*/ @property (nonatomic, strong) NSString * _Nullable userId; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; /**

The ID of the VPC peering connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /**

Describes a Region.

*/ @interface AWSEC2Region : AWSModel /**

The Region service endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable endpoint; /**

The Region opt-in status. The possible values are opt-in-not-required, opted-in, and not-opted-in.

*/ @property (nonatomic, strong) NSString * _Nullable optInStatus; /**

The name of the Region.

*/ @property (nonatomic, strong) NSString * _Nullable regionName; @end /**

Contains the parameters for RegisterImage.

Required parameters: [Name] */ @interface AWSEC2RegisterImageRequest : AWSRequest /**

The architecture of the AMI.

Default: For Amazon EBS-backed AMIs, i386. For instance store-backed AMIs, the architecture specified in the manifest file.

*/ @property (nonatomic, assign) AWSEC2ArchitectureValues architecture; /**

The billing product codes. Your account must be authorized to specify billing product codes.

If your account is not authorized to specify billing product codes, you can publish AMIs that include billable software and list them on the Amazon Web Services Marketplace. You must first register as a seller on the Amazon Web Services Marketplace. For more information, see Getting started as a seller and AMI-based products in the Amazon Web Services Marketplace Seller Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable billingProducts; /**

The block device mapping entries.

If you specify an Amazon EBS volume using the ID of an Amazon EBS snapshot, you can't specify the encryption state of the volume.

If you create an AMI on an Outpost, then all backing snapshots must be on the same Outpost or in the Region of that Outpost. AMIs on an Outpost that include local snapshots can be used to launch instances on the same Outpost only. For more information, Amazon EBS local snapshots on Outposts in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

The boot mode of the AMI. A value of uefi-preferred indicates that the AMI supports both UEFI and Legacy BIOS.

The operating system contained in the AMI must be configured to support the specified boot mode.

For more information, see Boot modes in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2BootModeValues bootMode; /**

A description for your AMI.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Set to true to enable enhanced networking with ENA for the AMI and any instances that you launch from the AMI.

This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.

*/ @property (nonatomic, strong) NSNumber * _Nullable enaSupport; /**

The full path to your AMI manifest in Amazon S3 storage. The specified bucket must have the aws-exec-read canned access control list (ACL) to ensure that it can be accessed by Amazon EC2. For more information, see Canned ACLs in the Amazon S3 Service Developer Guide.

*/ @property (nonatomic, strong) NSString * _Nullable imageLocation; /**

Set to v2.0 to indicate that IMDSv2 is specified in the AMI. Instances launched from this AMI will have HttpTokens automatically set to required so that, by default, the instance requires that IMDSv2 is used when requesting instance metadata. In addition, HttpPutResponseHopLimit is set to 2. For more information, see Configure the AMI in the Amazon EC2 User Guide.

If you set the value to v2.0, make sure that your AMI software can support IMDSv2.

*/ @property (nonatomic, assign) AWSEC2ImdsSupportValues imdsSupport; /**

The ID of the kernel.

*/ @property (nonatomic, strong) NSString * _Nullable kernelId; /**

A name for your AMI.

Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)

*/ @property (nonatomic, strong) NSString * _Nullable name; /**

The ID of the RAM disk.

*/ @property (nonatomic, strong) NSString * _Nullable ramdiskId; /**

The device name of the root device volume (for example, /dev/sda1).

*/ @property (nonatomic, strong) NSString * _Nullable rootDeviceName; /**

Set to simple to enable enhanced networking with the Intel 82599 Virtual Function interface for the AMI and any instances that you launch from the AMI.

There is no way to disable sriovNetSupport at this time.

This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.

*/ @property (nonatomic, strong) NSString * _Nullable sriovNetSupport; /**

Set to v2.0 to enable Trusted Platform Module (TPM) support. For more information, see NitroTPM in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2TpmSupportValues tpmSupport; /**

Base64 representation of the non-volatile UEFI variable store. To retrieve the UEFI data, use the GetInstanceUefiData command. You can inspect and modify the UEFI data by using the python-uefivars tool on GitHub. For more information, see UEFI Secure Boot in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable uefiData; /**

The type of virtualization (hvm | paravirtual).

Default: paravirtual

*/ @property (nonatomic, strong) NSString * _Nullable virtualizationType; @end /**

Contains the output of RegisterImage.

*/ @interface AWSEC2RegisterImageResult : AWSModel /**

The ID of the newly registered AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2RegisterInstanceEventNotificationAttributesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Information about the tag keys to register.

*/ @property (nonatomic, strong) AWSEC2RegisterInstanceTagAttributeRequest * _Nullable instanceTagAttribute; @end /** */ @interface AWSEC2RegisterInstanceEventNotificationAttributesResult : AWSModel /**

The resulting set of tag keys.

*/ @property (nonatomic, strong) AWSEC2InstanceTagNotificationAttribute * _Nullable instanceTagAttribute; @end /**

Information about the tag keys to register for the current Region. You can either specify individual tag keys or register all tag keys in the current Region. You must specify either IncludeAllTagsOfInstance or InstanceTagKeys in the request

*/ @interface AWSEC2RegisterInstanceTagAttributeRequest : AWSModel /**

Indicates whether to register all tag keys in the current Region. Specify true to register all tag keys.

*/ @property (nonatomic, strong) NSNumber * _Nullable includeAllTagsOfInstance; /**

The tag keys to register.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceTagKeys; @end /** */ @interface AWSEC2RegisterTransitGatewayMulticastGroupMembersRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IP address assigned to the transit gateway multicast group.

*/ @property (nonatomic, strong) NSString * _Nullable groupIpAddress; /**

The group members' network interface IDs to register with the transit gateway multicast group.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaceIds; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /** */ @interface AWSEC2RegisterTransitGatewayMulticastGroupMembersResult : AWSModel /**

Information about the registered transit gateway multicast group members.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayMulticastRegisteredGroupMembers * _Nullable registeredMulticastGroupMembers; @end /** */ @interface AWSEC2RegisterTransitGatewayMulticastGroupSourcesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IP address assigned to the transit gateway multicast group.

*/ @property (nonatomic, strong) NSString * _Nullable groupIpAddress; /**

The group sources' network interface IDs to register with the transit gateway multicast group.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaceIds; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /** */ @interface AWSEC2RegisterTransitGatewayMulticastGroupSourcesResult : AWSModel /**

Information about the transit gateway multicast group sources.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayMulticastRegisteredGroupSources * _Nullable registeredMulticastGroupSources; @end /** */ @interface AWSEC2RejectTransitGatewayMulticastDomainAssociationsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the subnets to associate with the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; /**

The ID of the transit gateway attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /** */ @interface AWSEC2RejectTransitGatewayMulticastDomainAssociationsResult : AWSModel /**

Information about the multicast domain associations.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayMulticastDomainAssociations * _Nullable associations; @end /** */ @interface AWSEC2RejectTransitGatewayPeeringAttachmentRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the transit gateway peering attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /** */ @interface AWSEC2RejectTransitGatewayPeeringAttachmentResult : AWSModel /**

The transit gateway peering attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPeeringAttachment * _Nullable transitGatewayPeeringAttachment; @end /** */ @interface AWSEC2RejectTransitGatewayVpcAttachmentRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /** */ @interface AWSEC2RejectTransitGatewayVpcAttachmentResult : AWSModel /**

Information about the attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayVpcAttachment * _Nullable transitGatewayVpcAttachment; @end /** */ @interface AWSEC2RejectVpcEndpointConnectionsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; /**

The IDs of the VPC endpoints.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcEndpointIds; @end /** */ @interface AWSEC2RejectVpcEndpointConnectionsResult : AWSModel /**

Information about the endpoints that were not rejected, if applicable.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessful; @end /** */ @interface AWSEC2RejectVpcPeeringConnectionRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the VPC peering connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /** */ @interface AWSEC2RejectVpcPeeringConnectionResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ReleaseAddressRequest : AWSRequest /**

The allocation ID. This parameter is required.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP addresses.

If you provide an incorrect network border group, you receive an InvalidAddress.NotFound error.

You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 classic, you receive an InvalidParameterCombination error.

*/ @property (nonatomic, strong) NSString * _Nullable networkBorderGroup; /**

Deprecated.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; @end /** */ @interface AWSEC2ReleaseHostsRequest : AWSRequest /**

The IDs of the Dedicated Hosts to release.

*/ @property (nonatomic, strong) NSArray * _Nullable hostIds; @end /** */ @interface AWSEC2ReleaseHostsResult : AWSModel /**

The IDs of the Dedicated Hosts that were successfully released.

*/ @property (nonatomic, strong) NSArray * _Nullable successful; /**

The IDs of the Dedicated Hosts that could not be released, including an error message.

*/ @property (nonatomic, strong) NSArray * _Nullable unsuccessful; @end /** */ @interface AWSEC2ReleaseIpamPoolAllocationRequest : AWSRequest /**

The CIDR of the allocation you want to release.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

A check for whether you have the required permissions for the action without actually making the request and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the allocation.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolAllocationId; /**

The ID of the IPAM pool which contains the allocation you want to release.

*/ @property (nonatomic, strong) NSString * _Nullable ipamPoolId; @end /** */ @interface AWSEC2ReleaseIpamPoolAllocationResult : AWSModel /**

Indicates if the release was successful.

*/ @property (nonatomic, strong) NSNumber * _Nullable success; @end /**

Remove an operating Region from an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide

*/ @interface AWSEC2RemoveIpamOperatingRegion : AWSModel /**

The name of the operating Region you want to remove.

*/ @property (nonatomic, strong) NSString * _Nullable regionName; @end /**

An entry for a prefix list.

Required parameters: [Cidr] */ @interface AWSEC2RemovePrefixListEntry : AWSModel /**

The CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; @end /** */ @interface AWSEC2ReplaceIamInstanceProfileAssociationRequest : AWSRequest /**

The ID of the existing IAM instance profile association.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The IAM instance profile.

*/ @property (nonatomic, strong) AWSEC2IamInstanceProfileSpecification * _Nullable iamInstanceProfile; @end /** */ @interface AWSEC2ReplaceIamInstanceProfileAssociationResult : AWSModel /**

Information about the IAM instance profile association.

*/ @property (nonatomic, strong) AWSEC2IamInstanceProfileAssociation * _Nullable iamInstanceProfileAssociation; @end /** */ @interface AWSEC2ReplaceNetworkAclAssociationRequest : AWSRequest /**

The ID of the current association between the original network ACL and the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the new network ACL to associate with the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable networkAclId; @end /** */ @interface AWSEC2ReplaceNetworkAclAssociationResult : AWSModel /**

The ID of the new association.

*/ @property (nonatomic, strong) NSString * _Nullable latestAssociationId; @end /** */ @interface AWSEC2ReplaceNetworkAclEntryRequest : AWSRequest /**

The IPv4 network range to allow or deny, in CIDR notation (for example 172.16.0.0/24).

*/ @property (nonatomic, strong) NSString * _Nullable cidrBlock; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether to replace the egress rule.

Default: If no value is specified, we replace the ingress rule.

*/ @property (nonatomic, strong) NSNumber * _Nullable egress; /**

ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.

*/ @property (nonatomic, strong) AWSEC2IcmpTypeCode * _Nullable icmpTypeCode; /**

The IPv6 network range to allow or deny, in CIDR notation (for example 2001:bd8:1234:1a00::/64).

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlock; /**

The ID of the ACL.

*/ @property (nonatomic, strong) NSString * _Nullable networkAclId; /**

TCP or UDP protocols: The range of ports the rule applies to. Required if specifying protocol 6 (TCP) or 17 (UDP).

*/ @property (nonatomic, strong) AWSEC2PortRange * _Nullable portRange; /**

The protocol number. A value of "-1" means all protocols. If you specify "-1" or a protocol number other than "6" (TCP), "17" (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless of any ports or ICMP types or codes that you specify. If you specify protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP types and codes allowed, regardless of any that you specify. If you specify protocol "58" (ICMPv6) and specify an IPv6 CIDR block, you must specify an ICMP type and code.

*/ @property (nonatomic, strong) NSString * _Nullable protocols; /**

Indicates whether to allow or deny the traffic that matches the rule.

*/ @property (nonatomic, assign) AWSEC2RuleAction ruleAction; /**

The rule number of the entry to replace.

*/ @property (nonatomic, strong) NSNumber * _Nullable ruleNumber; @end /**

Information about a root volume replacement task.

*/ @interface AWSEC2ReplaceRootVolumeTask : AWSModel /**

The time the task completed.

*/ @property (nonatomic, strong) NSString * _Nullable completeTime; /**

Indicates whether the original root volume is to be deleted after the root volume replacement task completes.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteReplacedRootVolume; /**

The ID of the AMI used to create the replacement root volume.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The ID of the instance for which the root volume replacement task was created.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The ID of the root volume replacement task.

*/ @property (nonatomic, strong) NSString * _Nullable replaceRootVolumeTaskId; /**

The ID of the snapshot used to create the replacement root volume.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The time the task was started.

*/ @property (nonatomic, strong) NSString * _Nullable startTime; /**

The tags assigned to the task.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The state of the task. The task can be in one of the following states:

  • pending - the replacement volume is being created.

  • in-progress - the original volume is being detached and the replacement volume is being attached.

  • succeeded - the replacement volume has been successfully attached to the instance and the instance is available.

  • failing - the replacement task is in the process of failing.

  • failed - the replacement task has failed but the original root volume is still attached.

  • failing-detached - the replacement task is in the process of failing. The instance might have no root volume attached.

  • failed-detached - the replacement task has failed and the instance has no root volume attached.

*/ @property (nonatomic, assign) AWSEC2ReplaceRootVolumeTaskState taskState; @end /** */ @interface AWSEC2ReplaceRouteRequest : AWSRequest /**

[IPv4 traffic only] The ID of a carrier gateway.

*/ @property (nonatomic, strong) NSString * _Nullable carrierGatewayId; /**

The Amazon Resource Name (ARN) of the core network.

*/ @property (nonatomic, strong) NSString * _Nullable coreNetworkArn; /**

The IPv4 CIDR address block used for the destination match. The value that you provide must match the CIDR of an existing route in the table.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The IPv6 CIDR address block used for the destination match. The value that you provide must match the CIDR of an existing route in the table.

*/ @property (nonatomic, strong) NSString * _Nullable destinationIpv6CidrBlock; /**

The ID of the prefix list for the route.

*/ @property (nonatomic, strong) NSString * _Nullable destinationPrefixListId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

[IPv6 traffic only] The ID of an egress-only internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable egressOnlyInternetGatewayId; /**

The ID of an internet gateway or virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable gatewayId; /**

The ID of a NAT instance in your VPC.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The ID of the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayId; /**

Specifies whether to reset the local route to its default target (local).

*/ @property (nonatomic, strong) NSNumber * _Nullable localTarget; /**

[IPv4 traffic only] The ID of a NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; /**

The ID of a network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The ID of the route table.

*/ @property (nonatomic, strong) NSString * _Nullable routeTableId; /**

The ID of a transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.

*/ @property (nonatomic, strong) NSString * _Nullable vpcEndpointId; /**

The ID of a VPC peering connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /** */ @interface AWSEC2ReplaceRouteTableAssociationRequest : AWSRequest /**

The association ID.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the new route table to associate with the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable routeTableId; @end /** */ @interface AWSEC2ReplaceRouteTableAssociationResult : AWSModel /**

The state of the association.

*/ @property (nonatomic, strong) AWSEC2RouteTableAssociationState * _Nullable associationState; /**

The ID of the new association.

*/ @property (nonatomic, strong) NSString * _Nullable latestAssociationId; @end /** */ @interface AWSEC2ReplaceTransitGatewayRouteRequest : AWSRequest /**

Indicates whether traffic matching this route is to be dropped.

*/ @property (nonatomic, strong) NSNumber * _Nullable blackhole; /**

The CIDR range used for the destination match. Routing decisions are based on the most specific match.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2ReplaceTransitGatewayRouteResult : AWSModel /**

Information about the modified route.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayRoute * _Nullable route; @end /** */ @interface AWSEC2ReplaceVpnTunnelRequest : AWSRequest /**

Trigger pending tunnel endpoint maintenance.

*/ @property (nonatomic, strong) NSNumber * _Nullable applyPendingMaintenance; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Site-to-Site VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; /**

The external IP address of the VPN tunnel.

*/ @property (nonatomic, strong) NSString * _Nullable vpnTunnelOutsideIpAddress; @end /** */ @interface AWSEC2ReplaceVpnTunnelResult : AWSModel /**

Confirmation of replace tunnel operation.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2ReportInstanceStatusRequest : AWSRequest /**

Descriptive text about the health state of your instance.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The time at which the reported instance health state ended.

*/ @property (nonatomic, strong) NSDate * _Nullable endTime; /**

The instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instances; /**

The reason codes that describe the health state of your instance.

  • instance-stuck-in-state: My instance is stuck in a state.

  • unresponsive: My instance is unresponsive.

  • not-accepting-credentials: My instance is not accepting my credentials.

  • password-not-available: A password is not available for my instance.

  • performance-network: My instance is experiencing performance problems that I believe are network related.

  • performance-instance-store: My instance is experiencing performance problems that I believe are related to the instance stores.

  • performance-ebs-volume: My instance is experiencing performance problems that I believe are related to an EBS volume.

  • performance-other: My instance is experiencing performance problems.

  • other: [explain using the description parameter]

*/ @property (nonatomic, strong) NSArray * _Nullable reasonCodes; /**

The time at which the reported instance health state began.

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; /**

The status of all instances listed.

*/ @property (nonatomic, assign) AWSEC2ReportStatusType status; @end /**

Describes a port range.

*/ @interface AWSEC2RequestFilterPortRange : AWSModel /**

The first port in the range.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The last port in the range.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; @end /**

A tag on an IPAM resource.

*/ @interface AWSEC2RequestIpamResourceTag : AWSModel /**

The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.

*/ @property (nonatomic, strong) NSString * _Nullable key; /**

The value for the tag.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

The information to include in the launch template.

You must specify at least one parameter for the launch template data.

*/ @interface AWSEC2RequestLaunchTemplateData : AWSModel /**

The block device mapping.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

The Capacity Reservation targeting option. If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open, which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateCapacityReservationSpecificationRequest * _Nullable capacityReservationSpecification; /**

The CPU options for the instance. For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateCpuOptionsRequest * _Nullable cpuOptions; /**

The credit option for CPU usage of the instance. Valid only for T instances.

*/ @property (nonatomic, strong) AWSEC2CreditSpecificationRequest * _Nullable creditSpecification; /**

Indicates whether to enable the instance for stop protection. For more information, see Stop protection in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable disableApiStop; /**

If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable disableApiTermination; /**

Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

An elastic GPU to associate with the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable elasticGpuSpecifications; /**

The elastic inference accelerator for the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable elasticInferenceAccelerators; /**

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more information, see What is Amazon Web Services Nitro Enclaves? in the Amazon Web Services Nitro Enclaves User Guide.

You can't enable Amazon Web Services Nitro Enclaves and hibernation on the same instance.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateEnclaveOptionsRequest * _Nullable enclaveOptions; /**

Indicates whether an instance is enabled for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your instance in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateHibernationOptionsRequest * _Nullable hibernationOptions; /**

The name or Amazon Resource Name (ARN) of an IAM instance profile.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateIamInstanceProfileSpecificationRequest * _Nullable iamInstanceProfile; /**

The ID of the AMI. Alternatively, you can specify a Systems Manager parameter, which will resolve to an AMI ID on launch.

Valid formats:

  • ami-17characters00000

  • resolve:ssm:parameter-name

  • resolve:ssm:parameter-name:version-number

  • resolve:ssm:parameter-name:label

  • resolve:ssm:public-parameter

Currently, EC2 Fleet and Spot Fleet do not support specifying a Systems Manager parameter. If the launch template will be used by an EC2 Fleet or Spot Fleet, you must specify the AMI ID.

For more information, see Use a Systems Manager parameter instead of an AMI ID in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

Default: stop

*/ @property (nonatomic, assign) AWSEC2ShutdownBehavior instanceInitiatedShutdownBehavior; /**

The market (purchasing) option for the instances.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateInstanceMarketOptionsRequest * _Nullable instanceMarketOptions; /**

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

You must specify VCpuCount and MemoryMiB. All other attributes are optional. Any unspecified optional attribute is set to its default.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

  • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.

  • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard, or with the RunInstances API or AWS::EC2::Instance Amazon Web Services CloudFormation resource, you can't specify InstanceRequirements.

For more information, see Attribute-based instance type selection for EC2 Fleet, Attribute-based instance type selection for Spot Fleet, and Spot placement score in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) AWSEC2InstanceRequirementsRequest * _Nullable instanceRequirements; /**

The instance type. For more information, see Instance types in the Amazon Elastic Compute Cloud User Guide.

If you specify InstanceType, you can't specify InstanceRequirements.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The ID of the kernel.

We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User provided kernels in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable kernelId; /**

The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair.

If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

The license configurations.

*/ @property (nonatomic, strong) NSArray * _Nullable licenseSpecifications; /**

The maintenance options for the instance.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateInstanceMaintenanceOptionsRequest * _Nullable maintenanceOptions; /**

The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateInstanceMetadataOptionsRequest * _Nullable metadataOptions; /**

The monitoring for the instance.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplatesMonitoringRequest * _Nullable monitoring; /**

One or more network interfaces. If you specify a network interface, you must specify any security groups and subnets as part of the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaces; /**

The placement for the instance.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplatePlacementRequest * _Nullable placement; /**

The options for the instance hostname. The default values are inherited from the subnet.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplatePrivateDnsNameOptionsRequest * _Nullable privateDnsNameOptions; /**

The ID of the RAM disk.

We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User provided kernels in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable ramDiskId; /**

One or more security group IDs. You can create a security group using CreateSecurityGroup. You cannot specify both a security group ID and security name in the same request.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

One or more security group names. For a nondefault VPC, you must use security group IDs instead. You cannot specify both a security group ID and security name in the same request.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroups; /**

The tags to apply to the resources that are created during instance launch.

You can specify tags for the following resources only:

  • Instances

  • Volumes

  • Elastic graphics

  • Spot Instance requests

  • Network interfaces

To tag a resource after it has been created, see CreateTags.

To tag the launch template itself, you must use the TagSpecification parameter.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The user data to make available to the instance. You must provide base64-encoded text. User data is limited to 16 KB. For more information, see Run commands on your Linux instance at launch (Linux) or Work with instance user data (Windows) in the Amazon Elastic Compute Cloud User Guide.

If you are creating the launch template for use with Batch, the user data must be provided in the MIME multi-part archive format. For more information, see Amazon EC2 user data in launch templates in the Batch User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable userData; @end /**

Contains the parameters for RequestSpotFleet.

Required parameters: [SpotFleetRequestConfig] */ @interface AWSEC2RequestSpotFleetRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The configuration for the Spot Fleet request.

*/ @property (nonatomic, strong) AWSEC2SpotFleetRequestConfigData * _Nullable spotFleetRequestConfig; @end /**

Contains the output of RequestSpotFleet.

*/ @interface AWSEC2RequestSpotFleetResponse : AWSModel /**

The ID of the Spot Fleet request.

*/ @property (nonatomic, strong) NSString * _Nullable spotFleetRequestId; @end /**

Contains the parameters for RequestSpotInstances.

*/ @interface AWSEC2RequestSpotInstancesRequest : AWSRequest /**

The user-specified name for a logical grouping of requests.

When you specify an Availability Zone group in a Spot Instance request, all Spot Instances in the request are launched in the same Availability Zone. Instance proximity is maintained with this parameter, but the choice of Availability Zone is not. The group applies only to requests for Spot Instances of the same instance type. Any additional Spot Instance requests that are specified with the same Availability Zone group name are launched in that same Availability Zone, as long as at least one instance from the group is still active.

If there is no active instance running in the Availability Zone group that you specify for a new Spot Instance request (all instances are terminated, the request is expired, or the maximum price you specified falls below current Spot price), then Amazon EC2 launches the instance in any Availability Zone where the constraint can be met. Consequently, the subsequent set of Spot Instances could be placed in a different zone from the original request, even if you specified the same Availability Zone group.

Default: Instances are launched in any available Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZoneGroup; /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable blockDurationMinutes; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon EC2 User Guide for Linux Instances.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum number of Spot Instances to launch.

Default: 1

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

The behavior when a Spot Instance is interrupted. The default is terminate.

*/ @property (nonatomic, assign) AWSEC2InstanceInterruptionBehavior instanceInterruptionBehavior; /**

The instance launch group. Launch groups are Spot Instances that launch together and terminate together.

Default: Instances are launched and terminated individually

*/ @property (nonatomic, strong) NSString * _Nullable launchGroup; /**

The launch specification.

*/ @property (nonatomic, strong) AWSEC2RequestSpotLaunchSpecification * _Nullable launchSpecification; /**

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable spotPrice; /**

The key-value pair for tagging the Spot Instance request on creation. The value for ResourceType must be spot-instances-request, otherwise the Spot Instance request fails. To tag the Spot Instance request after it has been created, see CreateTags.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The Spot Instance request type.

Default: one-time

*/ @property (nonatomic, assign) AWSEC2SpotInstanceType types; /**

The start date of the request. If this is a one-time request, the request becomes active at this date and time and remains active until all instances launch, the request expires, or the request is canceled. If the request is persistent, the request becomes active at this date and time and remains active until it expires or is canceled.

The specified start date and time cannot be equal to the current date and time. You must specify a start date and time that occurs after the current date and time.

*/ @property (nonatomic, strong) NSDate * _Nullable validFrom; /**

The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ).

  • For a persistent request, the request remains active until the ValidUntil date and time is reached. Otherwise, the request remains active until you cancel it.

  • For a one-time request, the request remains active until all instances launch, the request is canceled, or the ValidUntil date and time is reached. By default, the request is valid for 7 days from the date the request was created.

*/ @property (nonatomic, strong) NSDate * _Nullable validUntil; @end /**

Contains the output of RequestSpotInstances.

*/ @interface AWSEC2RequestSpotInstancesResult : AWSModel /**

The Spot Instance requests.

*/ @property (nonatomic, strong) NSArray * _Nullable spotInstanceRequests; @end /**

Describes the launch specification for an instance.

*/ @interface AWSEC2RequestSpotLaunchSpecification : AWSModel /**

Deprecated.

*/ @property (nonatomic, strong) NSString * _Nullable addressingType; /**

The block device mapping entries. You can't specify both a snapshot ID and an encryption value. This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its encryption status is used for the volume encryption status.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

The IAM instance profile.

*/ @property (nonatomic, strong) AWSEC2IamInstanceProfileSpecification * _Nullable iamInstanceProfile; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The instance type. Only one instance type can be specified.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The ID of the kernel.

*/ @property (nonatomic, strong) NSString * _Nullable kernelId; /**

The name of the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

Indicates whether basic or detailed monitoring is enabled for the instance.

Default: Disabled

*/ @property (nonatomic, strong) AWSEC2RunInstancesMonitoringEnabled * _Nullable monitoring; /**

The network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaces; /**

The placement information for the instance.

*/ @property (nonatomic, strong) AWSEC2SpotPlacement * _Nullable placement; /**

The ID of the RAM disk.

*/ @property (nonatomic, strong) NSString * _Nullable ramdiskId; /**

The IDs of the security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

Not supported.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroups; /**

The ID of the subnet in which to launch the instance.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.

*/ @property (nonatomic, strong) NSString * _Nullable userData; @end /**

Describes a launch request for one or more instances, and includes owner, requester, and security group information that applies to all instances in the launch request.

*/ @interface AWSEC2Reservation : AWSModel /**

Not supported.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instances; /**

The ID of the Amazon Web Services account that owns the reservation.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The ID of the requester that launched the instances on your behalf (for example, Amazon Web Services Management Console or Auto Scaling).

*/ @property (nonatomic, strong) NSString * _Nullable requesterId; /**

The ID of the reservation.

*/ @property (nonatomic, strong) NSString * _Nullable reservationId; @end /**

Information about an instance type to use in a Capacity Reservation Fleet.

*/ @interface AWSEC2ReservationFleetInstanceSpecification : AWSModel /**

The Availability Zone in which the Capacity Reservation Fleet reserves the capacity. A Capacity Reservation Fleet can't span Availability Zones. All instance type specifications that you specify for the Fleet must use the same Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The ID of the Availability Zone in which the Capacity Reservation Fleet reserves the capacity. A Capacity Reservation Fleet can't span Availability Zones. All instance type specifications that you specify for the Fleet must use the same Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZoneId; /**

Indicates whether the Capacity Reservation Fleet supports EBS-optimized instances types. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using EBS-optimized instance types.

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

The type of operating system for which the Capacity Reservation Fleet reserves capacity.

*/ @property (nonatomic, assign) AWSEC2CapacityReservationInstancePlatform instancePlatform; /**

The instance type for which the Capacity Reservation Fleet reserves capacity.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The priority to assign to the instance type. This value is used to determine which of the instance types specified for the Fleet should be prioritized for use. A lower value indicates a high priority. For more information, see Instance type priority in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable priority; /**

The number of capacity units provided by the specified instance type. This value, together with the total target capacity that you specify for the Fleet determine the number of instances for which the Fleet reserves capacity. Both values are based on units that make sense for your workload. For more information, see Total target capacity in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable weight; @end /**

The cost associated with the Reserved Instance.

*/ @interface AWSEC2ReservationValue : AWSModel /**

The hourly rate of the reservation.

*/ @property (nonatomic, strong) NSString * _Nullable hourlyPrice; /**

The balance of the total value (the sum of remainingUpfrontValue + hourlyPrice * number of hours remaining).

*/ @property (nonatomic, strong) NSString * _Nullable remainingTotalValue; /**

The remaining upfront cost of the reservation.

*/ @property (nonatomic, strong) NSString * _Nullable remainingUpfrontValue; @end /**

Describes the limit price of a Reserved Instance offering.

*/ @interface AWSEC2ReservedInstanceLimitPrice : AWSModel /**

Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).

*/ @property (nonatomic, strong) NSNumber * _Nullable amount; /**

The currency in which the limitPrice amount is specified. At this time, the only supported currency is USD.

*/ @property (nonatomic, assign) AWSEC2CurrencyCodeValues currencyCode; @end /**

The total value of the Convertible Reserved Instance.

*/ @interface AWSEC2ReservedInstanceReservationValue : AWSModel /**

The total value of the Convertible Reserved Instance that you are exchanging.

*/ @property (nonatomic, strong) AWSEC2ReservationValue * _Nullable reservationValue; /**

The ID of the Convertible Reserved Instance that you are exchanging.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstanceId; @end /**

Describes a Reserved Instance.

*/ @interface AWSEC2ReservedInstances : AWSModel /**

The Availability Zone in which the Reserved Instance can be used.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The currency of the Reserved Instance. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.

*/ @property (nonatomic, assign) AWSEC2CurrencyCodeValues currencyCode; /**

The duration of the Reserved Instance, in seconds.

*/ @property (nonatomic, strong) NSNumber * _Nullable duration; /**

The time when the Reserved Instance expires.

*/ @property (nonatomic, strong) NSDate * _Nullable end; /**

The purchase price of the Reserved Instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable fixedPrice; /**

The number of reservations purchased.

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

The tenancy of the instance.

*/ @property (nonatomic, assign) AWSEC2Tenancy instanceTenancy; /**

The instance type on which the Reserved Instance can be used.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The offering class of the Reserved Instance.

*/ @property (nonatomic, assign) AWSEC2OfferingClassType offeringClass; /**

The Reserved Instance offering type.

*/ @property (nonatomic, assign) AWSEC2OfferingTypeValues offeringType; /**

The Reserved Instance product platform description.

*/ @property (nonatomic, assign) AWSEC2RIProductDescription productDescription; /**

The recurring charge tag assigned to the resource.

*/ @property (nonatomic, strong) NSArray * _Nullable recurringCharges; /**

The ID of the Reserved Instance.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesId; /**

The scope of the Reserved Instance.

*/ @property (nonatomic, assign) AWSEC2scope scope; /**

The date and time the Reserved Instance started.

*/ @property (nonatomic, strong) NSDate * _Nullable start; /**

The state of the Reserved Instance purchase.

*/ @property (nonatomic, assign) AWSEC2ReservedInstanceState state; /**

Any tags assigned to the resource.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The usage price of the Reserved Instance, per hour.

*/ @property (nonatomic, strong) NSNumber * _Nullable usagePrice; @end /**

Describes the configuration settings for the modified Reserved Instances.

*/ @interface AWSEC2ReservedInstancesConfiguration : AWSModel /**

The Availability Zone for the modified Reserved Instances.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The number of modified Reserved Instances.

This is a required field for a request.

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

The instance type for the modified Reserved Instances.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The network platform of the modified Reserved Instances.

*/ @property (nonatomic, strong) NSString * _Nullable platform; /**

Whether the Reserved Instance is applied to instances in a Region or instances in a specific Availability Zone.

*/ @property (nonatomic, assign) AWSEC2scope scope; @end /**

Describes the ID of a Reserved Instance.

*/ @interface AWSEC2ReservedInstancesId : AWSModel /**

The ID of the Reserved Instance.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesId; @end /**

Describes a Reserved Instance listing.

*/ @interface AWSEC2ReservedInstancesListing : AWSModel /**

A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The time the listing was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createDate; /**

The number of instances in this state.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceCounts; /**

The price of the Reserved Instance listing.

*/ @property (nonatomic, strong) NSArray * _Nullable priceSchedules; /**

The ID of the Reserved Instance.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesId; /**

The ID of the Reserved Instance listing.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesListingId; /**

The status of the Reserved Instance listing.

*/ @property (nonatomic, assign) AWSEC2ListingStatus status; /**

The reason for the current status of the Reserved Instance listing. The response can be blank.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

Any tags assigned to the resource.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The last modified timestamp of the listing.

*/ @property (nonatomic, strong) NSDate * _Nullable updateDate; @end /**

Describes a Reserved Instance modification.

*/ @interface AWSEC2ReservedInstancesModification : AWSModel /**

A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The time when the modification request was created.

*/ @property (nonatomic, strong) NSDate * _Nullable createDate; /**

The time for the modification to become effective.

*/ @property (nonatomic, strong) NSDate * _Nullable effectiveDate; /**

Contains target configurations along with their corresponding new Reserved Instance IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable modificationResults; /**

The IDs of one or more Reserved Instances.

*/ @property (nonatomic, strong) NSArray * _Nullable reservedInstancesIds; /**

A unique ID for the Reserved Instance modification.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesModificationId; /**

The status of the Reserved Instances modification request.

*/ @property (nonatomic, strong) NSString * _Nullable status; /**

The reason for the status.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

The time when the modification request was last updated.

*/ @property (nonatomic, strong) NSDate * _Nullable updateDate; @end /**

Describes the modification request/s.

*/ @interface AWSEC2ReservedInstancesModificationResult : AWSModel /**

The ID for the Reserved Instances that were created as part of the modification request. This field is only available when the modification is fulfilled.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesId; /**

The target Reserved Instances configurations supplied as part of the modification request.

*/ @property (nonatomic, strong) AWSEC2ReservedInstancesConfiguration * _Nullable targetConfiguration; @end /**

Describes a Reserved Instance offering.

*/ @interface AWSEC2ReservedInstancesOffering : AWSModel /**

The Availability Zone in which the Reserved Instance can be used.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The currency of the Reserved Instance offering you are purchasing. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.

*/ @property (nonatomic, assign) AWSEC2CurrencyCodeValues currencyCode; /**

The duration of the Reserved Instance, in seconds.

*/ @property (nonatomic, strong) NSNumber * _Nullable duration; /**

The purchase price of the Reserved Instance.

*/ @property (nonatomic, strong) NSNumber * _Nullable fixedPrice; /**

The tenancy of the instance.

*/ @property (nonatomic, assign) AWSEC2Tenancy instanceTenancy; /**

The instance type on which the Reserved Instance can be used.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

Indicates whether the offering is available through the Reserved Instance Marketplace (resale) or Amazon Web Services. If it's a Reserved Instance Marketplace offering, this is true.

*/ @property (nonatomic, strong) NSNumber * _Nullable marketplace; /**

If convertible it can be exchanged for Reserved Instances of the same or higher monetary value, with different configurations. If standard, it is not possible to perform an exchange.

*/ @property (nonatomic, assign) AWSEC2OfferingClassType offeringClass; /**

The Reserved Instance offering type.

*/ @property (nonatomic, assign) AWSEC2OfferingTypeValues offeringType; /**

The pricing details of the Reserved Instance offering.

*/ @property (nonatomic, strong) NSArray * _Nullable pricingDetails; /**

The Reserved Instance product platform description.

*/ @property (nonatomic, assign) AWSEC2RIProductDescription productDescription; /**

The recurring charge tag assigned to the resource.

*/ @property (nonatomic, strong) NSArray * _Nullable recurringCharges; /**

The ID of the Reserved Instance offering. This is the offering ID used in GetReservedInstancesExchangeQuote to confirm that an exchange can be made.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesOfferingId; /**

Whether the Reserved Instance is applied to instances in a Region or an Availability Zone.

*/ @property (nonatomic, assign) AWSEC2scope scope; /**

The usage price of the Reserved Instance, per hour.

*/ @property (nonatomic, strong) NSNumber * _Nullable usagePrice; @end /** */ @interface AWSEC2ResetAddressAttributeRequest : AWSRequest /**

[EC2-VPC] The allocation ID.

*/ @property (nonatomic, strong) NSString * _Nullable allocationId; /**

The attribute of the IP address.

*/ @property (nonatomic, assign) AWSEC2AddressAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2ResetAddressAttributeResult : AWSModel /**

Information about the IP address.

*/ @property (nonatomic, strong) AWSEC2AddressAttribute * _Nullable address; @end /** */ @interface AWSEC2ResetEbsDefaultKmsKeyIdRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2ResetEbsDefaultKmsKeyIdResult : AWSModel /**

The Amazon Resource Name (ARN) of the default KMS key for EBS encryption by default.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; @end /** */ @interface AWSEC2ResetFpgaImageAttributeRequest : AWSRequest /**

The attribute.

*/ @property (nonatomic, assign) AWSEC2ResetFpgaImageAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AFI.

*/ @property (nonatomic, strong) NSString * _Nullable fpgaImageId; @end /** */ @interface AWSEC2ResetFpgaImageAttributeResult : AWSModel /**

Is true if the request succeeds, and an error otherwise.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /**

Contains the parameters for ResetImageAttribute.

Required parameters: [Attribute, ImageId] */ @interface AWSEC2ResetImageAttributeRequest : AWSRequest /**

The attribute to reset (currently you can only reset the launch permission attribute).

*/ @property (nonatomic, assign) AWSEC2ResetImageAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2ResetInstanceAttributeRequest : AWSRequest /**

The attribute to reset.

You can only reset the following attributes: kernel | ramdisk | sourceDestCheck.

*/ @property (nonatomic, assign) AWSEC2InstanceAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /**

Contains the parameters for ResetNetworkInterfaceAttribute.

Required parameters: [NetworkInterfaceId] */ @interface AWSEC2ResetNetworkInterfaceAttributeRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The source/destination checking attribute. Resets the value to true.

*/ @property (nonatomic, strong) NSString * _Nullable sourceDestCheck; @end /** */ @interface AWSEC2ResetSnapshotAttributeRequest : AWSRequest /**

The attribute to reset. Currently, only the attribute for permission to create volumes can be reset.

*/ @property (nonatomic, assign) AWSEC2SnapshotAttributeName attribute; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; @end /**

Describes a resource statement.

*/ @interface AWSEC2ResourceStatement : AWSModel /**

The resource types.

*/ @property (nonatomic, strong) NSArray * _Nullable resourceTypes; /**

The resources.

*/ @property (nonatomic, strong) NSArray * _Nullable resources; @end /**

Describes a resource statement.

*/ @interface AWSEC2ResourceStatementRequest : AWSModel /**

The resource types.

*/ @property (nonatomic, strong) NSArray * _Nullable resourceTypes; /**

The resources.

*/ @property (nonatomic, strong) NSArray * _Nullable resources; @end /**

Describes the error that's returned when you cannot delete a launch template version.

*/ @interface AWSEC2ResponseError : AWSModel /**

The error code.

*/ @property (nonatomic, assign) AWSEC2LaunchTemplateErrorCode code; /**

The error message, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

The information for a launch template.

*/ @interface AWSEC2ResponseLaunchTemplateData : AWSModel /**

The block device mappings.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

Information about the Capacity Reservation targeting option.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateCapacityReservationSpecificationResponse * _Nullable capacityReservationSpecification; /**

The CPU options for the instance. For more information, see Optimizing CPU options in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateCpuOptions * _Nullable cpuOptions; /**

The credit option for CPU usage of the instance.

*/ @property (nonatomic, strong) AWSEC2CreditSpecification * _Nullable creditSpecification; /**

Indicates whether the instance is enabled for stop protection. For more information, see Stop protection in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSNumber * _Nullable disableApiStop; /**

If set to true, indicates that the instance cannot be terminated using the Amazon EC2 console, command line tool, or API.

*/ @property (nonatomic, strong) NSNumber * _Nullable disableApiTermination; /**

Indicates whether the instance is optimized for Amazon EBS I/O.

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

The elastic GPU specification.

*/ @property (nonatomic, strong) NSArray * _Nullable elasticGpuSpecifications; /**

The elastic inference accelerator for the instance.

*/ @property (nonatomic, strong) NSArray * _Nullable elasticInferenceAccelerators; /**

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateEnclaveOptions * _Nullable enclaveOptions; /**

Indicates whether an instance is configured for hibernation. For more information, see Hibernate your instance in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateHibernationOptions * _Nullable hibernationOptions; /**

The IAM instance profile.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateIamInstanceProfileSpecification * _Nullable iamInstanceProfile; /**

The ID of the AMI or a Systems Manager parameter. The Systems Manager parameter will resolve to the ID of the AMI at instance launch.

The value depends on what you specified in the request. The possible values are:

  • If an AMI ID was specified in the request, then this is the AMI ID.

  • If a Systems Manager parameter was specified in the request, and ResolveAlias was configured as true, then this is the AMI ID that the parameter is mapped to in the Parameter Store.

  • If a Systems Manager parameter was specified in the request, and ResolveAlias was configured as false, then this is the parameter value.

For more information, see Use a Systems Manager parameter instead of an AMI ID in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

*/ @property (nonatomic, assign) AWSEC2ShutdownBehavior instanceInitiatedShutdownBehavior; /**

The market (purchasing) option for the instances.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateInstanceMarketOptions * _Nullable instanceMarketOptions; /**

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

If you specify InstanceRequirements, you can't specify InstanceTypes.

*/ @property (nonatomic, strong) AWSEC2InstanceRequirements * _Nullable instanceRequirements; /**

The instance type.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The ID of the kernel, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable kernelId; /**

The name of the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

The license configurations.

*/ @property (nonatomic, strong) NSArray * _Nullable licenseSpecifications; /**

The maintenance options for your instance.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateInstanceMaintenanceOptions * _Nullable maintenanceOptions; /**

The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateInstanceMetadataOptions * _Nullable metadataOptions; /**

The monitoring for the instance.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplatesMonitoring * _Nullable monitoring; /**

The network interfaces.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaces; /**

The placement of the instance.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplatePlacement * _Nullable placement; /**

The options for the instance hostname.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplatePrivateDnsNameOptions * _Nullable privateDnsNameOptions; /**

The ID of the RAM disk, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable ramDiskId; /**

The security group IDs.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

The security group names.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroups; /**

The tags that are applied to the resources that are created during instance launch.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The user data for the instance.

*/ @property (nonatomic, strong) NSString * _Nullable userData; @end /** */ @interface AWSEC2RestoreAddressToClassicRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; @end /** */ @interface AWSEC2RestoreAddressToClassicResult : AWSModel /**

The Elastic IP address.

*/ @property (nonatomic, strong) NSString * _Nullable publicIp; /**

The move status for the IP address.

*/ @property (nonatomic, assign) AWSEC2Status status; @end /** */ @interface AWSEC2RestoreImageFromRecycleBinRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the AMI to restore.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; @end /** */ @interface AWSEC2RestoreImageFromRecycleBinResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2RestoreManagedPrefixListVersionRequest : AWSRequest /**

The current version number for the prefix list.

*/ @property (nonatomic, strong) NSNumber * _Nullable currentVersion; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The version to restore.

*/ @property (nonatomic, strong) NSNumber * _Nullable previousVersion; @end /** */ @interface AWSEC2RestoreManagedPrefixListVersionResult : AWSModel /**

Information about the prefix list.

*/ @property (nonatomic, strong) AWSEC2ManagedPrefixList * _Nullable prefixList; @end /** */ @interface AWSEC2RestoreSnapshotFromRecycleBinRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the snapshot to restore.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; @end /** */ @interface AWSEC2RestoreSnapshotFromRecycleBinResult : AWSModel /**

The description for the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Indicates whether the snapshot is encrypted.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The ARN of the Outpost on which the snapshot is stored. For more information, see Amazon EBS local snapshots on Outposts in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The ID of the Amazon Web Services account that owns the EBS snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The progress of the snapshot, as a percentage.

*/ @property (nonatomic, strong) NSString * _Nullable progress; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The time stamp when the snapshot was initiated.

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; /**

The state of the snapshot.

*/ @property (nonatomic, assign) AWSEC2SnapshotState state; /**

The ID of the volume that was used to create the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; /**

The size of the volume, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable volumeSize; @end /** */ @interface AWSEC2RestoreSnapshotTierRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether to permanently restore an archived snapshot. To permanently restore an archived snapshot, specify true and omit the RestoreSnapshotTierRequest$TemporaryRestoreDays parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable permanentRestore; /**

The ID of the snapshot to restore.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

Specifies the number of days for which to temporarily restore an archived snapshot. Required for temporary restores only. The snapshot will be automatically re-archived after this period.

To temporarily restore an archived snapshot, specify the number of days and omit the PermanentRestore parameter or set it to false.

*/ @property (nonatomic, strong) NSNumber * _Nullable temporaryRestoreDays; @end /** */ @interface AWSEC2RestoreSnapshotTierResult : AWSModel /**

Indicates whether the snapshot is permanently restored. true indicates a permanent restore. false indicates a temporary restore.

*/ @property (nonatomic, strong) NSNumber * _Nullable isPermanentRestore; /**

For temporary restores only. The number of days for which the archived snapshot is temporarily restored.

*/ @property (nonatomic, strong) NSNumber * _Nullable restoreDuration; /**

The date and time when the snapshot restore process started.

*/ @property (nonatomic, strong) NSDate * _Nullable restoreStartTime; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; @end /** */ @interface AWSEC2RevokeClientVpnIngressRequest : AWSRequest /**

The ID of the Active Directory group for which to revoke access.

*/ @property (nonatomic, strong) NSString * _Nullable accessGroupId; /**

The ID of the Client VPN endpoint with which the authorization rule is associated.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether access should be revoked for all clients.

*/ @property (nonatomic, strong) NSNumber * _Nullable revokeAllGroups; /**

The IPv4 address range, in CIDR notation, of the network for which access is being removed.

*/ @property (nonatomic, strong) NSString * _Nullable targetNetworkCidr; @end /** */ @interface AWSEC2RevokeClientVpnIngressResult : AWSModel /**

The current state of the authorization rule.

*/ @property (nonatomic, strong) AWSEC2ClientVpnAuthorizationRuleStatus * _Nullable status; @end /** */ @interface AWSEC2RevokeSecurityGroupEgressRequest : AWSRequest /**

Not supported. Use a set of IP permissions to specify the CIDR.

*/ @property (nonatomic, strong) NSString * _Nullable cidrIp; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Not supported. Use a set of IP permissions to specify the port.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The sets of IP permissions. You can't specify a destination security group and a CIDR IP address range in the same set of permissions.

*/ @property (nonatomic, strong) NSArray * _Nullable ipPermissions; /**

Not supported. Use a set of IP permissions to specify the protocol name or number.

*/ @property (nonatomic, strong) NSString * _Nullable ipProtocol; /**

The IDs of the security group rules.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupRuleIds; /**

Not supported. Use a set of IP permissions to specify a destination security group.

*/ @property (nonatomic, strong) NSString * _Nullable sourceSecurityGroupName; /**

Not supported. Use a set of IP permissions to specify a destination security group.

*/ @property (nonatomic, strong) NSString * _Nullable sourceSecurityGroupOwnerId; /**

Not supported. Use a set of IP permissions to specify the port.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; @end /** */ @interface AWSEC2RevokeSecurityGroupEgressResult : AWSModel /**

Returns true if the request succeeds; otherwise, returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; /**

The outbound rules that were unknown to the service. In some cases, unknownIpPermissionSet might be in a different format from the request parameter.

*/ @property (nonatomic, strong) NSArray * _Nullable unknownIpPermissions; @end /** */ @interface AWSEC2RevokeSecurityGroupIngressRequest : AWSRequest /**

The CIDR IP address range. You can't specify this parameter when specifying a source security group.

*/ @property (nonatomic, strong) NSString * _Nullable cidrIp; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

If the protocol is TCP or UDP, this is the start of the port range. If the protocol is ICMP, this is the type number. A value of -1 indicates all ICMP types.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

[Default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The sets of IP permissions. You can't specify a source security group and a CIDR IP address range in the same set of permissions.

*/ @property (nonatomic, strong) NSArray * _Nullable ipPermissions; /**

The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). Use -1 to specify all.

*/ @property (nonatomic, strong) NSString * _Nullable ipProtocol; /**

The IDs of the security group rules.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupRuleIds; /**

[Default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. The source security group must be in the same VPC. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.

*/ @property (nonatomic, strong) NSString * _Nullable sourceSecurityGroupName; /**

Not supported.

*/ @property (nonatomic, strong) NSString * _Nullable sourceSecurityGroupOwnerId; /**

If the protocol is TCP or UDP, this is the end of the port range. If the protocol is ICMP, this is the code. A value of -1 indicates all ICMP codes.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; @end /** */ @interface AWSEC2RevokeSecurityGroupIngressResult : AWSModel /**

Returns true if the request succeeds; otherwise, returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; /**

The inbound rules that were unknown to the service. In some cases, unknownIpPermissionSet might be in a different format from the request parameter.

*/ @property (nonatomic, strong) NSArray * _Nullable unknownIpPermissions; @end /**

Describes a route in a route table.

*/ @interface AWSEC2Route : AWSModel /**

The ID of the carrier gateway.

*/ @property (nonatomic, strong) NSString * _Nullable carrierGatewayId; /**

The Amazon Resource Name (ARN) of the core network.

*/ @property (nonatomic, strong) NSString * _Nullable coreNetworkArn; /**

The IPv4 CIDR block used for the destination match.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The IPv6 CIDR block used for the destination match.

*/ @property (nonatomic, strong) NSString * _Nullable destinationIpv6CidrBlock; /**

The prefix of the Amazon Web Service.

*/ @property (nonatomic, strong) NSString * _Nullable destinationPrefixListId; /**

The ID of the egress-only internet gateway.

*/ @property (nonatomic, strong) NSString * _Nullable egressOnlyInternetGatewayId; /**

The ID of a gateway attached to your VPC.

*/ @property (nonatomic, strong) NSString * _Nullable gatewayId; /**

The ID of a NAT instance in your VPC.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The ID of Amazon Web Services account that owns the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceOwnerId; /**

The ID of the local gateway.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayId; /**

The ID of a NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

Describes how the route was created.

  • CreateRouteTable - The route was automatically created when the route table was created.

  • CreateRoute - The route was manually added to the route table.

  • EnableVgwRoutePropagation - The route was propagated by route propagation.

*/ @property (nonatomic, assign) AWSEC2RouteOrigin origin; /**

The state of the route. The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, or the specified NAT instance has been terminated).

*/ @property (nonatomic, assign) AWSEC2RouteState state; /**

The ID of a transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of a VPC peering connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /**

Describes a route table.

*/ @interface AWSEC2RouteTable : AWSModel /**

The associations between the route table and one or more subnets or a gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable associations; /**

The ID of the Amazon Web Services account that owns the route table.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

Any virtual private gateway (VGW) propagating routes.

*/ @property (nonatomic, strong) NSArray * _Nullable propagatingVgws; /**

The ID of the route table.

*/ @property (nonatomic, strong) NSString * _Nullable routeTableId; /**

The routes in the route table.

*/ @property (nonatomic, strong) NSArray * _Nullable routes; /**

Any tags assigned to the route table.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes an association between a route table and a subnet or gateway.

*/ @interface AWSEC2RouteTableAssociation : AWSModel /**

The state of the association.

*/ @property (nonatomic, strong) AWSEC2RouteTableAssociationState * _Nullable associationState; /**

The ID of the internet gateway or virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable gatewayId; /**

Indicates whether this is the main route table.

*/ @property (nonatomic, strong) NSNumber * _Nullable main; /**

The ID of the association.

*/ @property (nonatomic, strong) NSString * _Nullable routeTableAssociationId; /**

The ID of the route table.

*/ @property (nonatomic, strong) NSString * _Nullable routeTableId; /**

The ID of the subnet. A subnet ID is not returned for an implicit association.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /**

Describes the state of an association between a route table and a subnet or gateway.

*/ @interface AWSEC2RouteTableAssociationState : AWSModel /**

The state of the association.

*/ @property (nonatomic, assign) AWSEC2RouteTableAssociationStateCode state; /**

The status message, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; @end /**

Describes the rule options for a stateful rule group.

*/ @interface AWSEC2RuleGroupRuleOptionsPair : AWSModel /**

The ARN of the rule group.

*/ @property (nonatomic, strong) NSString * _Nullable ruleGroupArn; /**

The rule options.

*/ @property (nonatomic, strong) NSArray * _Nullable ruleOptions; @end /**

Describes the type of a stateful rule group.

*/ @interface AWSEC2RuleGroupTypePair : AWSModel /**

The ARN of the rule group.

*/ @property (nonatomic, strong) NSString * _Nullable ruleGroupArn; /**

The rule group type. The possible values are Domain List and Suricata.

*/ @property (nonatomic, strong) NSString * _Nullable ruleGroupType; @end /**

Describes additional settings for a stateful rule.

*/ @interface AWSEC2RuleOption : AWSModel /**

The Suricata keyword.

*/ @property (nonatomic, strong) NSString * _Nullable keyword; /**

The settings for the keyword.

*/ @property (nonatomic, strong) NSArray * _Nullable settings; @end /**

Describes the monitoring of an instance.

Required parameters: [Enabled] */ @interface AWSEC2RunInstancesMonitoringEnabled : AWSModel /**

Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /** */ @interface AWSEC2RunInstancesRequest : AWSRequest /**

Reserved.

*/ @property (nonatomic, strong) NSString * _Nullable additionalInfo; /**

The block device mapping, which defines the EBS volumes and instance store volumes to attach to the instance at launch. For more information, see Block device mappings in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

Information about the Capacity Reservation targeting option. If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open, which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).

*/ @property (nonatomic, strong) AWSEC2CapacityReservationSpecification * _Nullable capacityReservationSpecification; /**

Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you do not specify a client token, a randomly generated token is used for the request to ensure idempotency.

For more information, see Ensuring Idempotency.

Constraints: Maximum 64 ASCII characters

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

The CPU options for the instance. For more information, see Optimize CPU options in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) AWSEC2CpuOptionsRequest * _Nullable cpuOptions; /**

The credit option for CPU usage of the burstable performance instance. Valid values are standard and unlimited. To change this attribute after launch, use ModifyInstanceCreditSpecification. For more information, see Burstable performance instances in the Amazon EC2 User Guide.

Default: standard (T2 instances) or unlimited (T3/T3a/T4g instances)

For T3 instances with host tenancy, only standard is supported.

*/ @property (nonatomic, strong) AWSEC2CreditSpecificationRequest * _Nullable creditSpecification; /**

Indicates whether an instance is enabled for stop protection. For more information, see Stop protection.

*/ @property (nonatomic, strong) NSNumber * _Nullable disableApiStop; /**

If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after launch, use ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable disableApiTermination; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

An elastic GPU to associate with the instance. An Elastic GPU is a GPU resource that you can attach to your Windows instance to accelerate the graphics performance of your applications. For more information, see Amazon EC2 Elastic GPUs in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSArray * _Nullable elasticGpuSpecification; /**

An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads.

You cannot specify accelerators from different generations in the same request.

Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.

*/ @property (nonatomic, strong) NSArray * _Nullable elasticInferenceAccelerators; /**

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more information, see What is Amazon Web Services Nitro Enclaves? in the Amazon Web Services Nitro Enclaves User Guide.

You can't enable Amazon Web Services Nitro Enclaves and hibernation on the same instance.

*/ @property (nonatomic, strong) AWSEC2EnclaveOptionsRequest * _Nullable enclaveOptions; /**

Indicates whether an instance is enabled for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your instance in the Amazon EC2 User Guide.

You can't enable hibernation and Amazon Web Services Nitro Enclaves on the same instance.

*/ @property (nonatomic, strong) AWSEC2HibernationOptionsRequest * _Nullable hibernationOptions; /**

The name or Amazon Resource Name (ARN) of an IAM instance profile.

*/ @property (nonatomic, strong) AWSEC2IamInstanceProfileSpecification * _Nullable iamInstanceProfile; /**

The ID of the AMI. An AMI ID is required to launch an instance and must be specified here or in a launch template.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).

Default: stop

*/ @property (nonatomic, assign) AWSEC2ShutdownBehavior instanceInitiatedShutdownBehavior; /**

The market (purchasing) option for the instances.

For RunInstances, persistent Spot Instance requests are only supported when InstanceInterruptionBehavior is set to either hibernate or stop.

*/ @property (nonatomic, strong) AWSEC2InstanceMarketOptionsRequest * _Nullable instanceMarketOptions; /**

The instance type. For more information, see Instance types in the Amazon EC2 User Guide.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch.

You cannot specify this option and the network interfaces option in the same request.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6AddressCount; /**

The IPv6 addresses from the range of the subnet to associate with the primary network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch.

You cannot specify this option and the network interfaces option in the same request.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Addresses; /**

The ID of the kernel.

We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable kernelId; /**

The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair.

If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

The launch template to use to launch the instances. Any parameters that you specify in RunInstances override the same parameters in the launch template. You can specify either the name or ID of a launch template, but not both.

*/ @property (nonatomic, strong) AWSEC2LaunchTemplateSpecification * _Nullable launchTemplate; /**

The license configurations.

*/ @property (nonatomic, strong) NSArray * _Nullable licenseSpecifications; /**

The maintenance and recovery options for the instance.

*/ @property (nonatomic, strong) AWSEC2InstanceMaintenanceOptionsRequest * _Nullable maintenanceOptions; /**

The maximum number of instances to launch. If you specify more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches the largest possible number of instances above MinCount.

Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 FAQ.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxCount; /**

The metadata options for the instance. For more information, see Instance metadata and user data.

*/ @property (nonatomic, strong) AWSEC2InstanceMetadataOptionsRequest * _Nullable metadataOptions; /**

The minimum number of instances to launch. If you specify a minimum that is more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches no instances.

Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 General FAQ.

*/ @property (nonatomic, strong) NSNumber * _Nullable minCount; /**

Specifies whether detailed monitoring is enabled for the instance.

*/ @property (nonatomic, strong) AWSEC2RunInstancesMonitoringEnabled * _Nullable monitoring; /**

The network interfaces to associate with the instance. If you specify a network interface, you must specify any security groups and subnets as part of the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaces; /**

The placement for the instance.

*/ @property (nonatomic, strong) AWSEC2Placement * _Nullable placement; /**

The options for the instance hostname. The default values are inherited from the subnet. Applies only if creating a network interface, not attaching an existing one.

*/ @property (nonatomic, strong) AWSEC2PrivateDnsNameOptionsRequest * _Nullable privateDnsNameOptions; /**

The primary IPv4 address. You must specify a value from the IPv4 address range of the subnet.

Only one private IP address can be designated as primary. You can't specify this option if you've specified the option to designate a private IP address as the primary IP address in a network interface specification. You cannot specify this option if you're launching more than one instance in the request.

You cannot specify this option and the network interfaces option in the same request.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

The ID of the RAM disk to select. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, go to the Amazon Web Services Resource Center and search for the kernel ID.

We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon EC2 User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable ramdiskId; /**

The IDs of the security groups. You can create a security group using CreateSecurityGroup.

If you specify a network interface, you must specify any security groups as part of the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

[Default VPC] The names of the security groups.

If you specify a network interface, you must specify any security groups as part of the network interface.

Default: Amazon EC2 uses the default security group.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroups; /**

The ID of the subnet to launch the instance into.

If you specify a network interface, you must specify any subnets as part of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The tags to apply to the resources that are created during instance launch.

You can specify tags for the following resources only:

  • Instances

  • Volumes

  • Elastic graphics

  • Spot Instance requests

  • Network interfaces

To tag a resource after it has been created, see CreateTags.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The user data script to make available to the instance. For more information, see Run commands on your Linux instance at launch and Run commands on your Windows instance at launch. If you are using a command line tool, base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide base64-encoded text. User data is limited to 16 KB.

*/ @property (nonatomic, strong) NSString * _Nullable userData; @end /**

Contains the parameters for RunScheduledInstances.

Required parameters: [LaunchSpecification, ScheduledInstanceId] */ @interface AWSEC2RunScheduledInstancesRequest : AWSRequest /**

Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The number of instances.

Default: 1

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

The launch specification. You must match the instance type, Availability Zone, network, and platform of the schedule that you purchased.

*/ @property (nonatomic, strong) AWSEC2ScheduledInstancesLaunchSpecification * _Nullable launchSpecification; /**

The Scheduled Instance ID.

*/ @property (nonatomic, strong) NSString * _Nullable scheduledInstanceId; @end /**

Contains the output of RunScheduledInstances.

*/ @interface AWSEC2RunScheduledInstancesResult : AWSModel /**

The IDs of the newly launched instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIdSet; @end /**

The tags to apply to the AMI object that will be stored in the Amazon S3 bucket. For more information, see Categorizing your storage using tags in the Amazon Simple Storage Service User Guide.

*/ @interface AWSEC2S3ObjectTag : AWSModel /**

The key of the tag.

Constraints: Tag keys are case-sensitive and can be up to 128 Unicode characters in length. May not begin with aws:.

*/ @property (nonatomic, strong) NSString * _Nullable key; /**

The value of the tag.

Constraints: Tag values are case-sensitive and can be up to 256 Unicode characters in length.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

Describes the storage parameters for Amazon S3 and Amazon S3 buckets for an instance store-backed AMI.

*/ @interface AWSEC2S3Storage : AWSModel /**

The access key ID of the owner of the bucket. Before you specify a value for your access key ID, review and follow the guidance in Best Practices for Amazon Web Services accounts in the Account ManagementReference Guide.

*/ @property (nonatomic, strong) NSString * _Nullable AWSAccessKeyId; /**

The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.

*/ @property (nonatomic, strong) NSString * _Nullable bucket; /**

The beginning of the file name of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable prefix; /**

An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your behalf.

*/ @property (nonatomic, strong) NSData * _Nullable uploadPolicy; /**

The signature of the JSON document.

*/ @property (nonatomic, strong) NSString * _Nullable uploadPolicySignature; @end /**

Describes a Scheduled Instance.

*/ @interface AWSEC2ScheduledInstance : AWSModel /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The date when the Scheduled Instance was purchased.

*/ @property (nonatomic, strong) NSDate * _Nullable createDate; /**

The hourly price for a single instance.

*/ @property (nonatomic, strong) NSString * _Nullable hourlyPrice; /**

The number of instances.

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

The instance type.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; /**

The network platform.

*/ @property (nonatomic, strong) NSString * _Nullable networkPlatform; /**

The time for the next schedule to start.

*/ @property (nonatomic, strong) NSDate * _Nullable nextSlotStartTime; /**

The platform (Linux/UNIX or Windows).

*/ @property (nonatomic, strong) NSString * _Nullable platform; /**

The time that the previous schedule ended or will end.

*/ @property (nonatomic, strong) NSDate * _Nullable previousSlotEndTime; /**

The schedule recurrence.

*/ @property (nonatomic, strong) AWSEC2ScheduledInstanceRecurrence * _Nullable recurrence; /**

The Scheduled Instance ID.

*/ @property (nonatomic, strong) NSString * _Nullable scheduledInstanceId; /**

The number of hours in the schedule.

*/ @property (nonatomic, strong) NSNumber * _Nullable slotDurationInHours; /**

The end date for the Scheduled Instance.

*/ @property (nonatomic, strong) NSDate * _Nullable termEndDate; /**

The start date for the Scheduled Instance.

*/ @property (nonatomic, strong) NSDate * _Nullable termStartDate; /**

The total number of hours for a single instance for the entire term.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalScheduledInstanceHours; @end /**

Describes a schedule that is available for your Scheduled Instances.

*/ @interface AWSEC2ScheduledInstanceAvailability : AWSModel /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The number of available instances.

*/ @property (nonatomic, strong) NSNumber * _Nullable availableInstanceCount; /**

The time period for the first schedule to start.

*/ @property (nonatomic, strong) NSDate * _Nullable firstSlotStartTime; /**

The hourly price for a single instance.

*/ @property (nonatomic, strong) NSString * _Nullable hourlyPrice; /**

The instance type. You can specify one of the C3, C4, M4, or R3 instance types.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; /**

The maximum term. The only possible value is 365 days.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxTermDurationInDays; /**

The minimum term. The only possible value is 365 days.

*/ @property (nonatomic, strong) NSNumber * _Nullable minTermDurationInDays; /**

The network platform.

*/ @property (nonatomic, strong) NSString * _Nullable networkPlatform; /**

The platform (Linux/UNIX or Windows).

*/ @property (nonatomic, strong) NSString * _Nullable platform; /**

The purchase token. This token expires in two hours.

*/ @property (nonatomic, strong) NSString * _Nullable purchaseToken; /**

The schedule recurrence.

*/ @property (nonatomic, strong) AWSEC2ScheduledInstanceRecurrence * _Nullable recurrence; /**

The number of hours in the schedule.

*/ @property (nonatomic, strong) NSNumber * _Nullable slotDurationInHours; /**

The total number of hours for a single instance for the entire term.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalScheduledInstanceHours; @end /**

Describes the recurring schedule for a Scheduled Instance.

*/ @interface AWSEC2ScheduledInstanceRecurrence : AWSModel /**

The frequency (Daily, Weekly, or Monthly).

*/ @property (nonatomic, strong) NSString * _Nullable frequency; /**

The interval quantity. The interval unit depends on the value of frequency. For example, every 2 weeks or every 2 months.

*/ @property (nonatomic, strong) NSNumber * _Nullable interval; /**

The days. For a monthly schedule, this is one or more days of the month (1-31). For a weekly schedule, this is one or more days of the week (1-7, where 1 is Sunday).

*/ @property (nonatomic, strong) NSArray * _Nullable occurrenceDaySet; /**

Indicates whether the occurrence is relative to the end of the specified week or month.

*/ @property (nonatomic, strong) NSNumber * _Nullable occurrenceRelativeToEnd; /**

The unit for occurrenceDaySet (DayOfWeek or DayOfMonth).

*/ @property (nonatomic, strong) NSString * _Nullable occurrenceUnit; @end /**

Describes the recurring schedule for a Scheduled Instance.

*/ @interface AWSEC2ScheduledInstanceRecurrenceRequest : AWSModel /**

The frequency (Daily, Weekly, or Monthly).

*/ @property (nonatomic, strong) NSString * _Nullable frequency; /**

The interval quantity. The interval unit depends on the value of Frequency. For example, every 2 weeks or every 2 months.

*/ @property (nonatomic, strong) NSNumber * _Nullable interval; /**

The days. For a monthly schedule, this is one or more days of the month (1-31). For a weekly schedule, this is one or more days of the week (1-7, where 1 is Sunday). You can't specify this value with a daily schedule. If the occurrence is relative to the end of the month, you can specify only a single day.

*/ @property (nonatomic, strong) NSArray * _Nullable occurrenceDays; /**

Indicates whether the occurrence is relative to the end of the specified week or month. You can't specify this value with a daily schedule.

*/ @property (nonatomic, strong) NSNumber * _Nullable occurrenceRelativeToEnd; /**

The unit for OccurrenceDays (DayOfWeek or DayOfMonth). This value is required for a monthly schedule. You can't specify DayOfWeek with a weekly schedule. You can't specify this value with a daily schedule.

*/ @property (nonatomic, strong) NSString * _Nullable occurrenceUnit; @end /**

Describes a block device mapping for a Scheduled Instance.

*/ @interface AWSEC2ScheduledInstancesBlockDeviceMapping : AWSModel /**

The device name (for example, /dev/sdh or xvdh).

*/ @property (nonatomic, strong) NSString * _Nullable deviceName; /**

Parameters used to set up EBS volumes automatically when the instance is launched.

*/ @property (nonatomic, strong) AWSEC2ScheduledInstancesEbs * _Nullable ebs; /**

To omit the device from the block device mapping, specify an empty string.

*/ @property (nonatomic, strong) NSString * _Nullable noDevice; /**

The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with two available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.

Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable virtualName; @end /**

Describes an EBS volume for a Scheduled Instance.

*/ @interface AWSEC2ScheduledInstancesEbs : AWSModel /**

Indicates whether the volume is deleted on instance termination.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

Indicates whether the volume is encrypted. You can attached encrypted volumes only to instances that support them.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The number of I/O operations per second (IOPS) to provision for an io1 or io2 volume, with a maximum ratio of 50 IOPS/GiB for io1, and 500 IOPS/GiB for io2. Range is 100 to 64,000 IOPS for volumes in most Regions. Maximum IOPS of 64,000 is guaranteed only on instances built on the Nitro System. Other instance families guarantee performance up to 32,000 IOPS. For more information, see Amazon EBS volume types in the Amazon EC2 User Guide.

This parameter is valid only for Provisioned IOPS SSD (io1 and io2) volumes.

*/ @property (nonatomic, strong) NSNumber * _Nullable iops; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The size of the volume, in GiB.

Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.

*/ @property (nonatomic, strong) NSNumber * _Nullable volumeSize; /**

The volume type. gp2 for General Purpose SSD, io1 or io2 for Provisioned IOPS SSD, Throughput Optimized HDD for st1, Cold HDD for sc1, or standard for Magnetic.

Default: gp2

*/ @property (nonatomic, strong) NSString * _Nullable volumeType; @end /**

Describes an IAM instance profile for a Scheduled Instance.

*/ @interface AWSEC2ScheduledInstancesIamInstanceProfile : AWSModel /**

The Amazon Resource Name (ARN).

*/ @property (nonatomic, strong) NSString * _Nullable arn; /**

The name.

*/ @property (nonatomic, strong) NSString * _Nullable name; @end /**

Describes an IPv6 address.

*/ @interface AWSEC2ScheduledInstancesIpv6Address : AWSModel /**

The IPv6 address.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Address; @end /**

Describes the launch specification for a Scheduled Instance.

If you are launching the Scheduled Instance in EC2-VPC, you must specify the ID of the subnet. You can specify the subnet using either SubnetId or NetworkInterface.

Required parameters: [ImageId] */ @interface AWSEC2ScheduledInstancesLaunchSpecification : AWSModel /**

The block device mapping entries.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

The IAM instance profile.

*/ @property (nonatomic, strong) AWSEC2ScheduledInstancesIamInstanceProfile * _Nullable iamInstanceProfile; /**

The ID of the Amazon Machine Image (AMI).

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The instance type.

*/ @property (nonatomic, strong) NSString * _Nullable instanceType; /**

The ID of the kernel.

*/ @property (nonatomic, strong) NSString * _Nullable kernelId; /**

The name of the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

Enable or disable monitoring for the instances.

*/ @property (nonatomic, strong) AWSEC2ScheduledInstancesMonitoring * _Nullable monitoring; /**

The network interfaces.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaces; /**

The placement information.

*/ @property (nonatomic, strong) AWSEC2ScheduledInstancesPlacement * _Nullable placement; /**

The ID of the RAM disk.

*/ @property (nonatomic, strong) NSString * _Nullable ramdiskId; /**

The IDs of the security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

The ID of the subnet in which to launch the instances.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The base64-encoded MIME user data.

*/ @property (nonatomic, strong) NSString * _Nullable userData; @end /**

Describes whether monitoring is enabled for a Scheduled Instance.

*/ @interface AWSEC2ScheduledInstancesMonitoring : AWSModel /**

Indicates whether monitoring is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Describes a network interface for a Scheduled Instance.

*/ @interface AWSEC2ScheduledInstancesNetworkInterface : AWSModel /**

Indicates whether to assign a public IPv4 address to instances launched in a VPC. The public IPv4 address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true.

*/ @property (nonatomic, strong) NSNumber * _Nullable associatePublicIpAddress; /**

Indicates whether to delete the interface when the instance is terminated.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

The description.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The index of the device for the network interface attachment.

*/ @property (nonatomic, strong) NSNumber * _Nullable deviceIndex; /**

The IDs of the security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The number of IPv6 addresses to assign to the network interface. The IPv6 addresses are automatically selected from the subnet range.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6AddressCount; /**

The specific IPv6 addresses from the subnet range.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Addresses; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The IPv4 address of the network interface within the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; /**

The private IPv4 addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddressConfigs; /**

The number of secondary private IPv4 addresses.

*/ @property (nonatomic, strong) NSNumber * _Nullable secondaryPrivateIpAddressCount; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /**

Describes the placement for a Scheduled Instance.

*/ @interface AWSEC2ScheduledInstancesPlacement : AWSModel /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The name of the placement group.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; @end /**

Describes a private IPv4 address for a Scheduled Instance.

*/ @interface AWSEC2ScheduledInstancesPrivateIpAddressConfig : AWSModel /**

Indicates whether this is a primary IPv4 address. Otherwise, this is a secondary IPv4 address.

*/ @property (nonatomic, strong) NSNumber * _Nullable primary; /**

The IPv4 address.

*/ @property (nonatomic, strong) NSString * _Nullable privateIpAddress; @end /** */ @interface AWSEC2SearchLocalGatewayRoutesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters.

  • prefix-list-id - The ID of the prefix list.

  • route-search.exact-match - The exact match of the specified filter.

  • route-search.longest-prefix-match - The longest prefix that matches the route.

  • route-search.subnet-of-match - The routes with a subnet that match the specified CIDR filter.

  • route-search.supernet-of-match - The routes with a CIDR that encompass the CIDR filter. For example, if you have 10.0.1.0/29 and 10.0.1.0/31 routes in your route table and you specify supernet-of-match as 10.0.1.0/30, then the result returns 10.0.1.0/29.

  • state - The state of the route.

  • type - The route type.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The ID of the local gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable localGatewayRouteTableId; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2SearchLocalGatewayRoutesResult : AWSModel /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

Information about the routes.

*/ @property (nonatomic, strong) NSArray * _Nullable routes; @end /** */ @interface AWSEC2SearchTransitGatewayMulticastGroupsRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • group-ip-address - The IP address of the transit gateway multicast group.

  • is-group-member - The resource is a group member. Valid values are true | false.

  • is-group-source - The resource is a group source. Valid values are true | false.

  • member-type - The member type. Valid values are igmp | static.

  • resource-id - The ID of the resource.

  • resource-type - The type of resource. Valid values are vpc | vpn | direct-connect-gateway | tgw-peering.

  • source-type - The source type. Valid values are igmp | static.

  • subnet-id - The ID of the subnet.

  • transit-gateway-attachment-id - The id of the transit gateway attachment.

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The token for the next page of results.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /** */ @interface AWSEC2SearchTransitGatewayMulticastGroupsResult : AWSModel /**

Information about the transit gateway multicast group.

*/ @property (nonatomic, strong) NSArray * _Nullable multicastGroups; /**

The token to use to retrieve the next page of results. This value is null when there are no more results to return.

*/ @property (nonatomic, strong) NSString * _Nullable nextToken; @end /** */ @interface AWSEC2SearchTransitGatewayRoutesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

One or more filters. The possible values are:

  • attachment.transit-gateway-attachment-id- The id of the transit gateway attachment.

  • attachment.resource-id - The resource id of the transit gateway attachment.

  • attachment.resource-type - The attachment resource type. Valid values are vpc | vpn | direct-connect-gateway | peering | connect.

  • prefix-list-id - The ID of the prefix list.

  • route-search.exact-match - The exact match of the specified filter.

  • route-search.longest-prefix-match - The longest prefix that matches the route.

  • route-search.subnet-of-match - The routes with a subnet that match the specified CIDR filter.

  • route-search.supernet-of-match - The routes with a CIDR that encompass the CIDR filter. For example, if you have 10.0.1.0/29 and 10.0.1.0/31 routes in your route table and you specify supernet-of-match as 10.0.1.0/30, then the result returns 10.0.1.0/29.

  • state - The state of the route (active | blackhole).

  • type - The type of route (propagated | static).

*/ @property (nonatomic, strong) NSArray * _Nullable filters; /**

The maximum number of routes to return.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxResults; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /** */ @interface AWSEC2SearchTransitGatewayRoutesResult : AWSModel /**

Indicates whether there are additional routes available.

*/ @property (nonatomic, strong) NSNumber * _Nullable additionalRoutesAvailable; /**

Information about the routes.

*/ @property (nonatomic, strong) NSArray * _Nullable routes; @end /**

Describes a security group.

*/ @interface AWSEC2SecurityGroup : AWSModel /**

A description of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The name of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The inbound rules associated with the security group.

*/ @property (nonatomic, strong) NSArray * _Nullable ipPermissions; /**

The outbound rules associated with the security group.

*/ @property (nonatomic, strong) NSArray * _Nullable ipPermissionsEgress; /**

The Amazon Web Services account ID of the owner of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

Any tags assigned to the security group.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC for the security group.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes a security group.

*/ @interface AWSEC2SecurityGroupIdentifier : AWSModel /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The name of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; @end /**

Describes a VPC with a security group that references your security group.

*/ @interface AWSEC2SecurityGroupReference : AWSModel /**

The ID of your security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The ID of the VPC with the referencing security group.

*/ @property (nonatomic, strong) NSString * _Nullable referencingVpcId; /**

The ID of the VPC peering connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /**

Describes a security group rule.

*/ @interface AWSEC2SecurityGroupRule : AWSModel /**

The IPv4 CIDR range.

*/ @property (nonatomic, strong) NSString * _Nullable cidrIpv4; /**

The IPv6 CIDR range.

*/ @property (nonatomic, strong) NSString * _Nullable cidrIpv6; /**

The security group rule description.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

If the protocol is TCP or UDP, this is the start of the port range. If the protocol is ICMP or ICMPv6, this is the type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv6 codes.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The ID of the Amazon Web Services account that owns the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupOwnerId; /**

The IP protocol name (tcp, udp, icmp, icmpv6) or number (see Protocol Numbers).

Use -1 to specify all protocols.

*/ @property (nonatomic, strong) NSString * _Nullable ipProtocol; /**

Indicates whether the security group rule is an outbound rule.

*/ @property (nonatomic, strong) NSNumber * _Nullable isEgress; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

Describes the security group that is referenced in the rule.

*/ @property (nonatomic, strong) AWSEC2ReferencedSecurityGroup * _Nullable referencedGroupInfo; /**

The ID of the security group rule.

*/ @property (nonatomic, strong) NSString * _Nullable securityGroupRuleId; /**

The tags applied to the security group rule.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

If the protocol is TCP or UDP, this is the end of the port range. If the protocol is ICMP or ICMPv6, this is the type number. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv6 codes.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; @end /**

Describes the description of a security group rule.

You can use this when you want to update the security group rule description for either an inbound or outbound rule.

*/ @interface AWSEC2SecurityGroupRuleDescription : AWSModel /**

The description of the security group rule.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the security group rule.

*/ @property (nonatomic, strong) NSString * _Nullable securityGroupRuleId; @end /**

Describes a security group rule.

You must specify exactly one of the following parameters, based on the rule type:

  • CidrIpv4

  • CidrIpv6

  • PrefixListId

  • ReferencedGroupId

When you modify a rule, you cannot change the rule type. For example, if the rule uses an IPv4 address range, you must use CidrIpv4 to specify a new IPv4 address range.

*/ @interface AWSEC2SecurityGroupRuleRequest : AWSModel /**

The IPv4 CIDR range. To specify a single IPv4 address, use the /32 prefix length.

*/ @property (nonatomic, strong) NSString * _Nullable cidrIpv4; /**

The IPv6 CIDR range. To specify a single IPv6 address, use the /128 prefix length.

*/ @property (nonatomic, strong) NSString * _Nullable cidrIpv6; /**

The description of the security group rule.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

If the protocol is TCP or UDP, this is the start of the port range. If the protocol is ICMP or ICMPv6, this is the type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv6 codes.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The IP protocol name (tcp, udp, icmp, icmpv6) or number (see Protocol Numbers).

Use -1 to specify all protocols.

*/ @property (nonatomic, strong) NSString * _Nullable ipProtocol; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The ID of the security group that is referenced in the security group rule.

*/ @property (nonatomic, strong) NSString * _Nullable referencedGroupId; /**

If the protocol is TCP or UDP, this is the end of the port range. If the protocol is ICMP or ICMPv6, this is the code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all ICMP/ICMPv6 codes.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; @end /**

Describes an update to a security group rule.

Required parameters: [SecurityGroupRuleId] */ @interface AWSEC2SecurityGroupRuleUpdate : AWSModel /**

Information about the security group rule.

*/ @property (nonatomic, strong) AWSEC2SecurityGroupRuleRequest * _Nullable securityGroupRule; /**

The ID of the security group rule.

*/ @property (nonatomic, strong) NSString * _Nullable securityGroupRuleId; @end /** */ @interface AWSEC2SendDiagnosticInterruptRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /**

Describes a service configuration for a VPC endpoint service.

*/ @interface AWSEC2ServiceConfiguration : AWSModel /**

Indicates whether requests from other Amazon Web Services accounts to create an endpoint to the service must first be accepted.

*/ @property (nonatomic, strong) NSNumber * _Nullable acceptanceRequired; /**

The Availability Zones in which the service is available.

*/ @property (nonatomic, strong) NSArray * _Nullable availabilityZones; /**

The DNS names for the service.

*/ @property (nonatomic, strong) NSArray * _Nullable baseEndpointDnsNames; /**

The Amazon Resource Names (ARNs) of the Gateway Load Balancers for the service.

*/ @property (nonatomic, strong) NSArray * _Nullable gatewayLoadBalancerArns; /**

Indicates whether the service manages its VPC endpoints. Management of the service VPC endpoints using the VPC endpoint API is restricted.

*/ @property (nonatomic, strong) NSNumber * _Nullable managesVpcEndpoints; /**

The Amazon Resource Names (ARNs) of the Network Load Balancers for the service.

*/ @property (nonatomic, strong) NSArray * _Nullable networkLoadBalancerArns; /**

The payer responsibility.

*/ @property (nonatomic, assign) AWSEC2PayerResponsibility payerResponsibility; /**

The private DNS name for the service.

*/ @property (nonatomic, strong) NSString * _Nullable privateDnsName; /**

Information about the endpoint service private DNS name configuration.

*/ @property (nonatomic, strong) AWSEC2PrivateDnsNameConfiguration * _Nullable privateDnsNameConfiguration; /**

The ID of the service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; /**

The name of the service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceName; /**

The service state.

*/ @property (nonatomic, assign) AWSEC2ServiceState serviceState; /**

The type of service.

*/ @property (nonatomic, strong) NSArray * _Nullable serviceType; /**

The supported IP address types.

*/ @property (nonatomic, strong) NSArray * _Nullable supportedIpAddressTypes; /**

The tags assigned to the service.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes a VPC endpoint service.

*/ @interface AWSEC2ServiceDetail : AWSModel /**

Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner.

*/ @property (nonatomic, strong) NSNumber * _Nullable acceptanceRequired; /**

The Availability Zones in which the service is available.

*/ @property (nonatomic, strong) NSArray * _Nullable availabilityZones; /**

The DNS names for the service.

*/ @property (nonatomic, strong) NSArray * _Nullable baseEndpointDnsNames; /**

Indicates whether the service manages its VPC endpoints. Management of the service VPC endpoints using the VPC endpoint API is restricted.

*/ @property (nonatomic, strong) NSNumber * _Nullable managesVpcEndpoints; /**

The Amazon Web Services account ID of the service owner.

*/ @property (nonatomic, strong) NSString * _Nullable owner; /**

The payer responsibility.

*/ @property (nonatomic, assign) AWSEC2PayerResponsibility payerResponsibility; /**

The private DNS name for the service.

*/ @property (nonatomic, strong) NSString * _Nullable privateDnsName; /**

The verification state of the VPC endpoint service.

Consumers of the endpoint service cannot use the private name when the state is not verified.

*/ @property (nonatomic, assign) AWSEC2DnsNameState privateDnsNameVerificationState; /**

The private DNS names assigned to the VPC endpoint service.

*/ @property (nonatomic, strong) NSArray * _Nullable privateDnsNames; /**

The ID of the endpoint service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; /**

The name of the service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceName; /**

The type of service.

*/ @property (nonatomic, strong) NSArray * _Nullable serviceType; /**

The supported IP address types.

*/ @property (nonatomic, strong) NSArray * _Nullable supportedIpAddressTypes; /**

The tags assigned to the service.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

Indicates whether the service supports endpoint policies.

*/ @property (nonatomic, strong) NSNumber * _Nullable vpcEndpointPolicySupported; @end /**

Describes the type of service for a VPC endpoint.

*/ @interface AWSEC2ServiceTypeDetail : AWSModel /**

The type of service.

*/ @property (nonatomic, assign) AWSEC2ServiceType serviceType; @end /**

Describes the time period for a Scheduled Instance to start its first schedule. The time period must span less than one day.

Required parameters: [EarliestTime, LatestTime] */ @interface AWSEC2SlotDateTimeRangeRequest : AWSModel /**

The earliest date and time, in UTC, for the Scheduled Instance to start.

*/ @property (nonatomic, strong) NSDate * _Nullable earliestTime; /**

The latest date and time, in UTC, for the Scheduled Instance to start. This value must be later than or equal to the earliest date and at most three months in the future.

*/ @property (nonatomic, strong) NSDate * _Nullable latestTime; @end /**

Describes the time period for a Scheduled Instance to start its first schedule.

*/ @interface AWSEC2SlotStartTimeRangeRequest : AWSModel /**

The earliest date and time, in UTC, for the Scheduled Instance to start.

*/ @property (nonatomic, strong) NSDate * _Nullable earliestTime; /**

The latest date and time, in UTC, for the Scheduled Instance to start.

*/ @property (nonatomic, strong) NSDate * _Nullable latestTime; @end /**

Describes a snapshot.

*/ @interface AWSEC2Snapshot : AWSModel /**

The data encryption key identifier for the snapshot. This value is a unique identifier that corresponds to the data encryption key that was used to encrypt the original volume or snapshot copy. Because data encryption keys are inherited by volumes created from snapshots, and vice versa, if snapshots share the same data encryption key identifier, then they belong to the same volume/snapshot lineage. This parameter is only returned by DescribeSnapshots.

*/ @property (nonatomic, strong) NSString * _Nullable dataEncryptionKeyId; /**

The description for the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Indicates whether the snapshot is encrypted.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The Amazon Resource Name (ARN) of the Key Management Service (KMS) KMS key that was used to protect the volume encryption key for the parent volume.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

The ARN of the Outpost on which the snapshot is stored. For more information, see Amazon EBS local snapshots on Outposts in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The Amazon Web Services owner alias, from an Amazon-maintained list (amazon). This is not the user-configured Amazon Web Services account alias set using the IAM console.

*/ @property (nonatomic, strong) NSString * _Nullable ownerAlias; /**

The ID of the Amazon Web Services account that owns the EBS snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The progress of the snapshot, as a percentage.

*/ @property (nonatomic, strong) NSString * _Nullable progress; /**

Only for archived snapshots that are temporarily restored. Indicates the date and time when a temporarily restored snapshot will be automatically re-archived.

*/ @property (nonatomic, strong) NSDate * _Nullable restoreExpiryTime; /**

The ID of the snapshot. Each snapshot receives a unique identifier when it is created.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The time stamp when the snapshot was initiated.

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; /**

The snapshot state.

*/ @property (nonatomic, assign) AWSEC2SnapshotState state; /**

Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy operation fails (for example, if the proper Key Management Service (KMS) permissions are not obtained) this field displays error state details to help you diagnose why the error occurred. This parameter is only returned by DescribeSnapshots.

*/ @property (nonatomic, strong) NSString * _Nullable stateMessage; /**

The storage tier in which the snapshot is stored. standard indicates that the snapshot is stored in the standard snapshot storage tier and that it is ready for use. archive indicates that the snapshot is currently archived and that it must be restored before it can be used.

*/ @property (nonatomic, assign) AWSEC2StorageTier storageTier; /**

Any tags assigned to the snapshot.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the volume that was used to create the snapshot. Snapshots created by the CopySnapshot action have an arbitrary volume ID that should not be used for any purpose.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; /**

The size of the volume, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable volumeSize; @end /**

Describes the snapshot created from the imported disk.

*/ @interface AWSEC2SnapshotDetail : AWSModel /**

A description for the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The block device mapping for the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable deviceName; /**

The size of the disk in the snapshot, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable diskImageSize; /**

The format of the disk image from which the snapshot is created.

*/ @property (nonatomic, strong) NSString * _Nullable format; /**

The percentage of progress for the task.

*/ @property (nonatomic, strong) NSString * _Nullable progress; /**

The snapshot ID of the disk being imported.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

A brief status of the snapshot creation.

*/ @property (nonatomic, strong) NSString * _Nullable status; /**

A detailed status message for the snapshot creation.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

The URL used to access the disk image.

*/ @property (nonatomic, strong) NSString * _Nullable url; /**

The Amazon S3 bucket for the disk image.

*/ @property (nonatomic, strong) AWSEC2UserBucketDetails * _Nullable userBucket; @end /**

The disk container object for the import snapshot request.

*/ @interface AWSEC2SnapshotDiskContainer : AWSModel /**

The description of the disk image being imported.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The format of the disk image being imported.

Valid values: VHD | VMDK | RAW

*/ @property (nonatomic, strong) NSString * _Nullable format; /**

The URL to the Amazon S3-based disk image being imported. It can either be a https URL (https://..) or an Amazon S3 URL (s3://..).

*/ @property (nonatomic, strong) NSString * _Nullable url; /**

The Amazon S3 bucket for the disk image.

*/ @property (nonatomic, strong) AWSEC2UserBucket * _Nullable userBucket; @end /**

Information about a snapshot.

*/ @interface AWSEC2SnapshotInfo : AWSModel /**

Description specified by the CreateSnapshotRequest that has been applied to all snapshots.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Indicates whether the snapshot is encrypted.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The ARN of the Outpost on which the snapshot is stored. For more information, see Amazon EBS local snapshots on Outposts in the Amazon Elastic Compute Cloud User Guide.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

Account id used when creating this snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

Progress this snapshot has made towards completing.

*/ @property (nonatomic, strong) NSString * _Nullable progress; /**

Snapshot id that can be used to describe this snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

Time this snapshot was started. This is the same for all snapshots initiated by the same request.

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; /**

Current state of the snapshot.

*/ @property (nonatomic, assign) AWSEC2SnapshotState state; /**

Tags associated with this snapshot.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

Source volume from which this snapshot was created.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; /**

Size of the volume from which this snapshot was created.

*/ @property (nonatomic, strong) NSNumber * _Nullable volumeSize; @end /**

Information about a snapshot that is currently in the Recycle Bin.

*/ @interface AWSEC2SnapshotRecycleBinInfo : AWSModel /**

The description for the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The date and time when the snaphsot entered the Recycle Bin.

*/ @property (nonatomic, strong) NSDate * _Nullable recycleBinEnterTime; /**

The date and time when the snapshot is to be permanently deleted from the Recycle Bin.

*/ @property (nonatomic, strong) NSDate * _Nullable recycleBinExitTime; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The ID of the volume from which the snapshot was created.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /**

Details about the import snapshot task.

*/ @interface AWSEC2SnapshotTaskDetail : AWSModel /**

The description of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The size of the disk in the snapshot, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable diskImageSize; /**

Indicates whether the snapshot is encrypted.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

The format of the disk image from which the snapshot is created.

*/ @property (nonatomic, strong) NSString * _Nullable format; /**

The identifier for the KMS key that was used to create the encrypted snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

The percentage of completion for the import snapshot task.

*/ @property (nonatomic, strong) NSString * _Nullable progress; /**

The snapshot ID of the disk being imported.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

A brief status for the import snapshot task.

*/ @property (nonatomic, strong) NSString * _Nullable status; /**

A detailed status message for the import snapshot task.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

The URL of the disk image from which the snapshot is created.

*/ @property (nonatomic, strong) NSString * _Nullable url; /**

The Amazon S3 bucket for the disk image.

*/ @property (nonatomic, strong) AWSEC2UserBucketDetails * _Nullable userBucket; @end /**

Provides information about a snapshot's storage tier.

*/ @interface AWSEC2SnapshotTierStatus : AWSModel /**

The date and time when the last archive process was completed.

*/ @property (nonatomic, strong) NSDate * _Nullable archivalCompleteTime; /**

The status of the last archive or restore process.

*/ @property (nonatomic, assign) AWSEC2TieringOperationStatus lastTieringOperationStatus; /**

A message describing the status of the last archive or restore process.

*/ @property (nonatomic, strong) NSString * _Nullable lastTieringOperationStatusDetail; /**

The progress of the last archive or restore process, as a percentage.

*/ @property (nonatomic, strong) NSNumber * _Nullable lastTieringProgress; /**

The date and time when the last archive or restore process was started.

*/ @property (nonatomic, strong) NSDate * _Nullable lastTieringStartTime; /**

The ID of the Amazon Web Services account that owns the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

Only for archived snapshots that are temporarily restored. Indicates the date and time when a temporarily restored snapshot will be automatically re-archived.

*/ @property (nonatomic, strong) NSDate * _Nullable restoreExpiryTime; /**

The ID of the snapshot.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The state of the snapshot.

*/ @property (nonatomic, assign) AWSEC2SnapshotState status; /**

The storage tier in which the snapshot is stored. standard indicates that the snapshot is stored in the standard snapshot storage tier and that it is ready for use. archive indicates that the snapshot is currently archived and that it must be restored before it can be used.

*/ @property (nonatomic, assign) AWSEC2StorageTier storageTier; /**

The tags that are assigned to the snapshot.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the volume from which the snapshot was created.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /**

The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancing in the Amazon EC2 User Guide for Linux Instances.

*/ @interface AWSEC2SpotCapacityRebalance : AWSModel /**

The replacement strategy to use. Only available for fleets of type maintain.

launch - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet. Spot Fleet does not terminate the instances that receive a rebalance notification. You can terminate the old instances, or you can leave them running. You are charged for all instances while they are running.

launch-before-terminate - Spot Fleet launches a new replacement Spot Instance when a rebalance notification is emitted for an existing Spot Instance in the fleet, and then, after a delay that you specify (in TerminationDelay), terminates the instances that received a rebalance notification.

*/ @property (nonatomic, assign) AWSEC2ReplacementStrategy replacementStrategy; /**

The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot Instance after launching a new replacement Spot Instance.

Required when ReplacementStrategy is set to launch-before-terminate.

Not valid when ReplacementStrategy is set to launch.

Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.

*/ @property (nonatomic, strong) NSNumber * _Nullable terminationDelay; @end /**

Describes the data feed for a Spot Instance.

*/ @interface AWSEC2SpotDatafeedSubscription : AWSModel /**

The name of the Amazon S3 bucket where the Spot Instance data feed is located.

*/ @property (nonatomic, strong) NSString * _Nullable bucket; /**

The fault codes for the Spot Instance request, if any.

*/ @property (nonatomic, strong) AWSEC2SpotInstanceStateFault * _Nullable fault; /**

The Amazon Web Services account ID of the account.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The prefix for the data feed files.

*/ @property (nonatomic, strong) NSString * _Nullable prefix; /**

The state of the Spot Instance data feed subscription.

*/ @property (nonatomic, assign) AWSEC2DatafeedSubscriptionState state; @end /**

Describes the launch specification for one or more Spot Instances. If you include On-Demand capacity in your fleet request or want to specify an EFA network device, you can't use SpotFleetLaunchSpecification; you must use LaunchTemplateConfig.

*/ @interface AWSEC2SpotFleetLaunchSpecification : AWSModel /**

Deprecated.

*/ @property (nonatomic, strong) NSString * _Nullable addressingType; /**

One or more block devices that are mapped to the Spot Instances. You can't specify both a snapshot ID and an encryption value. This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its encryption status is used for the volume encryption status.

*/ @property (nonatomic, strong) NSArray * _Nullable blockDeviceMappings; /**

Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable ebsOptimized; /**

The IAM instance profile.

*/ @property (nonatomic, strong) AWSEC2IamInstanceProfileSpecification * _Nullable iamInstanceProfile; /**

The ID of the AMI.

*/ @property (nonatomic, strong) NSString * _Nullable imageId; /**

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

If you specify InstanceRequirements, you can't specify InstanceType.

*/ @property (nonatomic, strong) AWSEC2InstanceRequirements * _Nullable instanceRequirements; /**

The instance type.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

The ID of the kernel.

*/ @property (nonatomic, strong) NSString * _Nullable kernelId; /**

The name of the key pair.

*/ @property (nonatomic, strong) NSString * _Nullable keyName; /**

Enable or disable monitoring for the instances.

*/ @property (nonatomic, strong) AWSEC2SpotFleetMonitoring * _Nullable monitoring; /**

One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.

SpotFleetLaunchSpecification currently does not support Elastic Fabric Adapter (EFA). To specify an EFA, you must use LaunchTemplateConfig.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaces; /**

The placement information.

*/ @property (nonatomic, strong) AWSEC2SpotPlacement * _Nullable placement; /**

The ID of the RAM disk. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, refer to the Amazon Web Services Resource Center and search for the kernel ID.

*/ @property (nonatomic, strong) NSString * _Nullable ramdiskId; /**

The security groups.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroups; /**

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable spotPrice; /**

The IDs of the subnets in which to launch the instances. To specify multiple subnets, separate them using commas; for example, "subnet-1234abcdeexample1, subnet-0987cdef6example2".

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The tags to apply during creation.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.

*/ @property (nonatomic, strong) NSString * _Nullable userData; /**

The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms of instances, or a performance characteristic such as vCPUs, memory, or I/O.

If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.

*/ @property (nonatomic, strong) NSNumber * _Nullable weightedCapacity; @end /**

Describes whether monitoring is enabled.

*/ @interface AWSEC2SpotFleetMonitoring : AWSModel /**

Enables monitoring for the instance.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Describes a Spot Fleet request.

*/ @interface AWSEC2SpotFleetRequestConfig : AWSModel /**

The progress of the Spot Fleet request. If there is an error, the status is error. After all requests are placed, the status is pending_fulfillment. If the size of the fleet is equal to or greater than its target capacity, the status is fulfilled. If the size of the fleet is decreased, the status is pending_termination while Spot Instances are terminating.

*/ @property (nonatomic, assign) AWSEC2ActivityStatus activityStatus; /**

The creation date and time of the request.

*/ @property (nonatomic, strong) NSDate * _Nullable createTime; /**

The configuration of the Spot Fleet request.

*/ @property (nonatomic, strong) AWSEC2SpotFleetRequestConfigData * _Nullable spotFleetRequestConfig; /**

The ID of the Spot Fleet request.

*/ @property (nonatomic, strong) NSString * _Nullable spotFleetRequestId; /**

The state of the Spot Fleet request.

*/ @property (nonatomic, assign) AWSEC2BatchState spotFleetRequestState; /**

The tags for a Spot Fleet resource.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes the configuration of a Spot Fleet request.

Required parameters: [IamFleetRole, TargetCapacity] */ @interface AWSEC2SpotFleetRequestConfigData : AWSModel /**

The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the Spot Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the Amazon EC2 User Guide.

priceCapacityOptimized (recommended)

Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. Spot Fleet then requests Spot Instances from the lowest priced of these pools.

capacityOptimized

Spot Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use capacityOptimizedPrioritized. Set a priority for each instance type by using the Priority parameter for LaunchTemplateOverrides. You can assign the same priority to different LaunchTemplateOverrides. EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. capacityOptimizedPrioritized is supported only if your Spot Fleet uses a launch template. Note that if the OnDemandAllocationStrategy is set to prioritized, the same priority is applied when fulfilling On-Demand capacity.

diversified

Spot Fleet requests instances from all of the Spot Instance pools that you specify.

lowestPrice

Spot Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, Spot Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates.

Default: lowestPrice

*/ @property (nonatomic, assign) AWSEC2AllocationStrategy allocationStrategy; /**

A unique, case-sensitive identifier that you provide to ensure the idempotency of your listings. This helps to avoid duplicate listings. For more information, see Ensuring Idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Reserved.

*/ @property (nonatomic, strong) NSString * _Nullable context; /**

Indicates whether running instances should be terminated if you decrease the target capacity of the Spot Fleet request below the current size of the Spot Fleet.

Supported only for fleets of type maintain.

*/ @property (nonatomic, assign) AWSEC2ExcessCapacityTerminationPolicy excessCapacityTerminationPolicy; /**

The number of units fulfilled by this request compared to the set target capacity. You cannot set this value.

*/ @property (nonatomic, strong) NSNumber * _Nullable fulfilledCapacity; /**

The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role that grants the Spot Fleet the permission to request, launch, terminate, and tag instances on your behalf. For more information, see Spot Fleet prerequisites in the Amazon EC2 User Guide. Spot Fleet can terminate Spot Instances on your behalf when you cancel its Spot Fleet request using CancelSpotFleetRequests or when the Spot Fleet request expires, if you set TerminateInstancesWithExpiration.

*/ @property (nonatomic, strong) NSString * _Nullable iamFleetRole; /**

The behavior when a Spot Instance is interrupted. The default is terminate.

*/ @property (nonatomic, assign) AWSEC2InstanceInterruptionBehavior instanceInterruptionBehavior; /**

The number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot AllocationStrategy is set to lowest-price. Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.

Note that Spot Fleet attempts to draw Spot Instances from the number of pools that you specify on a best effort basis. If a pool runs out of Spot capacity before fulfilling your target capacity, Spot Fleet will continue to fulfill your request by drawing from the next cheapest pool. To ensure that your target capacity is met, you might receive Spot Instances from more than the number of pools that you specified. Similarly, if most of the pools have no Spot capacity, you might receive your full target capacity from fewer than the number of pools that you specified.

*/ @property (nonatomic, strong) NSNumber * _Nullable instancePoolsToUseCount; /**

The launch specifications for the Spot Fleet request. If you specify LaunchSpecifications, you can't specify LaunchTemplateConfigs. If you include On-Demand capacity in your request, you must use LaunchTemplateConfigs.

*/ @property (nonatomic, strong) NSArray * _Nullable launchSpecifications; /**

The launch template and overrides. If you specify LaunchTemplateConfigs, you can't specify LaunchSpecifications. If you include On-Demand capacity in your request, you must use LaunchTemplateConfigs.

*/ @property (nonatomic, strong) NSArray * _Nullable launchTemplateConfigs; /**

One or more Classic Load Balancers and target groups to attach to the Spot Fleet request. Spot Fleet registers the running Spot Instances with the specified Classic Load Balancers and target groups.

With Network Load Balancers, Spot Fleet cannot register instances that have the following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and T1.

*/ @property (nonatomic, strong) AWSEC2LoadBalancersConfig * _Nullable loadBalancersConfig; /**

The order of the launch template overrides to use in fulfilling On-Demand capacity. If you specify lowestPrice, Spot Fleet uses price to determine the order, launching the lowest price first. If you specify prioritized, Spot Fleet uses the priority that you assign to each Spot Fleet launch template override, launching the highest priority first. If you do not specify a value, Spot Fleet defaults to lowestPrice.

*/ @property (nonatomic, assign) AWSEC2OnDemandAllocationStrategy onDemandAllocationStrategy; /**

The number of On-Demand units fulfilled by this request compared to the set target On-Demand capacity.

*/ @property (nonatomic, strong) NSNumber * _Nullable onDemandFulfilledCapacity; /**

The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

*/ @property (nonatomic, strong) NSString * _Nullable onDemandMaxTotalPrice; /**

The number of On-Demand units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain, you can specify a target capacity of 0 and add capacity later.

*/ @property (nonatomic, strong) NSNumber * _Nullable onDemandTargetCapacity; /**

Indicates whether Spot Fleet should replace unhealthy instances.

*/ @property (nonatomic, strong) NSNumber * _Nullable replaceUnhealthyInstances; /**

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

*/ @property (nonatomic, strong) AWSEC2SpotMaintenanceStrategies * _Nullable spotMaintenanceStrategies; /**

The maximum amount per hour for Spot Instances that you're willing to pay. You can use the spotdMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.

*/ @property (nonatomic, strong) NSString * _Nullable spotMaxTotalPrice; /**

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable spotPrice; /**

The key-value pair for tagging the Spot Fleet request on creation. The value for ResourceType must be spot-fleet-request, otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the launch template (valid only if you use LaunchTemplateConfigs) or in the SpotFleetTagSpecification (valid only if you use LaunchSpecifications). For information about tagging after launch, see Tagging Your Resources.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; /**

The number of units to request for the Spot Fleet. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain, you can specify a target capacity of 0 and add capacity later.

*/ @property (nonatomic, strong) NSNumber * _Nullable targetCapacity; /**

The unit for the target capacity. TargetCapacityUnitType can only be specified when InstanceRequirements is specified.

Default: units (translates to number of instances)

*/ @property (nonatomic, assign) AWSEC2TargetCapacityUnitType targetCapacityUnitType; /**

Indicates whether running Spot Instances are terminated when the Spot Fleet request expires.

*/ @property (nonatomic, strong) NSNumber * _Nullable terminateInstancesWithExpiration; /**

The type of request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. When this value is request, the Spot Fleet only places the required requests. It does not attempt to replenish Spot Instances if capacity is diminished, nor does it submit requests in alternative Spot pools if capacity is not available. When this value is maintain, the Spot Fleet maintains the target capacity. The Spot Fleet places the required requests to meet capacity and automatically replenishes any interrupted instances. Default: maintain. instant is listed but is not used by Spot Fleet.

*/ @property (nonatomic, assign) AWSEC2FleetType types; /**

The start date and time of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). By default, Amazon EC2 starts fulfilling the request immediately.

*/ @property (nonatomic, strong) NSDate * _Nullable validFrom; /**

The end date and time of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). After the end date and time, no new Spot Instance requests are placed or able to fulfill the request. If no value is specified, the Spot Fleet request remains until you cancel it.

*/ @property (nonatomic, strong) NSDate * _Nullable validUntil; @end /**

The tags for a Spot Fleet resource.

*/ @interface AWSEC2SpotFleetTagSpecification : AWSModel /**

The type of resource. Currently, the only resource type that is supported is instance. To tag the Spot Fleet request on creation, use the TagSpecifications parameter in SpotFleetRequestConfigData.

*/ @property (nonatomic, assign) AWSEC2ResourceType resourceType; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes a Spot Instance request.

*/ @interface AWSEC2SpotInstanceRequest : AWSModel /**

Deprecated.

*/ @property (nonatomic, strong) NSString * _Nullable actualBlockHourlyPrice; /**

The Availability Zone group. If you specify the same Availability Zone group for all Spot Instance requests, all Spot Instances are launched in the same Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZoneGroup; /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable blockDurationMinutes; /**

The date and time when the Spot Instance request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable createTime; /**

The fault codes for the Spot Instance request, if any.

*/ @property (nonatomic, strong) AWSEC2SpotInstanceStateFault * _Nullable fault; /**

The instance ID, if an instance has been launched to fulfill the Spot Instance request.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The behavior when a Spot Instance is interrupted.

*/ @property (nonatomic, assign) AWSEC2InstanceInterruptionBehavior instanceInterruptionBehavior; /**

The instance launch group. Launch groups are Spot Instances that launch together and terminate together.

*/ @property (nonatomic, strong) NSString * _Nullable launchGroup; /**

Additional information for launching instances.

*/ @property (nonatomic, strong) AWSEC2LaunchSpecification * _Nullable launchSpecification; /**

The Availability Zone in which the request is launched.

*/ @property (nonatomic, strong) NSString * _Nullable launchedAvailabilityZone; /**

The product description associated with the Spot Instance.

*/ @property (nonatomic, assign) AWSEC2RIProductDescription productDescription; /**

The ID of the Spot Instance request.

*/ @property (nonatomic, strong) NSString * _Nullable spotInstanceRequestId; /**

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable spotPrice; /**

The state of the Spot Instance request. Spot request status information helps track your Spot Instance requests. For more information, see Spot request status in the Amazon EC2 User Guide for Linux Instances.

*/ @property (nonatomic, assign) AWSEC2SpotInstanceState state; /**

The status code and status message describing the Spot Instance request.

*/ @property (nonatomic, strong) AWSEC2SpotInstanceStatus * _Nullable status; /**

Any tags assigned to the resource.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The Spot Instance request type.

*/ @property (nonatomic, assign) AWSEC2SpotInstanceType types; /**

The start date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The request becomes active at this date and time.

*/ @property (nonatomic, strong) NSDate * _Nullable validFrom; /**

The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ).

  • For a persistent request, the request remains active until the validUntil date and time is reached. Otherwise, the request remains active until you cancel it.

  • For a one-time request, the request remains active until all instances launch, the request is canceled, or the validUntil date and time is reached. By default, the request is valid for 7 days from the date the request was created.

*/ @property (nonatomic, strong) NSDate * _Nullable validUntil; @end /**

Describes a Spot Instance state change.

*/ @interface AWSEC2SpotInstanceStateFault : AWSModel /**

The reason code for the Spot Instance state change.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

The message for the Spot Instance state change.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes the status of a Spot Instance request.

*/ @interface AWSEC2SpotInstanceStatus : AWSModel /**

The status code. For a list of status codes, see Spot request status codes in the Amazon EC2 User Guide for Linux Instances.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

The description for the status code.

*/ @property (nonatomic, strong) NSString * _Nullable message; /**

The date and time of the most recent status update, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable updateTime; @end /**

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

*/ @interface AWSEC2SpotMaintenanceStrategies : AWSModel /**

The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancing in the Amazon EC2 User Guide for Linux Instances.

*/ @property (nonatomic, strong) AWSEC2SpotCapacityRebalance * _Nullable capacityRebalance; @end /**

The options for Spot Instances.

*/ @interface AWSEC2SpotMarketOptions : AWSModel /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable blockDurationMinutes; /**

The behavior when a Spot Instance is interrupted. The default is terminate.

*/ @property (nonatomic, assign) AWSEC2InstanceInterruptionBehavior instanceInterruptionBehavior; /**

The maximum hourly price that you're willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable maxPrice; /**

The Spot Instance request type. For RunInstances, persistent Spot Instance requests are only supported when the instance interruption behavior is either hibernate or stop.

*/ @property (nonatomic, assign) AWSEC2SpotInstanceType spotInstanceType; /**

The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported only for persistent requests.

  • For a persistent request, the request remains active until the ValidUntil date and time is reached. Otherwise, the request remains active until you cancel it.

  • For a one-time request, ValidUntil is not supported. The request remains active until all instances launch or you cancel the request.

*/ @property (nonatomic, strong) NSDate * _Nullable validUntil; @end /**

Describes the configuration of Spot Instances in an EC2 Fleet.

*/ @interface AWSEC2SpotOptions : AWSModel /**

The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the EC2 Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the Amazon EC2 User Guide.

price-capacity-optimized (recommended)

EC2 Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. EC2 Fleet then requests Spot Instances from the lowest priced of these pools.

capacity-optimized

EC2 Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use capacity-optimized-prioritized. Set a priority for each instance type by using the Priority parameter for LaunchTemplateOverrides. You can assign the same priority to different LaunchTemplateOverrides. EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. capacity-optimized-prioritized is supported only if your EC2 Fleet uses a launch template. Note that if the On-Demand AllocationStrategy is set to prioritized, the same priority is applied when fulfilling On-Demand capacity.

diversified

EC2 Fleet requests instances from all of the Spot Instance pools that you specify.

lowest-price

EC2 Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, EC2 Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates.

Default: lowest-price

*/ @property (nonatomic, assign) AWSEC2SpotAllocationStrategy allocationStrategy; /**

The behavior when a Spot Instance is interrupted.

Default: terminate

*/ @property (nonatomic, assign) AWSEC2SpotInstanceInterruptionBehavior instanceInterruptionBehavior; /**

The number of Spot pools across which to allocate your target Spot capacity. Supported only when AllocationStrategy is set to lowest-price. EC2 Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.

Note that EC2 Fleet attempts to draw Spot Instances from the number of pools that you specify on a best effort basis. If a pool runs out of Spot capacity before fulfilling your target capacity, EC2 Fleet will continue to fulfill your request by drawing from the next cheapest pool. To ensure that your target capacity is met, you might receive Spot Instances from more than the number of pools that you specified. Similarly, if most of the pools have no Spot capacity, you might receive your full target capacity from fewer than the number of pools that you specified.

*/ @property (nonatomic, strong) NSNumber * _Nullable instancePoolsToUseCount; /**

The strategies for managing your workloads on your Spot Instances that will be interrupted. Currently only the capacity rebalance strategy is available.

*/ @property (nonatomic, strong) AWSEC2FleetSpotMaintenanceStrategies * _Nullable maintenanceStrategies; /**

The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable maxTotalPrice; /**

The minimum target capacity for Spot Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.

Supported only for fleets of type instant.

At least one of the following must be specified: SingleAvailabilityZone | SingleInstanceType

*/ @property (nonatomic, strong) NSNumber * _Nullable minTargetCapacity; /**

Indicates that the fleet launches all Spot Instances into a single Availability Zone.

Supported only for fleets of type instant.

*/ @property (nonatomic, strong) NSNumber * _Nullable singleAvailabilityZone; /**

Indicates that the fleet uses a single instance type to launch all Spot Instances in the fleet.

Supported only for fleets of type instant.

*/ @property (nonatomic, strong) NSNumber * _Nullable singleInstanceType; @end /**

Describes the configuration of Spot Instances in an EC2 Fleet request.

*/ @interface AWSEC2SpotOptionsRequest : AWSModel /**

The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the EC2 Fleet launch configuration. For more information, see Allocation strategies for Spot Instances in the Amazon EC2 User Guide.

price-capacity-optimized (recommended)

EC2 Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. EC2 Fleet then requests Spot Instances from the lowest priced of these pools.

capacity-optimized

EC2 Fleet identifies the pools with the highest capacity availability for the number of instances that are launching. This means that we will request Spot Instances from the pools that we believe have the lowest chance of interruption in the near term. To give certain instance types a higher chance of launching first, use capacity-optimized-prioritized. Set a priority for each instance type by using the Priority parameter for LaunchTemplateOverrides. You can assign the same priority to different LaunchTemplateOverrides. EC2 implements the priorities on a best-effort basis, but optimizes for capacity first. capacity-optimized-prioritized is supported only if your EC2 Fleet uses a launch template. Note that if the On-Demand AllocationStrategy is set to prioritized, the same priority is applied when fulfilling On-Demand capacity.

diversified

EC2 Fleet requests instances from all of the Spot Instance pools that you specify.

lowest-price

EC2 Fleet requests instances from the lowest priced Spot Instance pool that has available capacity. If the lowest priced pool doesn't have available capacity, the Spot Instances come from the next lowest priced pool that has available capacity. If a pool runs out of capacity before fulfilling your desired capacity, EC2 Fleet will continue to fulfill your request by drawing from the next lowest priced pool. To ensure that your desired capacity is met, you might receive Spot Instances from several pools. Because this strategy only considers instance price and not capacity availability, it might lead to high interruption rates.

Default: lowest-price

*/ @property (nonatomic, assign) AWSEC2SpotAllocationStrategy allocationStrategy; /**

The behavior when a Spot Instance is interrupted.

Default: terminate

*/ @property (nonatomic, assign) AWSEC2SpotInstanceInterruptionBehavior instanceInterruptionBehavior; /**

The number of Spot pools across which to allocate your target Spot capacity. Supported only when Spot AllocationStrategy is set to lowest-price. EC2 Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.

Note that EC2 Fleet attempts to draw Spot Instances from the number of pools that you specify on a best effort basis. If a pool runs out of Spot capacity before fulfilling your target capacity, EC2 Fleet will continue to fulfill your request by drawing from the next cheapest pool. To ensure that your target capacity is met, you might receive Spot Instances from more than the number of pools that you specified. Similarly, if most of the pools have no Spot capacity, you might receive your full target capacity from fewer than the number of pools that you specified.

*/ @property (nonatomic, strong) NSNumber * _Nullable instancePoolsToUseCount; /**

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

*/ @property (nonatomic, strong) AWSEC2FleetSpotMaintenanceStrategiesRequest * _Nullable maintenanceStrategies; /**

The maximum amount per hour for Spot Instances that you're willing to pay. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your Spot Instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable maxTotalPrice; /**

The minimum target capacity for Spot Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.

Supported only for fleets of type instant.

At least one of the following must be specified: SingleAvailabilityZone | SingleInstanceType

*/ @property (nonatomic, strong) NSNumber * _Nullable minTargetCapacity; /**

Indicates that the fleet launches all Spot Instances into a single Availability Zone.

Supported only for fleets of type instant.

*/ @property (nonatomic, strong) NSNumber * _Nullable singleAvailabilityZone; /**

Indicates that the fleet uses a single instance type to launch all Spot Instances in the fleet.

Supported only for fleets of type instant.

*/ @property (nonatomic, strong) NSNumber * _Nullable singleInstanceType; @end /**

Describes Spot Instance placement.

*/ @interface AWSEC2SpotPlacement : AWSModel /**

The Availability Zone.

[Spot Fleet only] To specify multiple Availability Zones, separate them using commas; for example, "us-west-2a, us-west-2b".

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The name of the placement group.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for Spot Instances.

*/ @property (nonatomic, assign) AWSEC2Tenancy tenancy; @end /**

The Spot placement score for this Region or Availability Zone. The score is calculated based on the assumption that the capacity-optimized allocation strategy is used and that all of the Availability Zones in the Region can be used.

*/ @interface AWSEC2SpotPlacementScore : AWSModel /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZoneId; /**

The Region.

*/ @property (nonatomic, strong) NSString * _Nullable region; /**

The placement score, on a scale from 1 to 10. A score of 10 indicates that your Spot request is highly likely to succeed in this Region or Availability Zone. A score of 1 indicates that your Spot request is not likely to succeed.

*/ @property (nonatomic, strong) NSNumber * _Nullable score; @end /**

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

*/ @interface AWSEC2SpotPrice : AWSModel /**

The Availability Zone.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The instance type.

*/ @property (nonatomic, assign) AWSEC2InstanceType instanceType; /**

A general description of the AMI.

*/ @property (nonatomic, assign) AWSEC2RIProductDescription productDescription; /**

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

*/ @property (nonatomic, strong) NSString * _Nullable spotPrice; /**

The date and time the request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).

*/ @property (nonatomic, strong) NSDate * _Nullable timestamp; @end /**

Describes a stale rule in a security group.

*/ @interface AWSEC2StaleIpPermission : AWSModel /**

The start of the port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers).

*/ @property (nonatomic, strong) NSString * _Nullable ipProtocol; /**

The IP ranges. Not applicable for stale security group rules.

*/ @property (nonatomic, strong) NSArray * _Nullable ipRanges; /**

The prefix list IDs. Not applicable for stale security group rules.

*/ @property (nonatomic, strong) NSArray * _Nullable prefixListIds; /**

The end of the port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; /**

The security group pairs. Returns the ID of the referenced security group and VPC, and the ID and status of the VPC peering connection.

*/ @property (nonatomic, strong) NSArray * _Nullable userIdGroupPairs; @end /**

Describes a stale security group (a security group that contains stale rules).

*/ @interface AWSEC2StaleSecurityGroup : AWSModel /**

The description of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

The name of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

Information about the stale inbound rules in the security group.

*/ @property (nonatomic, strong) NSArray * _Nullable staleIpPermissions; /**

Information about the stale outbound rules in the security group.

*/ @property (nonatomic, strong) NSArray * _Nullable staleIpPermissionsEgress; /**

The ID of the VPC for the security group.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /** */ @interface AWSEC2StartInstancesRequest : AWSRequest /**

Reserved.

*/ @property (nonatomic, strong) NSString * _Nullable additionalInfo; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; @end /** */ @interface AWSEC2StartInstancesResult : AWSModel /**

Information about the started instances.

*/ @property (nonatomic, strong) NSArray * _Nullable startingInstances; @end /** */ @interface AWSEC2StartNetworkInsightsAccessScopeAnalysisRequest : AWSRequest /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the Network Access Scope.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsAccessScopeId; /**

The tags to apply.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2StartNetworkInsightsAccessScopeAnalysisResult : AWSModel /**

The Network Access Scope analysis.

*/ @property (nonatomic, strong) AWSEC2NetworkInsightsAccessScopeAnalysis * _Nullable networkInsightsAccessScopeAnalysis; @end /** */ @interface AWSEC2StartNetworkInsightsAnalysisRequest : AWSRequest /**

The member accounts that contain resources that the path can traverse.

*/ @property (nonatomic, strong) NSArray * _Nullable additionalAccounts; /**

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.

*/ @property (nonatomic, strong) NSString * _Nullable clientToken; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The Amazon Resource Names (ARN) of the resources that the path must traverse.

*/ @property (nonatomic, strong) NSArray * _Nullable filterInArns; /**

The ID of the path.

*/ @property (nonatomic, strong) NSString * _Nullable networkInsightsPathId; /**

The tags to apply.

*/ @property (nonatomic, strong) NSArray * _Nullable tagSpecifications; @end /** */ @interface AWSEC2StartNetworkInsightsAnalysisResult : AWSModel /**

Information about the network insights analysis.

*/ @property (nonatomic, strong) AWSEC2NetworkInsightsAnalysis * _Nullable networkInsightsAnalysis; @end /** */ @interface AWSEC2StartVpcEndpointServicePrivateDnsVerificationRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the endpoint service.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; @end /** */ @interface AWSEC2StartVpcEndpointServicePrivateDnsVerificationResult : AWSModel /**

Returns true if the request succeeds; otherwise, it returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returnValue; @end /**

Describes a state change.

*/ @interface AWSEC2StateReason : AWSModel /**

The reason code for the state change.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

The message for the state change.

  • Server.InsufficientInstanceCapacity: There was insufficient capacity available to satisfy the launch request.

  • Server.InternalError: An internal error caused the instance to terminate during launch.

  • Server.ScheduledStop: The instance was stopped due to a scheduled retirement.

  • Server.SpotInstanceShutdown: The instance was stopped because the number of Spot requests with a maximum price equal to or higher than the Spot price exceeded available capacity or because of an increase in the Spot price.

  • Server.SpotInstanceTermination: The instance was terminated because the number of Spot requests with a maximum price equal to or higher than the Spot price exceeded available capacity or because of an increase in the Spot price.

  • Client.InstanceInitiatedShutdown: The instance was shut down using the shutdown -h command from the instance.

  • Client.InstanceTerminated: The instance was terminated or rebooted during AMI creation.

  • Client.InternalError: A client error caused the instance to terminate during launch.

  • Client.InvalidSnapshot.NotFound: The specified snapshot was not found.

  • Client.UserInitiatedHibernate: Hibernation was initiated on the instance.

  • Client.UserInitiatedShutdown: The instance was shut down using the Amazon EC2 API.

  • Client.VolumeLimitExceeded: The limit on the number of EBS volumes or total storage was exceeded. Decrease usage or request an increase in your account limits.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /** */ @interface AWSEC2StopInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

Forces the instances to stop. The instances do not have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures. This option is not recommended for Windows instances.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable force; /**

Hibernates the instance if the instance was enabled for hibernation at launch. If the instance cannot hibernate successfully, a normal shutdown occurs. For more information, see Hibernate your instance in the Amazon EC2 User Guide.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable hibernate; /**

The IDs of the instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; @end /** */ @interface AWSEC2StopInstancesResult : AWSModel /**

Information about the stopped instances.

*/ @property (nonatomic, strong) NSArray * _Nullable stoppingInstances; @end /**

Describes the storage location for an instance store-backed AMI.

*/ @interface AWSEC2Storage : AWSModel /**

An Amazon S3 storage location.

*/ @property (nonatomic, strong) AWSEC2S3Storage * _Nullable s3; @end /**

Describes a storage location in Amazon S3.

*/ @interface AWSEC2StorageLocation : AWSModel /**

The name of the S3 bucket.

*/ @property (nonatomic, strong) NSString * _Nullable bucket; /**

The key.

*/ @property (nonatomic, strong) NSString * _Nullable key; @end /**

The information about the AMI store task, including the progress of the task.

*/ @interface AWSEC2StoreImageTaskResult : AWSModel /**

The ID of the AMI that is being stored.

*/ @property (nonatomic, strong) NSString * _Nullable amiId; /**

The name of the Amazon S3 bucket that contains the stored AMI object.

*/ @property (nonatomic, strong) NSString * _Nullable bucket; /**

The progress of the task as a percentage.

*/ @property (nonatomic, strong) NSNumber * _Nullable progressPercentage; /**

The name of the stored AMI object in the bucket.

*/ @property (nonatomic, strong) NSString * _Nullable s3objectKey; /**

If the tasks fails, the reason for the failure is returned. If the task succeeds, null is returned.

*/ @property (nonatomic, strong) NSString * _Nullable storeTaskFailureReason; /**

The state of the store task (InProgress, Completed, or Failed).

*/ @property (nonatomic, strong) NSString * _Nullable storeTaskState; /**

The time the task started.

*/ @property (nonatomic, strong) NSDate * _Nullable taskStartTime; @end /**

Describes a subnet.

*/ @interface AWSEC2Subnet : AWSModel /**

Indicates whether a network interface created in this subnet (including a network interface created by RunInstances) receives an IPv6 address.

*/ @property (nonatomic, strong) NSNumber * _Nullable assignIpv6AddressOnCreation; /**

The Availability Zone of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The AZ ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZoneId; /**

The number of unused private IPv4 addresses in the subnet. The IPv4 addresses for any stopped instances are considered unavailable.

*/ @property (nonatomic, strong) NSNumber * _Nullable availableIpAddressCount; /**

The IPv4 CIDR block assigned to the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable cidrBlock; /**

The customer-owned IPv4 address pool associated with the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable customerOwnedIpv4Pool; /**

Indicates whether this is the default subnet for the Availability Zone.

*/ @property (nonatomic, strong) NSNumber * _Nullable defaultForAz; /**

Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet should return synthetic IPv6 addresses for IPv4-only destinations.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableDns64; /**

Indicates the device position for local network interfaces in this subnet. For example, 1 indicates local network interfaces in this subnet are the secondary network interface (eth1).

*/ @property (nonatomic, strong) NSNumber * _Nullable enableLniAtDeviceIndex; /**

Information about the IPv6 CIDR blocks associated with the subnet.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6CidrBlockAssociationSet; /**

Indicates whether this is an IPv6 only subnet.

*/ @property (nonatomic, strong) NSNumber * _Nullable ipv6Native; /**

Indicates whether a network interface created in this subnet (including a network interface created by RunInstances) receives a customer-owned IPv4 address.

*/ @property (nonatomic, strong) NSNumber * _Nullable mapCustomerOwnedIpOnLaunch; /**

Indicates whether instances launched in this subnet receive a public IPv4 address.

*/ @property (nonatomic, strong) NSNumber * _Nullable mapPublicIpOnLaunch; /**

The Amazon Resource Name (ARN) of the Outpost.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The ID of the Amazon Web Services account that owns the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The type of hostnames to assign to instances in the subnet at launch. An instance hostname is based on the IPv4 address or ID of the instance.

*/ @property (nonatomic, strong) AWSEC2PrivateDnsNameOptionsOnLaunch * _Nullable privateDnsNameOptionsOnLaunch; /**

The current state of the subnet.

*/ @property (nonatomic, assign) AWSEC2SubnetState state; /**

The Amazon Resource Name (ARN) of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetArn; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

Any tags assigned to the subnet.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC the subnet is in.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes the subnet association with the transit gateway multicast domain.

*/ @interface AWSEC2SubnetAssociation : AWSModel /**

The state of the subnet association.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayMulitcastDomainAssociationState state; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; @end /**

Describes the state of a CIDR block.

*/ @interface AWSEC2SubnetCidrBlockState : AWSModel /**

The state of a CIDR block.

*/ @property (nonatomic, assign) AWSEC2SubnetCidrBlockStateCode state; /**

A message about the status of the CIDR block, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; @end /**

Describes a subnet CIDR reservation.

*/ @interface AWSEC2SubnetCidrReservation : AWSModel /**

The CIDR that has been reserved.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

The description assigned to the subnet CIDR reservation.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the account that owns the subnet CIDR reservation.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The type of reservation.

*/ @property (nonatomic, assign) AWSEC2SubnetCidrReservationType reservationType; /**

The ID of the subnet CIDR reservation.

*/ @property (nonatomic, strong) NSString * _Nullable subnetCidrReservationId; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The tags assigned to the subnet CIDR reservation.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

Describes an association between a subnet and an IPv6 CIDR block.

*/ @interface AWSEC2SubnetIpv6CidrBlockAssociation : AWSModel /**

The ID of the association.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The IPv6 CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlock; /**

The state of the CIDR block.

*/ @property (nonatomic, strong) AWSEC2SubnetCidrBlockState * _Nullable ipv6CidrBlockState; @end /**

Describes an Infrastructure Performance subscription.

*/ @interface AWSEC2Subscription : AWSModel /**

The Region or Availability Zone that's the target for the subscription. For example, eu-west-1.

*/ @property (nonatomic, strong) NSString * _Nullable destination; /**

The metric used for the subscription.

*/ @property (nonatomic, assign) AWSEC2MetricType metric; /**

The data aggregation time for the subscription.

*/ @property (nonatomic, assign) AWSEC2PeriodType period; /**

The Region or Availability Zone that's the source for the subscription. For example, us-east-1.

*/ @property (nonatomic, strong) NSString * _Nullable source; /**

The statistic used for the subscription.

*/ @property (nonatomic, assign) AWSEC2StatisticType statistic; @end /**

Describes the burstable performance instance whose credit option for CPU usage was successfully modified.

*/ @interface AWSEC2SuccessfulInstanceCreditSpecificationItem : AWSModel /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /**

Describes a Reserved Instance whose queued purchase was successfully deleted.

*/ @interface AWSEC2SuccessfulQueuedPurchaseDeletion : AWSModel /**

The ID of the Reserved Instance.

*/ @property (nonatomic, strong) NSString * _Nullable reservedInstancesId; @end /**

Describes a tag.

*/ @interface AWSEC2Tag : AWSModel /**

The key of the tag.

Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:.

*/ @property (nonatomic, strong) NSString * _Nullable key; /**

The value of the tag.

Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode characters.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

Describes a tag.

*/ @interface AWSEC2TagDescription : AWSModel /**

The tag key.

*/ @property (nonatomic, strong) NSString * _Nullable key; /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The resource type.

*/ @property (nonatomic, assign) AWSEC2ResourceType resourceType; /**

The tag value.

*/ @property (nonatomic, strong) NSString * _Nullable value; @end /**

The tags to apply to a resource when the resource is being created. When you specify a tag, you must specify the resource type to tag, otherwise the request will fail.

The Valid Values lists all the resource types that can be tagged. However, the action you're using might not support tagging all of these resource types. If you try to tag a resource type that is unsupported for the action you're using, you'll get an error.

*/ @interface AWSEC2TagSpecification : AWSModel /**

The type of resource to tag on creation.

*/ @property (nonatomic, assign) AWSEC2ResourceType resourceType; /**

The tags to apply to the resource.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; @end /**

The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain, you can specify a target capacity of 0 and add capacity later.

You can use the On-Demand Instance MaxTotalPrice parameter, the Spot Instance MaxTotalPrice, or both to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, EC2 Fleet will launch instances until it reaches the maximum amount that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity. The MaxTotalPrice parameters are located in OnDemandOptions and SpotOptions.

*/ @interface AWSEC2TargetCapacitySpecification : AWSModel /**

The default TotalTargetCapacity, which is either Spot or On-Demand.

*/ @property (nonatomic, assign) AWSEC2DefaultTargetCapacityType defaultTargetCapacityType; /**

The number of On-Demand units to request. If you specify a target capacity for Spot units, you cannot specify a target capacity for On-Demand units.

*/ @property (nonatomic, strong) NSNumber * _Nullable onDemandTargetCapacity; /**

The maximum number of Spot units to launch. If you specify a target capacity for On-Demand units, you cannot specify a target capacity for Spot units.

*/ @property (nonatomic, strong) NSNumber * _Nullable spotTargetCapacity; /**

The unit for the target capacity. TargetCapacityUnitType can only be specified when InstanceRequirements is specified.

Default: units (translates to number of instances)

*/ @property (nonatomic, assign) AWSEC2TargetCapacityUnitType targetCapacityUnitType; /**

The number of units to request, filled using DefaultTargetCapacityType.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalTargetCapacity; @end /**

The number of units to request. You can choose to set the target capacity as the number of instances. Or you can set the target capacity to a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain, you can specify a target capacity of 0 and add capacity later.

You can use the On-Demand Instance MaxTotalPrice parameter, the Spot Instance MaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, EC2 Fleet will launch instances until it reaches the maximum amount that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity. The MaxTotalPrice parameters are located in OnDemandOptionsRequest and SpotOptionsRequest.

Required parameters: [TotalTargetCapacity] */ @interface AWSEC2TargetCapacitySpecificationRequest : AWSModel /**

The default TotalTargetCapacity, which is either Spot or On-Demand.

*/ @property (nonatomic, assign) AWSEC2DefaultTargetCapacityType defaultTargetCapacityType; /**

The number of On-Demand units to request.

*/ @property (nonatomic, strong) NSNumber * _Nullable onDemandTargetCapacity; /**

The number of Spot units to request.

*/ @property (nonatomic, strong) NSNumber * _Nullable spotTargetCapacity; /**

The unit for the target capacity. TargetCapacityUnitType can only be specified when InstanceRequirements is specified.

Default: units (translates to number of instances)

*/ @property (nonatomic, assign) AWSEC2TargetCapacityUnitType targetCapacityUnitType; /**

The number of units to request, filled using DefaultTargetCapacityType.

*/ @property (nonatomic, strong) NSNumber * _Nullable totalTargetCapacity; @end /**

Information about the Convertible Reserved Instance offering.

*/ @interface AWSEC2TargetConfiguration : AWSModel /**

The number of instances the Convertible Reserved Instance offering can be applied to. This parameter is reserved and cannot be specified in a request

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

The ID of the Convertible Reserved Instance offering.

*/ @property (nonatomic, strong) NSString * _Nullable offeringId; @end /**

Details about the target configuration.

Required parameters: [OfferingId] */ @interface AWSEC2TargetConfigurationRequest : AWSModel /**

The number of instances the Convertible Reserved Instance offering can be applied to. This parameter is reserved and cannot be specified in a request

*/ @property (nonatomic, strong) NSNumber * _Nullable instanceCount; /**

The Convertible Reserved Instance offering ID.

*/ @property (nonatomic, strong) NSString * _Nullable offeringId; @end /**

Describes a load balancer target group.

*/ @interface AWSEC2TargetGroup : AWSModel /**

The Amazon Resource Name (ARN) of the target group.

*/ @property (nonatomic, strong) NSString * _Nullable arn; @end /**

Describes the target groups to attach to a Spot Fleet. Spot Fleet registers the running Spot Instances with these target groups.

*/ @interface AWSEC2TargetGroupsConfig : AWSModel /**

One or more target groups.

*/ @property (nonatomic, strong) NSArray * _Nullable targetGroups; @end /**

Describes a target network associated with a Client VPN endpoint.

*/ @interface AWSEC2TargetNetwork : AWSModel /**

The ID of the association.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The ID of the Client VPN endpoint with which the target network is associated.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

The IDs of the security groups applied to the target network association.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroups; /**

The current state of the target network association.

*/ @property (nonatomic, strong) AWSEC2AssociationStatus * _Nullable status; /**

The ID of the subnet specified as the target network.

*/ @property (nonatomic, strong) NSString * _Nullable targetNetworkId; /**

The ID of the VPC in which the target network (subnet) is located.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

The total value of the new Convertible Reserved Instances.

*/ @interface AWSEC2TargetReservationValue : AWSModel /**

The total value of the Convertible Reserved Instances that make up the exchange. This is the sum of the list value, remaining upfront price, and additional upfront cost of the exchange.

*/ @property (nonatomic, strong) AWSEC2ReservationValue * _Nullable reservationValue; /**

The configuration of the Convertible Reserved Instances that make up the exchange.

*/ @property (nonatomic, strong) AWSEC2TargetConfiguration * _Nullable targetConfiguration; @end /** */ @interface AWSEC2TerminateClientVpnConnectionsRequest : AWSRequest /**

The ID of the Client VPN endpoint to which the client is connected.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

The ID of the client connection to be terminated.

*/ @property (nonatomic, strong) NSString * _Nullable connectionId; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The name of the user who initiated the connection. Use this option to terminate all active connections for the specified user. This option can only be used if the user has established up to five connections.

*/ @property (nonatomic, strong) NSString * _Nullable username; @end /** */ @interface AWSEC2TerminateClientVpnConnectionsResult : AWSModel /**

The ID of the Client VPN endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable clientVpnEndpointId; /**

The current state of the client connections.

*/ @property (nonatomic, strong) NSArray * _Nullable connectionStatuses; /**

The user who established the terminated client connections.

*/ @property (nonatomic, strong) NSString * _Nullable username; @end /**

Information about a terminated Client VPN endpoint client connection.

*/ @interface AWSEC2TerminateConnectionStatus : AWSModel /**

The ID of the client connection.

*/ @property (nonatomic, strong) NSString * _Nullable connectionId; /**

A message about the status of the client connection, if applicable.

*/ @property (nonatomic, strong) AWSEC2ClientVpnConnectionStatus * _Nullable currentStatus; /**

The state of the client connection.

*/ @property (nonatomic, strong) AWSEC2ClientVpnConnectionStatus * _Nullable previousStatus; @end /** */ @interface AWSEC2TerminateInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the instances.

Constraints: Up to 1000 instance IDs. We recommend breaking up this request into smaller batches.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; @end /** */ @interface AWSEC2TerminateInstancesResult : AWSModel /**

Information about the terminated instances.

*/ @property (nonatomic, strong) NSArray * _Nullable terminatingInstances; @end /**

Describes a through resource statement.

*/ @interface AWSEC2ThroughResourcesStatement : AWSModel /**

The resource statement.

*/ @property (nonatomic, strong) AWSEC2ResourceStatement * _Nullable resourceStatement; @end /**

Describes a through resource statement.

*/ @interface AWSEC2ThroughResourcesStatementRequest : AWSModel /**

The resource statement.

*/ @property (nonatomic, strong) AWSEC2ResourceStatementRequest * _Nullable resourceStatement; @end /**

The minimum and maximum amount of total local storage, in GB.

*/ @interface AWSEC2TotalLocalStorageGB : AWSModel /**

The maximum amount of total local storage, in GB. If this parameter is not specified, there is no maximum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum amount of total local storage, in GB. If this parameter is not specified, there is no minimum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

The minimum and maximum amount of total local storage, in GB.

*/ @interface AWSEC2TotalLocalStorageGBRequest : AWSModel /**

The maximum amount of total local storage, in GB. To specify no maximum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum amount of total local storage, in GB. To specify no minimum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

Describes the Traffic Mirror filter.

*/ @interface AWSEC2TrafficMirrorFilter : AWSModel /**

The description of the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Information about the egress rules that are associated with the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSArray * _Nullable egressFilterRules; /**

Information about the ingress rules that are associated with the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSArray * _Nullable ingressFilterRules; /**

The network service traffic that is associated with the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSArray * _Nullable networkServices; /**

The tags assigned to the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterId; @end /**

Describes the Traffic Mirror rule.

*/ @interface AWSEC2TrafficMirrorFilterRule : AWSModel /**

The description of the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The destination CIDR block assigned to the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The destination port range assigned to the Traffic Mirror rule.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorPortRange * _Nullable destinationPortRange; /**

The protocol assigned to the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSNumber * _Nullable protocols; /**

The action assigned to the Traffic Mirror rule.

*/ @property (nonatomic, assign) AWSEC2TrafficMirrorRuleAction ruleAction; /**

The rule number of the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSNumber * _Nullable ruleNumber; /**

The source CIDR block assigned to the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable sourceCidrBlock; /**

The source port range assigned to the Traffic Mirror rule.

*/ @property (nonatomic, strong) AWSEC2TrafficMirrorPortRange * _Nullable sourcePortRange; /**

The traffic direction assigned to the Traffic Mirror rule.

*/ @property (nonatomic, assign) AWSEC2TrafficDirection trafficDirection; /**

The ID of the Traffic Mirror filter that the rule is associated with.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterId; /**

The ID of the Traffic Mirror rule.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterRuleId; @end /**

Describes the Traffic Mirror port range.

*/ @interface AWSEC2TrafficMirrorPortRange : AWSModel /**

The start of the Traffic Mirror port range. This applies to the TCP and UDP protocols.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The end of the Traffic Mirror port range. This applies to the TCP and UDP protocols.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; @end /**

Information about the Traffic Mirror filter rule port range.

*/ @interface AWSEC2TrafficMirrorPortRangeRequest : AWSModel /**

The first port in the Traffic Mirror port range. This applies to the TCP and UDP protocols.

*/ @property (nonatomic, strong) NSNumber * _Nullable fromPort; /**

The last port in the Traffic Mirror port range. This applies to the TCP and UDP protocols.

*/ @property (nonatomic, strong) NSNumber * _Nullable toPort; @end /**

Describes a Traffic Mirror session.

*/ @interface AWSEC2TrafficMirrorSession : AWSModel /**

The description of the Traffic Mirror session.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the Traffic Mirror session's network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The ID of the account that owns the Traffic Mirror session.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The number of bytes in each packet to mirror. These are the bytes after the VXLAN header. To mirror a subset, set this to the length (in bytes) to mirror. For example, if you set this value to 100, then the first 100 bytes that meet the filter criteria are copied to the target. Do not specify this parameter when you want to mirror the entire packet

*/ @property (nonatomic, strong) NSNumber * _Nullable packetLength; /**

The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets.

Valid values are 1-32766.

*/ @property (nonatomic, strong) NSNumber * _Nullable sessionNumber; /**

The tags assigned to the Traffic Mirror session.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the Traffic Mirror filter.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorFilterId; /**

The ID for the Traffic Mirror session.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorSessionId; /**

The ID of the Traffic Mirror target.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorTargetId; /**

The virtual network ID associated with the Traffic Mirror session.

*/ @property (nonatomic, strong) NSNumber * _Nullable virtualNetworkId; @end /**

Describes a Traffic Mirror target.

*/ @interface AWSEC2TrafficMirrorTarget : AWSModel /**

Information about the Traffic Mirror target.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the Gateway Load Balancer endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable gatewayLoadBalancerEndpointId; /**

The network interface ID that is attached to the target.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The Amazon Resource Name (ARN) of the Network Load Balancer.

*/ @property (nonatomic, strong) NSString * _Nullable networkLoadBalancerArn; /**

The ID of the account that owns the Traffic Mirror target.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The tags assigned to the Traffic Mirror target.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the Traffic Mirror target.

*/ @property (nonatomic, strong) NSString * _Nullable trafficMirrorTargetId; /**

The type of Traffic Mirror target.

*/ @property (nonatomic, assign) AWSEC2TrafficMirrorTargetType types; @end /**

Describes a transit gateway.

*/ @interface AWSEC2TransitGateway : AWSModel /**

The creation time.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTime; /**

The description of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The transit gateway options.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayOptions * _Nullable options; /**

The ID of the Amazon Web Services account that owns the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The state of the transit gateway.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayState state; /**

The tags for the transit gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The Amazon Resource Name (ARN) of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayArn; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; @end /**

Describes an association between a resource attachment and a transit gateway route table.

*/ @interface AWSEC2TransitGatewayAssociation : AWSModel /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The resource type. Note that the tgw-peering resource type has been deprecated.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentResourceType resourceType; /**

The state of the association.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAssociationState state; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /**

Describes an attachment between a resource and a transit gateway.

*/ @interface AWSEC2TransitGatewayAttachment : AWSModel /**

The association.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayAttachmentAssociation * _Nullable association; /**

The creation time.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTime; /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The ID of the Amazon Web Services account that owns the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceOwnerId; /**

The resource type. Note that the tgw-peering resource type has been deprecated.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentResourceType resourceType; /**

The attachment state. Note that the initiating state has been deprecated.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentState state; /**

The tags for the attachment.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of the Amazon Web Services account that owns the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayOwnerId; @end /**

Describes an association.

*/ @interface AWSEC2TransitGatewayAttachmentAssociation : AWSModel /**

The state of the association.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAssociationState state; /**

The ID of the route table for the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /**

The BGP configuration information.

*/ @interface AWSEC2TransitGatewayAttachmentBgpConfiguration : AWSModel /**

The BGP status.

*/ @property (nonatomic, assign) AWSEC2BgpStatus bgpStatus; /**

The interior BGP peer IP address for the appliance.

*/ @property (nonatomic, strong) NSString * _Nullable peerAddress; /**

The peer Autonomous System Number (ASN).

*/ @property (nonatomic, strong) NSNumber * _Nullable peerAsn; /**

The interior BGP peer IP address for the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAddress; /**

The transit gateway Autonomous System Number (ASN).

*/ @property (nonatomic, strong) NSNumber * _Nullable transitGatewayAsn; @end /**

Describes a propagation route table.

*/ @interface AWSEC2TransitGatewayAttachmentPropagation : AWSModel /**

The state of the propagation route table.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayPropagationState state; /**

The ID of the propagation route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /**

Describes a transit gateway Connect attachment.

*/ @interface AWSEC2TransitGatewayConnect : AWSModel /**

The creation time.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTime; /**

The Connect attachment options.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayConnectOptions * _Nullable options; /**

The state of the attachment.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentState state; /**

The tags for the attachment.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the Connect attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of the attachment from which the Connect attachment was created.

*/ @property (nonatomic, strong) NSString * _Nullable transportTransitGatewayAttachmentId; @end /**

Describes the Connect attachment options.

*/ @interface AWSEC2TransitGatewayConnectOptions : AWSModel /**

The tunnel protocol.

*/ @property (nonatomic, assign) AWSEC2ProtocolValue protocols; @end /**

Describes a transit gateway Connect peer.

*/ @interface AWSEC2TransitGatewayConnectPeer : AWSModel /**

The Connect peer details.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayConnectPeerConfiguration * _Nullable connectPeerConfiguration; /**

The creation time.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTime; /**

The state of the Connect peer.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayConnectPeerState state; /**

The tags for the Connect peer.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the Connect attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the Connect peer.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayConnectPeerId; @end /**

Describes the Connect peer details.

*/ @interface AWSEC2TransitGatewayConnectPeerConfiguration : AWSModel /**

The BGP configuration details.

*/ @property (nonatomic, strong) NSArray * _Nullable bgpConfigurations; /**

The range of interior BGP peer IP addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable insideCidrBlocks; /**

The Connect peer IP address on the appliance side of the tunnel.

*/ @property (nonatomic, strong) NSString * _Nullable peerAddress; /**

The tunnel protocol.

*/ @property (nonatomic, assign) AWSEC2ProtocolValue protocols; /**

The Connect peer IP address on the transit gateway side of the tunnel.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAddress; @end /**

The BGP options for the Connect attachment.

*/ @interface AWSEC2TransitGatewayConnectRequestBgpOptions : AWSModel /**

The peer Autonomous System Number (ASN).

*/ @property (nonatomic, strong) NSNumber * _Nullable peerAsn; @end /**

Describes the deregistered transit gateway multicast group members.

*/ @interface AWSEC2TransitGatewayMulticastDeregisteredGroupMembers : AWSModel /**

The network interface IDs of the deregistered members.

*/ @property (nonatomic, strong) NSArray * _Nullable deregisteredNetworkInterfaceIds; /**

The IP address assigned to the transit gateway multicast group.

*/ @property (nonatomic, strong) NSString * _Nullable groupIpAddress; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /**

Describes the deregistered transit gateway multicast group sources.

*/ @interface AWSEC2TransitGatewayMulticastDeregisteredGroupSources : AWSModel /**

The network interface IDs of the non-registered members.

*/ @property (nonatomic, strong) NSArray * _Nullable deregisteredNetworkInterfaceIds; /**

The IP address assigned to the transit gateway multicast group.

*/ @property (nonatomic, strong) NSString * _Nullable groupIpAddress; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /**

Describes the transit gateway multicast domain.

*/ @interface AWSEC2TransitGatewayMulticastDomain : AWSModel /**

The time the transit gateway multicast domain was created.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTime; /**

The options for the transit gateway multicast domain.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayMulticastDomainOptions * _Nullable options; /**

The ID of the Amazon Web Services account that owns the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The state of the transit gateway multicast domain.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayMulticastDomainState state; /**

The tags for the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The Amazon Resource Name (ARN) of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainArn; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /**

Describes the resources associated with the transit gateway multicast domain.

*/ @interface AWSEC2TransitGatewayMulticastDomainAssociation : AWSModel /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The ID of the Amazon Web Services account that owns the transit gateway multicast domain association resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceOwnerId; /**

The type of resource, for example a VPC attachment.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentResourceType resourceType; /**

The subnet associated with the transit gateway multicast domain.

*/ @property (nonatomic, strong) AWSEC2SubnetAssociation * _Nullable subnet; /**

The ID of the transit gateway attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /**

Describes the multicast domain associations.

*/ @interface AWSEC2TransitGatewayMulticastDomainAssociations : AWSModel /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The ID of the Amazon Web Services account that owns the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceOwnerId; /**

The type of resource, for example a VPC attachment.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentResourceType resourceType; /**

The subnets associated with the multicast domain.

*/ @property (nonatomic, strong) NSArray * _Nullable subnets; /**

The ID of the transit gateway attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /**

Describes the options for a transit gateway multicast domain.

*/ @interface AWSEC2TransitGatewayMulticastDomainOptions : AWSModel /**

Indicates whether to automatically cross-account subnet associations that are associated with the transit gateway multicast domain.

*/ @property (nonatomic, assign) AWSEC2AutoAcceptSharedAssociationsValue autoAcceptSharedAssociations; /**

Indicates whether Internet Group Management Protocol (IGMP) version 2 is turned on for the transit gateway multicast domain.

*/ @property (nonatomic, assign) AWSEC2Igmpv2SupportValue igmpv2Support; /**

Indicates whether support for statically configuring transit gateway multicast group sources is turned on.

*/ @property (nonatomic, assign) AWSEC2StaticSourcesSupportValue staticSourcesSupport; @end /**

Describes the transit gateway multicast group resources.

*/ @interface AWSEC2TransitGatewayMulticastGroup : AWSModel /**

The IP address assigned to the transit gateway multicast group.

*/ @property (nonatomic, strong) NSString * _Nullable groupIpAddress; /**

Indicates that the resource is a transit gateway multicast group member.

*/ @property (nonatomic, strong) NSNumber * _Nullable groupMember; /**

Indicates that the resource is a transit gateway multicast group member.

*/ @property (nonatomic, strong) NSNumber * _Nullable groupSource; /**

The member type (for example, static).

*/ @property (nonatomic, assign) AWSEC2MembershipType memberType; /**

The ID of the transit gateway attachment.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The ID of the Amazon Web Services account that owns the transit gateway multicast domain group resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceOwnerId; /**

The type of resource, for example a VPC attachment.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentResourceType resourceType; /**

The source type.

*/ @property (nonatomic, assign) AWSEC2MembershipType sourceType; /**

The ID of the subnet.

*/ @property (nonatomic, strong) NSString * _Nullable subnetId; /**

The ID of the transit gateway attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /**

Describes the registered transit gateway multicast group members.

*/ @interface AWSEC2TransitGatewayMulticastRegisteredGroupMembers : AWSModel /**

The IP address assigned to the transit gateway multicast group.

*/ @property (nonatomic, strong) NSString * _Nullable groupIpAddress; /**

The ID of the registered network interfaces.

*/ @property (nonatomic, strong) NSArray * _Nullable registeredNetworkInterfaceIds; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /**

Describes the members registered with the transit gateway multicast group.

*/ @interface AWSEC2TransitGatewayMulticastRegisteredGroupSources : AWSModel /**

The IP address assigned to the transit gateway multicast group.

*/ @property (nonatomic, strong) NSString * _Nullable groupIpAddress; /**

The IDs of the network interfaces members registered with the transit gateway multicast group.

*/ @property (nonatomic, strong) NSArray * _Nullable registeredNetworkInterfaceIds; /**

The ID of the transit gateway multicast domain.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayMulticastDomainId; @end /**

Describes the options for a transit gateway.

*/ @interface AWSEC2TransitGatewayOptions : AWSModel /**

A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs.

*/ @property (nonatomic, strong) NSNumber * _Nullable amazonSideAsn; /**

The ID of the default association route table.

*/ @property (nonatomic, strong) NSString * _Nullable associationDefaultRouteTableId; /**

Indicates whether attachment requests are automatically accepted.

*/ @property (nonatomic, assign) AWSEC2AutoAcceptSharedAttachmentsValue autoAcceptSharedAttachments; /**

Indicates whether resource attachments are automatically associated with the default association route table.

*/ @property (nonatomic, assign) AWSEC2DefaultRouteTableAssociationValue defaultRouteTableAssociation; /**

Indicates whether resource attachments automatically propagate routes to the default propagation route table.

*/ @property (nonatomic, assign) AWSEC2DefaultRouteTablePropagationValue defaultRouteTablePropagation; /**

Indicates whether DNS support is enabled.

*/ @property (nonatomic, assign) AWSEC2DnsSupportValue dnsSupport; /**

Indicates whether multicast is enabled on the transit gateway

*/ @property (nonatomic, assign) AWSEC2MulticastSupportValue multicastSupport; /**

The ID of the default propagation route table.

*/ @property (nonatomic, strong) NSString * _Nullable propagationDefaultRouteTableId; /**

The transit gateway CIDR blocks.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayCidrBlocks; /**

Indicates whether Equal Cost Multipath Protocol support is enabled.

*/ @property (nonatomic, assign) AWSEC2VpnEcmpSupportValue vpnEcmpSupport; @end /**

Describes the transit gateway peering attachment.

*/ @interface AWSEC2TransitGatewayPeeringAttachment : AWSModel /**

Information about the accepter transit gateway.

*/ @property (nonatomic, strong) AWSEC2PeeringTgwInfo * _Nullable accepterTgwInfo; /**

The ID of the accepter transit gateway attachment.

*/ @property (nonatomic, strong) NSString * _Nullable accepterTransitGatewayAttachmentId; /**

The time the transit gateway peering attachment was created.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTime; /**

Details about the transit gateway peering attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPeeringAttachmentOptions * _Nullable options; /**

Information about the requester transit gateway.

*/ @property (nonatomic, strong) AWSEC2PeeringTgwInfo * _Nullable requesterTgwInfo; /**

The state of the transit gateway peering attachment. Note that the initiating state has been deprecated.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentState state; /**

The status of the transit gateway peering attachment.

*/ @property (nonatomic, strong) AWSEC2PeeringAttachmentStatus * _Nullable status; /**

The tags for the transit gateway peering attachment.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the transit gateway peering attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /**

Describes dynamic routing for the transit gateway peering attachment.

*/ @interface AWSEC2TransitGatewayPeeringAttachmentOptions : AWSModel /**

Describes whether dynamic routing is enabled or disabled for the transit gateway peering attachment.

*/ @property (nonatomic, assign) AWSEC2DynamicRoutingValue dynamicRouting; @end /**

Describes a rule associated with a transit gateway policy.

*/ @interface AWSEC2TransitGatewayPolicyRule : AWSModel /**

The destination CIDR block for the transit gateway policy rule.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The port range for the transit gateway policy rule. Currently this is set to * (all).

*/ @property (nonatomic, strong) NSString * _Nullable destinationPortRange; /**

The meta data tags used for the transit gateway policy rule.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPolicyRuleMetaData * _Nullable metaData; /**

The protocol used by the transit gateway policy rule.

*/ @property (nonatomic, strong) NSString * _Nullable protocols; /**

The source CIDR block for the transit gateway policy rule.

*/ @property (nonatomic, strong) NSString * _Nullable sourceCidrBlock; /**

The port range for the transit gateway policy rule. Currently this is set to * (all).

*/ @property (nonatomic, strong) NSString * _Nullable sourcePortRange; @end /**

Describes the meta data tags associated with a transit gateway policy rule.

*/ @interface AWSEC2TransitGatewayPolicyRuleMetaData : AWSModel /**

The key name for the transit gateway policy rule meta data tag.

*/ @property (nonatomic, strong) NSString * _Nullable metaDataKey; /**

The value of the key for the transit gateway policy rule meta data tag.

*/ @property (nonatomic, strong) NSString * _Nullable metaDataValue; @end /**

Describes a transit gateway policy table.

*/ @interface AWSEC2TransitGatewayPolicyTable : AWSModel /**

The timestamp when the transit gateway policy table was created.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTime; /**

The state of the transit gateway policy table

*/ @property (nonatomic, assign) AWSEC2TransitGatewayPolicyTableState state; /**

he key-value pairs associated with the transit gateway policy table.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of the transit gateway policy table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayPolicyTableId; @end /**

Describes a transit gateway policy table association.

*/ @interface AWSEC2TransitGatewayPolicyTableAssociation : AWSModel /**

The resource ID of the transit gateway attachment.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The resource type for the transit gateway policy table association.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentResourceType resourceType; /**

The state of the transit gateway policy table association.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAssociationState state; /**

The ID of the transit gateway attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway policy table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayPolicyTableId; @end /**

Describes a transit gateway policy table entry

*/ @interface AWSEC2TransitGatewayPolicyTableEntry : AWSModel /**

The policy rule associated with the transit gateway policy table.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPolicyRule * _Nullable policyRule; /**

The rule number for the transit gateway policy table entry.

*/ @property (nonatomic, strong) NSString * _Nullable policyRuleNumber; /**

The ID of the target route table.

*/ @property (nonatomic, strong) NSString * _Nullable targetRouteTableId; @end /**

Describes a transit gateway prefix list attachment.

*/ @interface AWSEC2TransitGatewayPrefixListAttachment : AWSModel /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The resource type. Note that the tgw-peering resource type has been deprecated.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentResourceType resourceType; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /**

Describes a prefix list reference.

*/ @interface AWSEC2TransitGatewayPrefixListReference : AWSModel /**

Indicates whether traffic that matches this route is dropped.

*/ @property (nonatomic, strong) NSNumber * _Nullable blackhole; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The ID of the prefix list owner.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListOwnerId; /**

The state of the prefix list reference.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayPrefixListReferenceState state; /**

Information about the transit gateway attachment.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayPrefixListAttachment * _Nullable transitGatewayAttachment; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /**

Describes route propagation.

*/ @interface AWSEC2TransitGatewayPropagation : AWSModel /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The resource type. Note that the tgw-peering resource type has been deprecated.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentResourceType resourceType; /**

The state.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayPropagationState state; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway route table announcement.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableAnnouncementId; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /**

Describes the options for a transit gateway.

*/ @interface AWSEC2TransitGatewayRequestOptions : AWSModel /**

A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs. The default is 64512.

*/ @property (nonatomic, strong) NSNumber * _Nullable amazonSideAsn; /**

Enable or disable automatic acceptance of attachment requests. Disabled by default.

*/ @property (nonatomic, assign) AWSEC2AutoAcceptSharedAttachmentsValue autoAcceptSharedAttachments; /**

Enable or disable automatic association with the default association route table. Enabled by default.

*/ @property (nonatomic, assign) AWSEC2DefaultRouteTableAssociationValue defaultRouteTableAssociation; /**

Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default.

*/ @property (nonatomic, assign) AWSEC2DefaultRouteTablePropagationValue defaultRouteTablePropagation; /**

Enable or disable DNS support. Enabled by default.

*/ @property (nonatomic, assign) AWSEC2DnsSupportValue dnsSupport; /**

Indicates whether multicast is enabled on the transit gateway

*/ @property (nonatomic, assign) AWSEC2MulticastSupportValue multicastSupport; /**

One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR block or larger for IPv4, or a size /64 CIDR block or larger for IPv6.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayCidrBlocks; /**

Enable or disable Equal Cost Multipath Protocol support. Enabled by default.

*/ @property (nonatomic, assign) AWSEC2VpnEcmpSupportValue vpnEcmpSupport; @end /**

Describes a route for a transit gateway route table.

*/ @interface AWSEC2TransitGatewayRoute : AWSModel /**

The CIDR block used for destination matches.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

The ID of the prefix list used for destination matches.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The state of the route.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayRouteState state; /**

The attachments.

*/ @property (nonatomic, strong) NSArray * _Nullable transitGatewayAttachments; /**

The ID of the transit gateway route table announcement.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableAnnouncementId; /**

The route type.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayRouteType types; @end /**

Describes a route attachment.

*/ @interface AWSEC2TransitGatewayRouteAttachment : AWSModel /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The resource type. Note that the tgw-peering resource type has been deprecated.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentResourceType resourceType; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /**

Describes a transit gateway route table.

*/ @interface AWSEC2TransitGatewayRouteTable : AWSModel /**

The creation time.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTime; /**

Indicates whether this is the default association route table for the transit gateway.

*/ @property (nonatomic, strong) NSNumber * _Nullable defaultAssociationRouteTable; /**

Indicates whether this is the default propagation route table for the transit gateway.

*/ @property (nonatomic, strong) NSNumber * _Nullable defaultPropagationRouteTable; /**

The state of the transit gateway route table.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayRouteTableState state; /**

Any tags assigned to the route table.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /**

Describes a transit gateway route table announcement.

*/ @interface AWSEC2TransitGatewayRouteTableAnnouncement : AWSModel /**

The direction for the route table announcement.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayRouteTableAnnouncementDirection announcementDirection; /**

The ID of the core network for the transit gateway route table announcement.

*/ @property (nonatomic, strong) NSString * _Nullable coreNetworkId; /**

The timestamp when the transit gateway route table announcement was created.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTime; /**

The ID of the core network ID for the peer.

*/ @property (nonatomic, strong) NSString * _Nullable peerCoreNetworkId; /**

The ID of the peer transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable peerTransitGatewayId; /**

The ID of the peering attachment.

*/ @property (nonatomic, strong) NSString * _Nullable peeringAttachmentId; /**

The state of the transit gateway announcement.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayRouteTableAnnouncementState state; /**

The key-value pairs associated with the route table announcement.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of the transit gateway route table announcement.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableAnnouncementId; /**

The ID of the transit gateway route table.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableId; @end /**

Describes an association between a route table and a resource attachment.

*/ @interface AWSEC2TransitGatewayRouteTableAssociation : AWSModel /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The resource type. Note that the tgw-peering resource type has been deprecated.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentResourceType resourceType; /**

The state of the association.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAssociationState state; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; @end /**

Describes a route table propagation.

*/ @interface AWSEC2TransitGatewayRouteTablePropagation : AWSModel /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The type of resource. Note that the tgw-peering resource type has been deprecated.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentResourceType resourceType; /**

The state of the resource.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayPropagationState state; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway route table announcement.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayRouteTableAnnouncementId; @end /**

Describes a route in a transit gateway route table.

*/ @interface AWSEC2TransitGatewayRouteTableRoute : AWSModel /**

The ID of the route attachment.

*/ @property (nonatomic, strong) NSString * _Nullable attachmentId; /**

The CIDR block used for destination matches.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidr; /**

The ID of the prefix list.

*/ @property (nonatomic, strong) NSString * _Nullable prefixListId; /**

The ID of the resource for the route attachment.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; /**

The resource type for the route attachment.

*/ @property (nonatomic, strong) NSString * _Nullable resourceType; /**

The route origin. The following are the possible values:

  • static

  • propagated

*/ @property (nonatomic, strong) NSString * _Nullable routeOrigin; /**

The state of the route.

*/ @property (nonatomic, strong) NSString * _Nullable state; @end /**

Describes a VPC attachment.

*/ @interface AWSEC2TransitGatewayVpcAttachment : AWSModel /**

The creation time.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTime; /**

The VPC attachment options.

*/ @property (nonatomic, strong) AWSEC2TransitGatewayVpcAttachmentOptions * _Nullable options; /**

The state of the VPC attachment. Note that the initiating state has been deprecated.

*/ @property (nonatomic, assign) AWSEC2TransitGatewayAttachmentState state; /**

The IDs of the subnets.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; /**

The tags for the VPC attachment.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the attachment.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayAttachmentId; /**

The ID of the transit gateway.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; /**

The ID of the Amazon Web Services account that owns the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcOwnerId; @end /**

Describes the VPC attachment options.

*/ @interface AWSEC2TransitGatewayVpcAttachmentOptions : AWSModel /**

Indicates whether appliance mode support is enabled.

*/ @property (nonatomic, assign) AWSEC2ApplianceModeSupportValue applianceModeSupport; /**

Indicates whether DNS support is enabled.

*/ @property (nonatomic, assign) AWSEC2DnsSupportValue dnsSupport; /**

Indicates whether IPv6 support is disabled.

*/ @property (nonatomic, assign) AWSEC2Ipv6SupportValue ipv6Support; @end /**

Currently available in limited preview only. If you are interested in using this feature, contact your account manager.

Information about an association between a branch network interface with a trunk network interface.

*/ @interface AWSEC2TrunkInterfaceAssociation : AWSModel /**

The ID of the association.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The ID of the branch network interface.

*/ @property (nonatomic, strong) NSString * _Nullable branchInterfaceId; /**

The application key when you use the GRE protocol.

*/ @property (nonatomic, strong) NSNumber * _Nullable greKey; /**

The interface protocol. Valid values are VLAN and GRE.

*/ @property (nonatomic, assign) AWSEC2InterfaceProtocolType interfaceProtocol; /**

The tags for the trunk interface association.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the trunk network interface.

*/ @property (nonatomic, strong) NSString * _Nullable trunkInterfaceId; /**

The ID of the VLAN when you use the VLAN protocol.

*/ @property (nonatomic, strong) NSNumber * _Nullable vlanId; @end /**

The VPN tunnel options.

*/ @interface AWSEC2TunnelOption : AWSModel /**

The action to take after a DPD timeout occurs.

*/ @property (nonatomic, strong) NSString * _Nullable dpdTimeoutAction; /**

The number of seconds after which a DPD timeout occurs.

*/ @property (nonatomic, strong) NSNumber * _Nullable dpdTimeoutSeconds; /**

Status of tunnel endpoint lifecycle control feature.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableTunnelLifecycleControl; /**

The IKE versions that are permitted for the VPN tunnel.

*/ @property (nonatomic, strong) NSArray * _Nullable ikeVersions; /**

Options for logging VPN tunnel activity.

*/ @property (nonatomic, strong) AWSEC2VpnTunnelLogOptions * _Nullable logOptions; /**

The external IP address of the VPN tunnel.

*/ @property (nonatomic, strong) NSString * _Nullable outsideIpAddress; /**

The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 IKE negotiations.

*/ @property (nonatomic, strong) NSArray * _Nullable phase1DHGroupNumbers; /**

The permitted encryption algorithms for the VPN tunnel for phase 1 IKE negotiations.

*/ @property (nonatomic, strong) NSArray * _Nullable phase1EncryptionAlgorithms; /**

The permitted integrity algorithms for the VPN tunnel for phase 1 IKE negotiations.

*/ @property (nonatomic, strong) NSArray * _Nullable phase1IntegrityAlgorithms; /**

The lifetime for phase 1 of the IKE negotiation, in seconds.

*/ @property (nonatomic, strong) NSNumber * _Nullable phase1LifetimeSeconds; /**

The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE negotiations.

*/ @property (nonatomic, strong) NSArray * _Nullable phase2DHGroupNumbers; /**

The permitted encryption algorithms for the VPN tunnel for phase 2 IKE negotiations.

*/ @property (nonatomic, strong) NSArray * _Nullable phase2EncryptionAlgorithms; /**

The permitted integrity algorithms for the VPN tunnel for phase 2 IKE negotiations.

*/ @property (nonatomic, strong) NSArray * _Nullable phase2IntegrityAlgorithms; /**

The lifetime for phase 2 of the IKE negotiation, in seconds.

*/ @property (nonatomic, strong) NSNumber * _Nullable phase2LifetimeSeconds; /**

The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and the customer gateway.

*/ @property (nonatomic, strong) NSString * _Nullable preSharedKey; /**

The percentage of the rekey window determined by RekeyMarginTimeSeconds during which the rekey time is randomly selected.

*/ @property (nonatomic, strong) NSNumber * _Nullable rekeyFuzzPercentage; /**

The margin time, in seconds, before the phase 2 lifetime expires, during which the Amazon Web Services side of the VPN connection performs an IKE rekey.

*/ @property (nonatomic, strong) NSNumber * _Nullable rekeyMarginTimeSeconds; /**

The number of packets in an IKE replay window.

*/ @property (nonatomic, strong) NSNumber * _Nullable replayWindowSize; /**

The action to take when the establishing the VPN tunnels for a VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable startupAction; /**

The range of inside IPv4 addresses for the tunnel.

*/ @property (nonatomic, strong) NSString * _Nullable tunnelInsideCidr; /**

The range of inside IPv6 addresses for the tunnel.

*/ @property (nonatomic, strong) NSString * _Nullable tunnelInsideIpv6Cidr; @end /** */ @interface AWSEC2UnassignIpv6AddressesRequest : AWSRequest /**

The IPv6 addresses to unassign from the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Addresses; /**

The IPv6 prefixes to unassign from the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6Prefixes; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; @end /** */ @interface AWSEC2UnassignIpv6AddressesResult : AWSModel /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The IPv6 addresses that have been unassigned from the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable unassignedIpv6Addresses; /**

The IPv4 prefixes that have been unassigned from the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable unassignedIpv6Prefixes; @end /**

Contains the parameters for UnassignPrivateIpAddresses.

Required parameters: [NetworkInterfaceId] */ @interface AWSEC2UnassignPrivateIpAddressesRequest : AWSRequest /**

The IPv4 prefixes to unassign from the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv4Prefixes; /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The secondary private IP addresses to unassign from the network interface. You can specify this option multiple times to unassign more than one IP address.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddresses; @end /** */ @interface AWSEC2UnassignPrivateNatGatewayAddressRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The maximum amount of time to wait (in seconds) before forcibly releasing the IP addresses if connections are still in progress. Default value is 350 seconds.

*/ @property (nonatomic, strong) NSNumber * _Nullable maxDrainDurationSeconds; /**

The ID of the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; /**

The private IPv4 addresses you want to unassign.

*/ @property (nonatomic, strong) NSArray * _Nullable privateIpAddresses; @end /** */ @interface AWSEC2UnassignPrivateNatGatewayAddressResult : AWSModel /**

Information about the NAT gateway IP addresses.

*/ @property (nonatomic, strong) NSArray * _Nullable natGatewayAddresses; /**

The ID of the NAT gateway.

*/ @property (nonatomic, strong) NSString * _Nullable natGatewayId; @end /** */ @interface AWSEC2UnmonitorInstancesRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The IDs of the instances.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceIds; @end /** */ @interface AWSEC2UnmonitorInstancesResult : AWSModel /**

The monitoring information.

*/ @property (nonatomic, strong) NSArray * _Nullable instanceMonitorings; @end /**

Describes the burstable performance instance whose credit option for CPU usage was not modified.

*/ @interface AWSEC2UnsuccessfulInstanceCreditSpecificationItem : AWSModel /**

The applicable error for the burstable performance instance whose credit option for CPU usage was not modified.

*/ @property (nonatomic, strong) AWSEC2UnsuccessfulInstanceCreditSpecificationItemError * _Nullable error; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; @end /**

Information about the error for the burstable performance instance whose credit option for CPU usage was not modified.

*/ @interface AWSEC2UnsuccessfulInstanceCreditSpecificationItemError : AWSModel /**

The error code.

*/ @property (nonatomic, assign) AWSEC2UnsuccessfulInstanceCreditSpecificationErrorCode code; /**

The applicable error message.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Information about items that were not successfully processed in a batch call.

*/ @interface AWSEC2UnsuccessfulItem : AWSModel /**

Information about the error.

*/ @property (nonatomic, strong) AWSEC2UnsuccessfulItemError * _Nullable error; /**

The ID of the resource.

*/ @property (nonatomic, strong) NSString * _Nullable resourceId; @end /**

Information about the error that occurred. For more information about errors, see Error codes.

*/ @interface AWSEC2UnsuccessfulItemError : AWSModel /**

The error code.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

The error message accompanying the error code.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /** */ @interface AWSEC2UpdateSecurityGroupRuleDescriptionsEgressRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

[Default VPC] The name of the security group. You must specify either the security group ID or the security group name.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The IP permissions for the security group rule. You must specify either the IP permissions or the description.

*/ @property (nonatomic, strong) NSArray * _Nullable ipPermissions; /**

The description for the egress security group rules. You must specify either the description or the IP permissions.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupRuleDescriptions; @end /** */ @interface AWSEC2UpdateSecurityGroupRuleDescriptionsEgressResult : AWSModel /**

Returns true if the request succeeds; otherwise, returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /** */ @interface AWSEC2UpdateSecurityGroupRuleDescriptionsIngressRequest : AWSRequest /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; /**

The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

[Default VPC] The name of the security group. You must specify either the security group ID or the security group name. For security groups in a nondefault VPC, you must specify the security group ID.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The IP permissions for the security group rule. You must specify either IP permissions or a description.

*/ @property (nonatomic, strong) NSArray * _Nullable ipPermissions; /**

The description for the ingress security group rules. You must specify either a description or IP permissions.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupRuleDescriptions; @end /** */ @interface AWSEC2UpdateSecurityGroupRuleDescriptionsIngressResult : AWSModel /**

Returns true if the request succeeds; otherwise, returns an error.

*/ @property (nonatomic, strong) NSNumber * _Nullable returned; @end /**

Describes the Amazon S3 bucket for the disk image.

*/ @interface AWSEC2UserBucket : AWSModel /**

The name of the Amazon S3 bucket where the disk image is located.

*/ @property (nonatomic, strong) NSString * _Nullable s3Bucket; /**

The file name of the disk image.

*/ @property (nonatomic, strong) NSString * _Nullable s3Key; @end /**

Describes the Amazon S3 bucket for the disk image.

*/ @interface AWSEC2UserBucketDetails : AWSModel /**

The Amazon S3 bucket from which the disk image was created.

*/ @property (nonatomic, strong) NSString * _Nullable s3Bucket; /**

The file name of the disk image.

*/ @property (nonatomic, strong) NSString * _Nullable s3Key; @end /**

Describes the user data for an instance.

*/ @interface AWSEC2UserData : AWSModel /**

The user data. If you are using an Amazon Web Services SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.

*/ @property (nonatomic, strong) NSString * _Nullable data; @end /**

Describes a security group and Amazon Web Services account ID pair.

*/ @interface AWSEC2UserIdGroupPair : AWSModel /**

A description for the security group rule that references this user ID group pair.

Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the security group.

*/ @property (nonatomic, strong) NSString * _Nullable groupId; /**

[Default VPC] The name of the security group. For a security group in a nondefault VPC, use the security group ID.

For a referenced security group in another VPC, this value is not returned if the referenced security group is deleted.

*/ @property (nonatomic, strong) NSString * _Nullable groupName; /**

The status of a VPC peering connection, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable peeringStatus; /**

The ID of an Amazon Web Services account.

For a referenced security group in another VPC, the account ID of the referenced security group is returned in the response. If the referenced security group is deleted, this value is not returned.

*/ @property (nonatomic, strong) NSString * _Nullable userId; /**

The ID of the VPC for the referenced security group, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; /**

The ID of the VPC peering connection, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /**

The minimum and maximum number of vCPUs.

*/ @interface AWSEC2VCpuCountRange : AWSModel /**

The maximum number of vCPUs. If this parameter is not specified, there is no maximum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum number of vCPUs. If the value is 0, there is no minimum limit.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

The minimum and maximum number of vCPUs.

Required parameters: [Min] */ @interface AWSEC2VCpuCountRangeRequest : AWSModel /**

The maximum number of vCPUs. To specify no maximum limit, omit this parameter.

*/ @property (nonatomic, strong) NSNumber * _Nullable max; /**

The minimum number of vCPUs. To specify no minimum limit, specify 0.

*/ @property (nonatomic, strong) NSNumber * _Nullable min; @end /**

Describes the vCPU configurations for the instance type.

*/ @interface AWSEC2VCpuInfo : AWSModel /**

The default number of cores for the instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable defaultCores; /**

The default number of threads per core for the instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable defaultThreadsPerCore; /**

The default number of vCPUs for the instance type.

*/ @property (nonatomic, strong) NSNumber * _Nullable defaultVCpus; /**

The valid number of cores that can be configured for the instance type.

*/ @property (nonatomic, strong) NSArray * _Nullable validCores; /**

The valid number of threads per core that can be configured for the instance type.

*/ @property (nonatomic, strong) NSArray * _Nullable validThreadsPerCore; @end /**

The error code and error message that is returned for a parameter or parameter combination that is not valid when a new launch template or new version of a launch template is created.

*/ @interface AWSEC2ValidationError : AWSModel /**

The error code that indicates why the parameter or parameter combination is not valid. For more information about error codes, see Error codes.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

The error message that describes why the parameter or parameter combination is not valid. For more information about error messages, see Error codes.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

The error codes and error messages that are returned for the parameters or parameter combinations that are not valid when a new launch template or new version of a launch template is created.

*/ @interface AWSEC2ValidationWarning : AWSModel /**

The error codes and error messages.

*/ @property (nonatomic, strong) NSArray * _Nullable errors; @end /**

An Amazon Web Services Verified Access endpoint specifies the application that Amazon Web Services Verified Access provides access to. It must be attached to an Amazon Web Services Verified Access group. An Amazon Web Services Verified Access endpoint must also have an attached access policy before you attached it to a group.

*/ @interface AWSEC2VerifiedAccessEndpoint : AWSModel /**

The DNS name for users to reach your application.

*/ @property (nonatomic, strong) NSString * _Nullable applicationDomain; /**

The type of attachment used to provide connectivity between the Amazon Web Services Verified Access endpoint and the application.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessEndpointAttachmentType attachmentType; /**

The creation time.

*/ @property (nonatomic, strong) NSString * _Nullable creationTime; /**

The deletion time.

*/ @property (nonatomic, strong) NSString * _Nullable deletionTime; /**

A description for the Amazon Web Services Verified Access endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

Returned if endpoint has a device trust provider attached.

*/ @property (nonatomic, strong) NSString * _Nullable deviceValidationDomain; /**

The ARN of a public TLS/SSL certificate imported into or created with ACM.

*/ @property (nonatomic, strong) NSString * _Nullable domainCertificateArn; /**

A DNS name that is generated for the endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable endpointDomain; /**

The type of Amazon Web Services Verified Access endpoint. Incoming application requests will be sent to an IP address, load balancer or a network interface depending on the endpoint type specified.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessEndpointType endpointType; /**

The last updated time.

*/ @property (nonatomic, strong) NSString * _Nullable lastUpdatedTime; /**

The load balancer details if creating the Amazon Web Services Verified Access endpoint as load-balancertype.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessEndpointLoadBalancerOptions * _Nullable loadBalancerOptions; /**

The options for network-interface type endpoint.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessEndpointEniOptions * _Nullable networkInterfaceOptions; /**

The IDs of the security groups for the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable securityGroupIds; /**

The endpoint status.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessEndpointStatus * _Nullable status; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the Amazon Web Services Verified Access endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessEndpointId; /**

The ID of the Amazon Web Services Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessGroupId; /**

The ID of the Amazon Web Services Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; @end /**

Options for a network-interface type endpoint.

*/ @interface AWSEC2VerifiedAccessEndpointEniOptions : AWSModel /**

The ID of the network interface.

*/ @property (nonatomic, strong) NSString * _Nullable networkInterfaceId; /**

The IP port number.

*/ @property (nonatomic, strong) NSNumber * _Nullable port; /**

The IP protocol.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessEndpointProtocol protocols; @end /**

Describes a load balancer when creating an Amazon Web Services Verified Access endpoint using the load-balancer type.

*/ @interface AWSEC2VerifiedAccessEndpointLoadBalancerOptions : AWSModel /**

The ARN of the load balancer.

*/ @property (nonatomic, strong) NSString * _Nullable loadBalancerArn; /**

The IP port number.

*/ @property (nonatomic, strong) NSNumber * _Nullable port; /**

The IP protocol.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessEndpointProtocol protocols; /**

The IDs of the subnets.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; @end /**

Describes the status of a Verified Access endpoint.

*/ @interface AWSEC2VerifiedAccessEndpointStatus : AWSModel /**

The status code of the Verified Access endpoint.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessEndpointStatusCode code; /**

The status message of the Verified Access endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes a Verified Access group.

*/ @interface AWSEC2VerifiedAccessGroup : AWSModel /**

The creation time.

*/ @property (nonatomic, strong) NSString * _Nullable creationTime; /**

The deletion time.

*/ @property (nonatomic, strong) NSString * _Nullable deletionTime; /**

A description for the Amazon Web Services Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The last updated time.

*/ @property (nonatomic, strong) NSString * _Nullable lastUpdatedTime; /**

The Amazon Web Services account number that owns the group.

*/ @property (nonatomic, strong) NSString * _Nullable owner; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ARN of the Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessGroupArn; /**

The ID of the Verified Access group.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessGroupId; /**

The ID of the Amazon Web Services Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; @end /**

Describes a Verified Access instance.

*/ @interface AWSEC2VerifiedAccessInstance : AWSModel /**

The creation time.

*/ @property (nonatomic, strong) NSString * _Nullable creationTime; /**

A description for the Amazon Web Services Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The last updated time.

*/ @property (nonatomic, strong) NSString * _Nullable lastUpdatedTime; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the Amazon Web Services Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; /**

The IDs of the Amazon Web Services Verified Access trust providers.

*/ @property (nonatomic, strong) NSArray * _Nullable verifiedAccessTrustProviders; @end /**

Describes logging options for an Amazon Web Services Verified Access instance.

*/ @interface AWSEC2VerifiedAccessInstanceLoggingConfiguration : AWSModel /**

Details about the logging options.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessLogs * _Nullable accessLogs; /**

The ID of the Amazon Web Services Verified Access instance.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessInstanceId; @end /**

Options for CloudWatch Logs as a logging destination.

*/ @interface AWSEC2VerifiedAccessLogCloudWatchLogsDestination : AWSModel /**

The delivery status for access logs.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessLogDeliveryStatus * _Nullable deliveryStatus; /**

Indicates whether logging is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; /**

The ID of the CloudWatch Logs log group.

*/ @property (nonatomic, strong) NSString * _Nullable logGroup; @end /**

Options for CloudWatch Logs as a logging destination.

Required parameters: [Enabled] */ @interface AWSEC2VerifiedAccessLogCloudWatchLogsDestinationOptions : AWSModel /**

Indicates whether logging is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; /**

The ID of the CloudWatch Logs log group.

*/ @property (nonatomic, strong) NSString * _Nullable logGroup; @end /**

Describes a log delivery status.

*/ @interface AWSEC2VerifiedAccessLogDeliveryStatus : AWSModel /**

The status code.

*/ @property (nonatomic, assign) AWSEC2VerifiedAccessLogDeliveryStatusCode code; /**

The status message.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Options for Kinesis as a logging destination.

*/ @interface AWSEC2VerifiedAccessLogKinesisDataFirehoseDestination : AWSModel /**

The delivery status.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessLogDeliveryStatus * _Nullable deliveryStatus; /**

The ID of the delivery stream.

*/ @property (nonatomic, strong) NSString * _Nullable deliveryStream; /**

Indicates whether logging is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Describes Amazon Kinesis Data Firehose logging options.

Required parameters: [Enabled] */ @interface AWSEC2VerifiedAccessLogKinesisDataFirehoseDestinationOptions : AWSModel /**

The ID of the delivery stream.

*/ @property (nonatomic, strong) NSString * _Nullable deliveryStream; /**

Indicates whether logging is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; @end /**

Options for Verified Access logs.

*/ @interface AWSEC2VerifiedAccessLogOptions : AWSModel /**

Sends Verified Access logs to CloudWatch Logs.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessLogCloudWatchLogsDestinationOptions * _Nullable cloudWatchLogs; /**

Include trust data sent by trust providers into the logs.

*/ @property (nonatomic, strong) NSNumber * _Nullable includeTrustContext; /**

Sends Verified Access logs to Kinesis.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessLogKinesisDataFirehoseDestinationOptions * _Nullable kinesisDataFirehose; /**

The logging version to use.

Valid values: ocsf-0.1 | ocsf-1.0.0-rc.2

*/ @property (nonatomic, strong) NSString * _Nullable logVersion; /**

Sends Verified Access logs to Amazon S3.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessLogS3DestinationOptions * _Nullable s3; @end /**

Options for Amazon S3 as a logging destination.

*/ @interface AWSEC2VerifiedAccessLogS3Destination : AWSModel /**

The bucket name.

*/ @property (nonatomic, strong) NSString * _Nullable bucketName; /**

The Amazon Web Services account number that owns the bucket.

*/ @property (nonatomic, strong) NSString * _Nullable bucketOwner; /**

The delivery status.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessLogDeliveryStatus * _Nullable deliveryStatus; /**

Indicates whether logging is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; /**

The bucket prefix.

*/ @property (nonatomic, strong) NSString * _Nullable prefix; @end /**

Options for Amazon S3 as a logging destination.

Required parameters: [Enabled] */ @interface AWSEC2VerifiedAccessLogS3DestinationOptions : AWSModel /**

The bucket name.

*/ @property (nonatomic, strong) NSString * _Nullable bucketName; /**

The ID of the Amazon Web Services account that owns the Amazon S3 bucket.

*/ @property (nonatomic, strong) NSString * _Nullable bucketOwner; /**

Indicates whether logging is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable enabled; /**

The bucket prefix.

*/ @property (nonatomic, strong) NSString * _Nullable prefix; @end /**

Describes the options for Verified Access logs.

*/ @interface AWSEC2VerifiedAccessLogs : AWSModel /**

CloudWatch Logs logging destination.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessLogCloudWatchLogsDestination * _Nullable cloudWatchLogs; /**

Describes current setting for including trust data into the logs.

*/ @property (nonatomic, strong) NSNumber * _Nullable includeTrustContext; /**

Kinesis logging destination.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessLogKinesisDataFirehoseDestination * _Nullable kinesisDataFirehose; /**

Describes current setting for the logging version.

*/ @property (nonatomic, strong) NSString * _Nullable logVersion; /**

Amazon S3 logging options.

*/ @property (nonatomic, strong) AWSEC2VerifiedAccessLogS3Destination * _Nullable s3; @end /**

Describes a Verified Access trust provider.

*/ @interface AWSEC2VerifiedAccessTrustProvider : AWSModel /**

The creation time.

*/ @property (nonatomic, strong) NSString * _Nullable creationTime; /**

A description for the Amazon Web Services Verified Access trust provider.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The options for device-identity trust provider.

*/ @property (nonatomic, strong) AWSEC2DeviceOptions * _Nullable deviceOptions; /**

The type of device-based trust provider.

*/ @property (nonatomic, assign) AWSEC2DeviceTrustProviderType deviceTrustProviderType; /**

The last updated time.

*/ @property (nonatomic, strong) NSString * _Nullable lastUpdatedTime; /**

The options for an OpenID Connect-compatible user-identity trust provider.

*/ @property (nonatomic, strong) AWSEC2OidcOptions * _Nullable oidcOptions; /**

The identifier to be used when working with policy rules.

*/ @property (nonatomic, strong) NSString * _Nullable policyReferenceName; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The type of Verified Access trust provider.

*/ @property (nonatomic, assign) AWSEC2TrustProviderType trustProviderType; /**

The type of user-based trust provider.

*/ @property (nonatomic, assign) AWSEC2UserTrustProviderType userTrustProviderType; /**

The ID of the Amazon Web Services Verified Access trust provider.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessTrustProviderId; @end /**

Condensed information about a trust provider.

*/ @interface AWSEC2VerifiedAccessTrustProviderCondensed : AWSModel /**

The description of trust provider.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The type of device-based trust provider.

*/ @property (nonatomic, assign) AWSEC2DeviceTrustProviderType deviceTrustProviderType; /**

The type of trust provider (user- or device-based).

*/ @property (nonatomic, assign) AWSEC2TrustProviderType trustProviderType; /**

The type of user-based trust provider.

*/ @property (nonatomic, assign) AWSEC2UserTrustProviderType userTrustProviderType; /**

The ID of the trust provider.

*/ @property (nonatomic, strong) NSString * _Nullable verifiedAccessTrustProviderId; @end /**

Describes telemetry for a VPN tunnel.

*/ @interface AWSEC2VgwTelemetry : AWSModel /**

The number of accepted routes.

*/ @property (nonatomic, strong) NSNumber * _Nullable acceptedRouteCount; /**

The Amazon Resource Name (ARN) of the VPN tunnel endpoint certificate.

*/ @property (nonatomic, strong) NSString * _Nullable certificateArn; /**

The date and time of the last change in status.

*/ @property (nonatomic, strong) NSDate * _Nullable lastStatusChange; /**

The Internet-routable IP address of the virtual private gateway's outside interface.

*/ @property (nonatomic, strong) NSString * _Nullable outsideIpAddress; /**

The status of the VPN tunnel.

*/ @property (nonatomic, assign) AWSEC2TelemetryStatus status; /**

If an error occurs, a description of the error.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; @end /**

Describes a volume.

*/ @interface AWSEC2Volume : AWSModel /**

Information about the volume attachments.

*/ @property (nonatomic, strong) NSArray * _Nullable attachments; /**

The Availability Zone for the volume.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The time stamp when volume creation was initiated.

*/ @property (nonatomic, strong) NSDate * _Nullable createTime; /**

Indicates whether the volume is encrypted.

*/ @property (nonatomic, strong) NSNumber * _Nullable encrypted; /**

Indicates whether the volume was created using fast snapshot restore.

*/ @property (nonatomic, strong) NSNumber * _Nullable fastRestored; /**

The number of I/O operations per second (IOPS). For gp3, io1, and io2 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting.

*/ @property (nonatomic, strong) NSNumber * _Nullable iops; /**

The Amazon Resource Name (ARN) of the Key Management Service (KMS) KMS key that was used to protect the volume encryption key for the volume.

*/ @property (nonatomic, strong) NSString * _Nullable kmsKeyId; /**

Indicates whether Amazon EBS Multi-Attach is enabled.

*/ @property (nonatomic, strong) NSNumber * _Nullable multiAttachEnabled; /**

The Amazon Resource Name (ARN) of the Outpost.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The size of the volume, in GiBs.

*/ @property (nonatomic, strong) NSNumber * _Nullable size; /**

The snapshot from which the volume was created, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable snapshotId; /**

The volume state.

*/ @property (nonatomic, assign) AWSEC2VolumeState state; /**

Any tags assigned to the volume.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The throughput that the volume supports, in MiB/s.

*/ @property (nonatomic, strong) NSNumber * _Nullable throughput; /**

The ID of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; /**

The volume type.

*/ @property (nonatomic, assign) AWSEC2VolumeType volumeType; @end /**

Describes volume attachment details.

*/ @interface AWSEC2VolumeAttachment : AWSModel /**

The time stamp when the attachment initiated.

*/ @property (nonatomic, strong) NSDate * _Nullable attachTime; /**

Indicates whether the EBS volume is deleted on instance termination.

*/ @property (nonatomic, strong) NSNumber * _Nullable deleteOnTermination; /**

The device name.

*/ @property (nonatomic, strong) NSString * _Nullable device; /**

The ID of the instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The attachment state of the volume.

*/ @property (nonatomic, assign) AWSEC2VolumeAttachmentState state; /**

The ID of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /**

Describes an EBS volume.

Required parameters: [Size] */ @interface AWSEC2VolumeDetail : AWSModel /**

The size of the volume, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable size; @end /**

Describes the modification status of an EBS volume.

If the volume has never been modified, some element values will be null.

*/ @interface AWSEC2VolumeModification : AWSModel /**

The modification completion or failure time.

*/ @property (nonatomic, strong) NSDate * _Nullable endTime; /**

The current modification state. The modification state is null for unmodified volumes.

*/ @property (nonatomic, assign) AWSEC2VolumeModificationState modificationState; /**

The original IOPS rate of the volume.

*/ @property (nonatomic, strong) NSNumber * _Nullable originalIops; /**

The original setting for Amazon EBS Multi-Attach.

*/ @property (nonatomic, strong) NSNumber * _Nullable originalMultiAttachEnabled; /**

The original size of the volume, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable originalSize; /**

The original throughput of the volume, in MiB/s.

*/ @property (nonatomic, strong) NSNumber * _Nullable originalThroughput; /**

The original EBS volume type of the volume.

*/ @property (nonatomic, assign) AWSEC2VolumeType originalVolumeType; /**

The modification progress, from 0 to 100 percent complete.

*/ @property (nonatomic, strong) NSNumber * _Nullable progress; /**

The modification start time.

*/ @property (nonatomic, strong) NSDate * _Nullable startTime; /**

A status message about the modification progress or failure.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; /**

The target IOPS rate of the volume.

*/ @property (nonatomic, strong) NSNumber * _Nullable targetIops; /**

The target setting for Amazon EBS Multi-Attach.

*/ @property (nonatomic, strong) NSNumber * _Nullable targetMultiAttachEnabled; /**

The target size of the volume, in GiB.

*/ @property (nonatomic, strong) NSNumber * _Nullable targetSize; /**

The target throughput of the volume, in MiB/s.

*/ @property (nonatomic, strong) NSNumber * _Nullable targetThroughput; /**

The target EBS volume type of the volume.

*/ @property (nonatomic, assign) AWSEC2VolumeType targetVolumeType; /**

The ID of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; @end /**

Describes a volume status operation code.

*/ @interface AWSEC2VolumeStatusAction : AWSModel /**

The code identifying the operation, for example, enable-volume-io.

*/ @property (nonatomic, strong) NSString * _Nullable code; /**

A description of the operation.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of the event associated with this operation.

*/ @property (nonatomic, strong) NSString * _Nullable eventId; /**

The event type associated with this operation.

*/ @property (nonatomic, strong) NSString * _Nullable eventType; @end /**

Information about the instances to which the volume is attached.

*/ @interface AWSEC2VolumeStatusAttachmentStatus : AWSModel /**

The ID of the attached instance.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The maximum IOPS supported by the attached instance.

*/ @property (nonatomic, strong) NSString * _Nullable ioPerformance; @end /**

Describes a volume status.

*/ @interface AWSEC2VolumeStatusDetails : AWSModel /**

The name of the volume status.

*/ @property (nonatomic, assign) AWSEC2VolumeStatusName name; /**

The intended status of the volume status.

*/ @property (nonatomic, strong) NSString * _Nullable status; @end /**

Describes a volume status event.

*/ @interface AWSEC2VolumeStatusEvent : AWSModel /**

A description of the event.

*/ @property (nonatomic, strong) NSString * _Nullable detail; /**

The ID of this event.

*/ @property (nonatomic, strong) NSString * _Nullable eventId; /**

The type of this event.

*/ @property (nonatomic, strong) NSString * _Nullable eventType; /**

The ID of the instance associated with the event.

*/ @property (nonatomic, strong) NSString * _Nullable instanceId; /**

The latest end time of the event.

*/ @property (nonatomic, strong) NSDate * _Nullable notAfter; /**

The earliest start time of the event.

*/ @property (nonatomic, strong) NSDate * _Nullable notBefore; @end /**

Describes the status of a volume.

*/ @interface AWSEC2VolumeStatusInfo : AWSModel /**

The details of the volume status.

*/ @property (nonatomic, strong) NSArray * _Nullable details; /**

The status of the volume.

*/ @property (nonatomic, assign) AWSEC2VolumeStatusInfoStatus status; @end /**

Describes the volume status.

*/ @interface AWSEC2VolumeStatusItem : AWSModel /**

The details of the operation.

*/ @property (nonatomic, strong) NSArray * _Nullable actions; /**

Information about the instances to which the volume is attached.

*/ @property (nonatomic, strong) NSArray * _Nullable attachmentStatuses; /**

The Availability Zone of the volume.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

A list of events associated with the volume.

*/ @property (nonatomic, strong) NSArray * _Nullable events; /**

The Amazon Resource Name (ARN) of the Outpost.

*/ @property (nonatomic, strong) NSString * _Nullable outpostArn; /**

The volume ID.

*/ @property (nonatomic, strong) NSString * _Nullable volumeId; /**

The volume status.

*/ @property (nonatomic, strong) AWSEC2VolumeStatusInfo * _Nullable volumeStatus; @end /**

Describes a VPC.

*/ @interface AWSEC2Vpc : AWSModel /**

The primary IPv4 CIDR block for the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable cidrBlock; /**

Information about the IPv4 CIDR blocks associated with the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable cidrBlockAssociationSet; /**

The ID of the set of DHCP options you've associated with the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable dhcpOptionsId; /**

The allowed tenancy of instances launched into the VPC.

*/ @property (nonatomic, assign) AWSEC2Tenancy instanceTenancy; /**

Information about the IPv6 CIDR blocks associated with the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6CidrBlockAssociationSet; /**

Indicates whether the VPC is the default VPC.

*/ @property (nonatomic, strong) NSNumber * _Nullable isDefault; /**

The ID of the Amazon Web Services account that owns the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The current state of the VPC.

*/ @property (nonatomic, assign) AWSEC2VpcState state; /**

Any tags assigned to the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes an attachment between a virtual private gateway and a VPC.

*/ @interface AWSEC2VpcAttachment : AWSModel /**

The current state of the attachment.

*/ @property (nonatomic, assign) AWSEC2AttachmentStatus state; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes an IPv4 CIDR block associated with a VPC.

*/ @interface AWSEC2VpcCidrBlockAssociation : AWSModel /**

The association ID for the IPv4 CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The IPv4 CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable cidrBlock; /**

Information about the state of the CIDR block.

*/ @property (nonatomic, strong) AWSEC2VpcCidrBlockState * _Nullable cidrBlockState; @end /**

Describes the state of a CIDR block.

*/ @interface AWSEC2VpcCidrBlockState : AWSModel /**

The state of the CIDR block.

*/ @property (nonatomic, assign) AWSEC2VpcCidrBlockStateCode state; /**

A message about the status of the CIDR block, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable statusMessage; @end /**

Deprecated.

Describes whether a VPC is enabled for ClassicLink.

*/ @interface AWSEC2VpcClassicLink : AWSModel /**

Indicates whether the VPC is enabled for ClassicLink.

*/ @property (nonatomic, strong) NSNumber * _Nullable classicLinkEnabled; /**

Any tags assigned to the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes a VPC endpoint.

*/ @interface AWSEC2VpcEndpoint : AWSModel /**

The date and time that the endpoint was created.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTimestamp; /**

(Interface endpoint) The DNS entries for the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable dnsEntries; /**

The DNS options for the endpoint.

*/ @property (nonatomic, strong) AWSEC2DnsOptions * _Nullable dnsOptions; /**

(Interface endpoint) Information about the security groups that are associated with the network interface.

*/ @property (nonatomic, strong) NSArray * _Nullable groups; /**

The IP address type for the endpoint.

*/ @property (nonatomic, assign) AWSEC2IpAddressType ipAddressType; /**

The last error that occurred for endpoint.

*/ @property (nonatomic, strong) AWSEC2LastError * _Nullable lastError; /**

(Interface endpoint) The network interfaces for the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable networkInterfaceIds; /**

The ID of the Amazon Web Services account that owns the endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

The policy document associated with the endpoint, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable policyDocument; /**

(Interface endpoint) Indicates whether the VPC is associated with a private hosted zone.

*/ @property (nonatomic, strong) NSNumber * _Nullable privateDnsEnabled; /**

Indicates whether the endpoint is being managed by its service.

*/ @property (nonatomic, strong) NSNumber * _Nullable requesterManaged; /**

(Gateway endpoint) The IDs of the route tables associated with the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable routeTableIds; /**

The name of the service to which the endpoint is associated.

*/ @property (nonatomic, strong) NSString * _Nullable serviceName; /**

The state of the endpoint.

*/ @property (nonatomic, assign) AWSEC2State state; /**

(Interface endpoint) The subnets for the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable subnetIds; /**

The tags assigned to the endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable vpcEndpointId; /**

The type of endpoint.

*/ @property (nonatomic, assign) AWSEC2VpcEndpointType vpcEndpointType; /**

The ID of the VPC to which the endpoint is associated.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes a VPC endpoint connection to a service.

*/ @interface AWSEC2VpcEndpointConnection : AWSModel /**

The date and time that the VPC endpoint was created.

*/ @property (nonatomic, strong) NSDate * _Nullable creationTimestamp; /**

The DNS entries for the VPC endpoint.

*/ @property (nonatomic, strong) NSArray * _Nullable dnsEntries; /**

The Amazon Resource Names (ARNs) of the Gateway Load Balancers for the service.

*/ @property (nonatomic, strong) NSArray * _Nullable gatewayLoadBalancerArns; /**

The IP address type for the endpoint.

*/ @property (nonatomic, assign) AWSEC2IpAddressType ipAddressType; /**

The Amazon Resource Names (ARNs) of the network load balancers for the service.

*/ @property (nonatomic, strong) NSArray * _Nullable networkLoadBalancerArns; /**

The ID of the service to which the endpoint is connected.

*/ @property (nonatomic, strong) NSString * _Nullable serviceId; /**

The tags.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC endpoint connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpcEndpointConnectionId; /**

The ID of the VPC endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable vpcEndpointId; /**

The ID of the Amazon Web Services account that owns the VPC endpoint.

*/ @property (nonatomic, strong) NSString * _Nullable vpcEndpointOwner; /**

The state of the VPC endpoint.

*/ @property (nonatomic, assign) AWSEC2State vpcEndpointState; @end /**

Describes an IPv6 CIDR block associated with a VPC.

*/ @interface AWSEC2VpcIpv6CidrBlockAssociation : AWSModel /**

The association ID for the IPv6 CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable associationId; /**

The IPv6 CIDR block.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6CidrBlock; /**

Information about the state of the CIDR block.

*/ @property (nonatomic, strong) AWSEC2VpcCidrBlockState * _Nullable ipv6CidrBlockState; /**

The ID of the IPv6 address pool from which the IPv6 CIDR block is allocated.

*/ @property (nonatomic, strong) NSString * _Nullable ipv6Pool; /**

The name of the unique set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises IP addresses, for example, us-east-1-wl1-bos-wlz-1.

*/ @property (nonatomic, strong) NSString * _Nullable networkBorderGroup; @end /**

Describes a VPC peering connection.

*/ @interface AWSEC2VpcPeeringConnection : AWSModel /**

Information about the accepter VPC. CIDR block information is only returned when describing an active VPC peering connection.

*/ @property (nonatomic, strong) AWSEC2VpcPeeringConnectionVpcInfo * _Nullable accepterVpcInfo; /**

The time that an unaccepted VPC peering connection will expire.

*/ @property (nonatomic, strong) NSDate * _Nullable expirationTime; /**

Information about the requester VPC. CIDR block information is only returned when describing an active VPC peering connection.

*/ @property (nonatomic, strong) AWSEC2VpcPeeringConnectionVpcInfo * _Nullable requesterVpcInfo; /**

The status of the VPC peering connection.

*/ @property (nonatomic, strong) AWSEC2VpcPeeringConnectionStateReason * _Nullable status; /**

Any tags assigned to the resource.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the VPC peering connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpcPeeringConnectionId; @end /**

Describes the VPC peering connection options.

*/ @interface AWSEC2VpcPeeringConnectionOptionsDescription : AWSModel /**

Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.

*/ @property (nonatomic, strong) NSNumber * _Nullable allowDnsResolutionFromRemoteVpc; /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable allowEgressFromLocalClassicLinkToRemoteVpc; /**

Deprecated.

*/ @property (nonatomic, strong) NSNumber * _Nullable allowEgressFromLocalVpcToRemoteClassicLink; @end /**

Describes the status of a VPC peering connection.

*/ @interface AWSEC2VpcPeeringConnectionStateReason : AWSModel /**

The status of the VPC peering connection.

*/ @property (nonatomic, assign) AWSEC2VpcPeeringConnectionStateReasonCode code; /**

A message that provides more information about the status, if applicable.

*/ @property (nonatomic, strong) NSString * _Nullable message; @end /**

Describes a VPC in a VPC peering connection.

*/ @interface AWSEC2VpcPeeringConnectionVpcInfo : AWSModel /**

The IPv4 CIDR block for the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable cidrBlock; /**

Information about the IPv4 CIDR blocks for the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable cidrBlockSet; /**

The IPv6 CIDR block for the VPC.

*/ @property (nonatomic, strong) NSArray * _Nullable ipv6CidrBlockSet; /**

The ID of the Amazon Web Services account that owns the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable ownerId; /**

Information about the VPC peering connection options for the accepter or requester VPC.

*/ @property (nonatomic, strong) AWSEC2VpcPeeringConnectionOptionsDescription * _Nullable peeringOptions; /**

The Region in which the VPC is located.

*/ @property (nonatomic, strong) NSString * _Nullable region; /**

The ID of the VPC.

*/ @property (nonatomic, strong) NSString * _Nullable vpcId; @end /**

Describes a VPN connection.

*/ @interface AWSEC2VpnConnection : AWSModel /**

The category of the VPN connection. A value of VPN indicates an Amazon Web Services VPN connection. A value of VPN-Classic indicates an Amazon Web Services Classic VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable category; /**

The ARN of the core network.

*/ @property (nonatomic, strong) NSString * _Nullable coreNetworkArn; /**

The ARN of the core network attachment.

*/ @property (nonatomic, strong) NSString * _Nullable coreNetworkAttachmentArn; /**

The configuration information for the VPN connection's customer gateway (in the native XML format). This element is always present in the CreateVpnConnection response; however, it's present in the DescribeVpnConnections response only if the VPN connection is in the pending or available state.

*/ @property (nonatomic, strong) NSString * _Nullable customerGatewayConfiguration; /**

The ID of the customer gateway at your end of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable customerGatewayId; /**

The current state of the gateway association.

*/ @property (nonatomic, assign) AWSEC2GatewayAssociationState gatewayAssociationState; /**

The VPN connection options.

*/ @property (nonatomic, strong) AWSEC2VpnConnectionOptions * _Nullable options; /**

The static routes associated with the VPN connection.

*/ @property (nonatomic, strong) NSArray * _Nullable routes; /**

The current state of the VPN connection.

*/ @property (nonatomic, assign) AWSEC2VpnState state; /**

Any tags assigned to the VPN connection.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The ID of the transit gateway associated with the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable transitGatewayId; /**

The type of VPN connection.

*/ @property (nonatomic, assign) AWSEC2GatewayType types; /**

Information about the VPN tunnel.

*/ @property (nonatomic, strong) NSArray * _Nullable vgwTelemetry; /**

The ID of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionId; /**

The ID of the virtual private gateway at the Amazon Web Services side of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable vpnGatewayId; @end /**

List of customer gateway devices that have a sample configuration file available for use. You can also see the list of device types with sample configuration files available under Your customer gateway device in the Amazon Web Services Site-to-Site VPN User Guide.

*/ @interface AWSEC2VpnConnectionDeviceType : AWSModel /**

Customer gateway device platform.

*/ @property (nonatomic, strong) NSString * _Nullable platform; /**

Customer gateway device software version.

*/ @property (nonatomic, strong) NSString * _Nullable software; /**

Customer gateway device vendor.

*/ @property (nonatomic, strong) NSString * _Nullable vendor; /**

Customer gateway device identifier.

*/ @property (nonatomic, strong) NSString * _Nullable vpnConnectionDeviceTypeId; @end /**

Describes VPN connection options.

*/ @interface AWSEC2VpnConnectionOptions : AWSModel /**

Indicates whether acceleration is enabled for the VPN connection.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableAcceleration; /**

The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable localIpv4NetworkCidr; /**

The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable localIpv6NetworkCidr; /**

The type of IPv4 address assigned to the outside interface of the customer gateway.

Valid values: PrivateIpv4 | PublicIpv4

Default: PublicIpv4

*/ @property (nonatomic, strong) NSString * _Nullable outsideIpAddressType; /**

The IPv4 CIDR on the Amazon Web Services side of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable remoteIpv4NetworkCidr; /**

The IPv6 CIDR on the Amazon Web Services side of the VPN connection.

*/ @property (nonatomic, strong) NSString * _Nullable remoteIpv6NetworkCidr; /**

Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.

*/ @property (nonatomic, strong) NSNumber * _Nullable staticRoutesOnly; /**

The transit gateway attachment ID in use for the VPN tunnel.

*/ @property (nonatomic, strong) NSString * _Nullable transportTransitGatewayAttachmentId; /**

Indicates whether the VPN tunnels process IPv4 or IPv6 traffic.

*/ @property (nonatomic, assign) AWSEC2TunnelInsideIpVersion tunnelInsideIpVersion; /**

Indicates the VPN tunnel options.

*/ @property (nonatomic, strong) NSArray * _Nullable tunnelOptions; @end /**

Describes VPN connection options.

*/ @interface AWSEC2VpnConnectionOptionsSpecification : AWSModel /**

Indicate whether to enable acceleration for the VPN connection.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable enableAcceleration; /**

The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.

Default: 0.0.0.0/0

*/ @property (nonatomic, strong) NSString * _Nullable localIpv4NetworkCidr; /**

The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.

Default: ::/0

*/ @property (nonatomic, strong) NSString * _Nullable localIpv6NetworkCidr; /**

The type of IPv4 address assigned to the outside interface of the customer gateway device.

Valid values: PrivateIpv4 | PublicIpv4

Default: PublicIpv4

*/ @property (nonatomic, strong) NSString * _Nullable outsideIpAddressType; /**

The IPv4 CIDR on the Amazon Web Services side of the VPN connection.

Default: 0.0.0.0/0

*/ @property (nonatomic, strong) NSString * _Nullable remoteIpv4NetworkCidr; /**

The IPv6 CIDR on the Amazon Web Services side of the VPN connection.

Default: ::/0

*/ @property (nonatomic, strong) NSString * _Nullable remoteIpv6NetworkCidr; /**

Indicate whether the VPN connection uses static routes only. If you are creating a VPN connection for a device that does not support BGP, you must specify true. Use CreateVpnConnectionRoute to create a static route.

Default: false

*/ @property (nonatomic, strong) NSNumber * _Nullable staticRoutesOnly; /**

The transit gateway attachment ID to use for the VPN tunnel.

Required if OutsideIpAddressType is set to PrivateIpv4.

*/ @property (nonatomic, strong) NSString * _Nullable transportTransitGatewayAttachmentId; /**

Indicate whether the VPN tunnels process IPv4 or IPv6 traffic.

Default: ipv4

*/ @property (nonatomic, assign) AWSEC2TunnelInsideIpVersion tunnelInsideIpVersion; /**

The tunnel options for the VPN connection.

*/ @property (nonatomic, strong) NSArray * _Nullable tunnelOptions; @end /**

Describes a virtual private gateway.

*/ @interface AWSEC2VpnGateway : AWSModel /**

The private Autonomous System Number (ASN) for the Amazon side of a BGP session.

*/ @property (nonatomic, strong) NSNumber * _Nullable amazonSideAsn; /**

The Availability Zone where the virtual private gateway was created, if applicable. This field may be empty or not returned.

*/ @property (nonatomic, strong) NSString * _Nullable availabilityZone; /**

The current state of the virtual private gateway.

*/ @property (nonatomic, assign) AWSEC2VpnState state; /**

Any tags assigned to the virtual private gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable tags; /**

The type of VPN connection the virtual private gateway supports.

*/ @property (nonatomic, assign) AWSEC2GatewayType types; /**

Any VPCs attached to the virtual private gateway.

*/ @property (nonatomic, strong) NSArray * _Nullable vpcAttachments; /**

The ID of the virtual private gateway.

*/ @property (nonatomic, strong) NSString * _Nullable vpnGatewayId; @end /**

Describes a static route for a VPN connection.

*/ @interface AWSEC2VpnStaticRoute : AWSModel /**

The CIDR block associated with the local subnet of the customer data center.

*/ @property (nonatomic, strong) NSString * _Nullable destinationCidrBlock; /**

Indicates how the routes were provided.

*/ @property (nonatomic, assign) AWSEC2VpnStaticRouteSource source; /**

The current state of the static route.

*/ @property (nonatomic, assign) AWSEC2VpnState state; @end /**

Options for logging VPN tunnel activity.

*/ @interface AWSEC2VpnTunnelLogOptions : AWSModel /**

Options for sending VPN tunnel logs to CloudWatch.

*/ @property (nonatomic, strong) AWSEC2CloudWatchLogOptions * _Nullable cloudWatchLogOptions; @end /**

Options for logging VPN tunnel activity.

*/ @interface AWSEC2VpnTunnelLogOptionsSpecification : AWSModel /**

Options for sending VPN tunnel logs to CloudWatch.

*/ @property (nonatomic, strong) AWSEC2CloudWatchLogOptionsSpecification * _Nullable cloudWatchLogOptions; @end /**

The tunnel options for a single VPN tunnel.

*/ @interface AWSEC2VpnTunnelOptionsSpecification : AWSModel /**

The action to take after DPD timeout occurs. Specify restart to restart the IKE initiation. Specify clear to end the IKE session.

Valid Values: clear | none | restart

Default: clear

*/ @property (nonatomic, strong) NSString * _Nullable DPDTimeoutAction; /**

The number of seconds after which a DPD timeout occurs.

Constraints: A value greater than or equal to 30.

Default: 30

*/ @property (nonatomic, strong) NSNumber * _Nullable DPDTimeoutSeconds; /**

Turn on or off tunnel endpoint lifecycle control feature.

*/ @property (nonatomic, strong) NSNumber * _Nullable enableTunnelLifecycleControl; /**

The IKE versions that are permitted for the VPN tunnel.

Valid values: ikev1 | ikev2

*/ @property (nonatomic, strong) NSArray * _Nullable IKEVersions; /**

Options for logging VPN tunnel activity.

*/ @property (nonatomic, strong) AWSEC2VpnTunnelLogOptionsSpecification * _Nullable logOptions; /**

One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 1 IKE negotiations.

Valid values: 2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24

*/ @property (nonatomic, strong) NSArray * _Nullable phase1DHGroupNumbers; /**

One or more encryption algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations.

Valid values: AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16

*/ @property (nonatomic, strong) NSArray * _Nullable phase1EncryptionAlgorithms; /**

One or more integrity algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations.

Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512

*/ @property (nonatomic, strong) NSArray * _Nullable phase1IntegrityAlgorithms; /**

The lifetime for phase 1 of the IKE negotiation, in seconds.

Constraints: A value between 900 and 28,800.

Default: 28800

*/ @property (nonatomic, strong) NSNumber * _Nullable phase1LifetimeSeconds; /**

One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 2 IKE negotiations.

Valid values: 2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24

*/ @property (nonatomic, strong) NSArray * _Nullable phase2DHGroupNumbers; /**

One or more encryption algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations.

Valid values: AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16

*/ @property (nonatomic, strong) NSArray * _Nullable phase2EncryptionAlgorithms; /**

One or more integrity algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations.

Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512

*/ @property (nonatomic, strong) NSArray * _Nullable phase2IntegrityAlgorithms; /**

The lifetime for phase 2 of the IKE negotiation, in seconds.

Constraints: A value between 900 and 3,600. The value must be less than the value for Phase1LifetimeSeconds.

Default: 3600

*/ @property (nonatomic, strong) NSNumber * _Nullable phase2LifetimeSeconds; /**

The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and customer gateway.

Constraints: Allowed characters are alphanumeric characters, periods (.), and underscores (_). Must be between 8 and 64 characters in length and cannot start with zero (0).

*/ @property (nonatomic, strong) NSString * _Nullable preSharedKey; /**

The percentage of the rekey window (determined by RekeyMarginTimeSeconds) during which the rekey time is randomly selected.

Constraints: A value between 0 and 100.

Default: 100

*/ @property (nonatomic, strong) NSNumber * _Nullable rekeyFuzzPercentage; /**

The margin time, in seconds, before the phase 2 lifetime expires, during which the Amazon Web Services side of the VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for RekeyFuzzPercentage.

Constraints: A value between 60 and half of Phase2LifetimeSeconds.

Default: 540

*/ @property (nonatomic, strong) NSNumber * _Nullable rekeyMarginTimeSeconds; /**

The number of packets in an IKE replay window.

Constraints: A value between 64 and 2048.

Default: 1024

*/ @property (nonatomic, strong) NSNumber * _Nullable replayWindowSize; /**

The action to take when the establishing the tunnel for the VPN connection. By default, your customer gateway device must initiate the IKE negotiation and bring up the tunnel. Specify start for Amazon Web Services to initiate the IKE negotiation.

Valid Values: add | start

Default: add

*/ @property (nonatomic, strong) NSString * _Nullable startupAction; /**

The range of inside IPv4 addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same virtual private gateway.

Constraints: A size /30 CIDR block from the 169.254.0.0/16 range. The following CIDR blocks are reserved and cannot be used:

  • 169.254.0.0/30

  • 169.254.1.0/30

  • 169.254.2.0/30

  • 169.254.3.0/30

  • 169.254.4.0/30

  • 169.254.5.0/30

  • 169.254.169.252/30

*/ @property (nonatomic, strong) NSString * _Nullable tunnelInsideCidr; /**

The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same transit gateway.

Constraints: A size /126 CIDR block from the local fd00::/8 range.

*/ @property (nonatomic, strong) NSString * _Nullable tunnelInsideIpv6Cidr; @end /** */ @interface AWSEC2WithdrawByoipCidrRequest : AWSRequest /**

The address range, in CIDR notation.

*/ @property (nonatomic, strong) NSString * _Nullable cidr; /**

Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.

*/ @property (nonatomic, strong) NSNumber * _Nullable dryRun; @end /** */ @interface AWSEC2WithdrawByoipCidrResult : AWSModel /**

Information about the address pool.

*/ @property (nonatomic, strong) AWSEC2ByoipCidr * _Nullable byoipCidr; @end NS_ASSUME_NONNULL_END