import {
  AddedPrincipal,
  AddIpamOperatingRegion,
  AddIpamOrganizationalUnitExclusion,
  AddPrefixListEntry,
  AddressAttribute,
  Affinity,
  ApplianceModeSupportValue,
  AutoPlacement,
  ByoipCidr,
  CurrencyCodeValues,
  DnsSupportValue,
  EnaSrdSpecification,
  HostMaintenance,
  HostRecovery,
  IamInstanceProfileAssociation,
  IamInstanceProfileSpecification,
  InstanceEventWindow,
  Ipv6SupportValue,
  PortRange,
  RouteTableAssociationState,
  SecurityGroupReferencingSupportValue,
  Tag,
  TagSpecification,
  TransitGatewayMulticastDomainAssociations,
  TransitGatewayPeeringAttachment,
  TransitGatewayVpcAttachment,
  UnsuccessfulItem,
  VerifiedAccessInstance,
  VerifiedAccessSseSpecificationResponse,
  VerifiedAccessTrustProvider,
} from "./models_0";
import {
  _InstanceType,
  AttributeValue,
  BlockDeviceMapping,
  CapacityReservation,
  CapacityReservationInstancePlatform,
  CapacityReservationPreference,
  CapacityReservationTarget,
  ClientConnectOptions,
  ClientLoginBannerOptions,
  ClientRouteEnforcementOptions,
  ConnectionLogOptions,
  ConnectionTrackingSpecificationRequest,
  DiskImageFormat,
  EndDateType,
  FleetExcessCapacityTerminationPolicy,
  FleetLaunchTemplateConfigRequest,
  HostnameType,
  InstanceBandwidthWeighting,
  InstanceEventWindowTimeRangeRequest,
  InstanceMatchCriteria,
  Ipam,
  IpamMeteredAccount,
  IpamPool,
  IpamResourceDiscovery,
  IpamScope,
  IpamTier,
  LaunchTemplate,
  Placement,
  PlatformValues,
  RequestIpamResourceTag,
  SelfServicePortal,
  ShutdownBehavior,
  TargetCapacitySpecificationRequest,
  VolumeType,
} from "./models_1";
import {
  AutoAcceptSharedAttachmentsValue,
  DefaultRouteTableAssociationValue,
  DefaultRouteTablePropagationValue,
  DnsOptionsSpecification,
  IcmpTypeCode,
  InternetGatewayExclusionMode,
  IpAddressType,
  LocalGatewayRoute,
  ManagedPrefixList,
  PayerResponsibility,
  RouteServer,
  RouteServerPersistRoutesAction,
  RuleAction,
  SubnetConfiguration,
  TrafficDirection,
  TrafficMirrorFilter,
  TrafficMirrorFilterRule,
  TrafficMirrorNetworkService,
  TrafficMirrorPortRangeRequest,
  TrafficMirrorRuleAction,
  TrafficMirrorSession,
  TransitGateway,
  TransitGatewayPrefixListReference,
  TransitGatewayRoute,
  VerifiedAccessEndpoint,
  VerifiedAccessEndpointProtocol,
  VerifiedAccessGroup,
  VerifiedAccessSseSpecificationRequest,
  VpcBlockPublicAccessExclusion,
  VpnEcmpSupportValue,
} from "./models_2";
import {
  Byoasn,
  CapacityBlockExtension,
  IKEVersionsRequestListValue,
  InstanceTagNotificationAttribute,
  IpamPoolCidr,
  Phase1DHGroupNumbersRequestListValue,
  Phase1EncryptionAlgorithmsRequestListValue,
  Phase1IntegrityAlgorithmsRequestListValue,
  Phase2DHGroupNumbersRequestListValue,
  Phase2EncryptionAlgorithmsRequestListValue,
  Phase2IntegrityAlgorithmsRequestListValue,
  VpnConnection,
  VpnTunnelLogOptionsSpecification,
} from "./models_3";
import {
  ArchitectureValues,
  AttributeBooleanValue,
  BootModeValues,
  ConversionTask,
  FpgaImageAttribute,
  FpgaImageAttributeName,
  HttpTokensState,
  ImdsSupportValues,
  ImportImageLicenseConfigurationResponse,
  InstanceAttributeName,
  InstanceAutoRecoveryState,
  InstanceMetadataEndpointState,
  InstanceMetadataOptionsResponse,
  InstanceMetadataProtocolState,
  InstanceMetadataTagsState,
  InstanceStatusEvent,
  LaunchPermission,
  Monitoring,
  PermissionGroup,
  SnapshotDetail,
  SnapshotTaskDetail,
  TpmSupportValues,
} from "./models_4";
import {
  CreateVolumePermission,
  ExcessCapacityTerminationPolicy,
  InternetGatewayBlockMode,
  LaunchTemplateConfig,
  LockState,
  PublicIpv4PoolRange,
  ReservedInstancesConfiguration,
  ScheduledInstance,
  SnapshotAttributeName,
  VerifiedAccessInstanceLoggingConfiguration,
  VolumeModification,
  VpcBlockPublicAccessOptions,
} from "./models_5";
import {
  InstanceFamilyCreditSpecification,
  IpamResourceCidr,
  Purchase,
  UnlimitedSupportedInstanceFamily,
} from "./models_6";
export interface GetVerifiedAccessGroupPolicyRequest {
  VerifiedAccessGroupId: string | undefined;
  DryRun?: boolean | undefined;
}
export interface GetVerifiedAccessGroupPolicyResult {
  PolicyEnabled?: boolean | undefined;
  PolicyDocument?: string | undefined;
}
export interface GetVpnConnectionDeviceSampleConfigurationRequest {
  VpnConnectionId: string | undefined;
  VpnConnectionDeviceTypeId: string | undefined;
  InternetKeyExchangeVersion?: string | undefined;
  DryRun?: boolean | undefined;
}
export interface GetVpnConnectionDeviceSampleConfigurationResult {
  VpnConnectionDeviceSampleConfiguration?: string | undefined;
}
export interface GetVpnConnectionDeviceTypesRequest {
  MaxResults?: number | undefined;
  NextToken?: string | undefined;
  DryRun?: boolean | undefined;
}
export interface VpnConnectionDeviceType {
  VpnConnectionDeviceTypeId?: string | undefined;
  Vendor?: string | undefined;
  Platform?: string | undefined;
  Software?: string | undefined;
}
export interface GetVpnConnectionDeviceTypesResult {
  VpnConnectionDeviceTypes?: VpnConnectionDeviceType[] | undefined;
  NextToken?: string | undefined;
}
export interface GetVpnTunnelReplacementStatusRequest {
  VpnConnectionId: string | undefined;
  VpnTunnelOutsideIpAddress: string | undefined;
  DryRun?: boolean | undefined;
}
export interface MaintenanceDetails {
  PendingMaintenance?: string | undefined;
  MaintenanceAutoAppliedAfter?: Date | undefined;
  LastMaintenanceApplied?: Date | undefined;
}
export interface GetVpnTunnelReplacementStatusResult {
  VpnConnectionId?: string | undefined;
  TransitGatewayId?: string | undefined;
  CustomerGatewayId?: string | undefined;
  VpnGatewayId?: string | undefined;
  VpnTunnelOutsideIpAddress?: string | undefined;
  MaintenanceDetails?: MaintenanceDetails | undefined;
}
export interface ImportClientVpnClientCertificateRevocationListRequest {
  ClientVpnEndpointId: string | undefined;
  CertificateRevocationList: string | undefined;
  DryRun?: boolean | undefined;
}
export interface ImportClientVpnClientCertificateRevocationListResult {
  Return?: boolean | undefined;
}
export interface ClientData {
  Comment?: string | undefined;
  UploadEnd?: Date | undefined;
  UploadSize?: number | undefined;
  UploadStart?: Date | undefined;
}
export interface UserBucket {
  S3Bucket?: string | undefined;
  S3Key?: string | undefined;
}
export interface ImageDiskContainer {
  Description?: string | undefined;
  DeviceName?: string | undefined;
  Format?: string | undefined;
  SnapshotId?: string | undefined;
  Url?: string | undefined;
  UserBucket?: UserBucket | undefined;
}
export interface ImportImageLicenseConfigurationRequest {
  LicenseConfigurationArn?: string | undefined;
}
export interface ImportImageRequest {
  Architecture?: string | undefined;
  ClientData?: ClientData | undefined;
  ClientToken?: string | undefined;
  Description?: string | undefined;
  DiskContainers?: ImageDiskContainer[] | undefined;
  DryRun?: boolean | undefined;
  Encrypted?: boolean | undefined;
  Hypervisor?: string | undefined;
  KmsKeyId?: string | undefined;
  LicenseType?: string | undefined;
  Platform?: string | undefined;
  RoleName?: string | undefined;
  LicenseSpecifications?: ImportImageLicenseConfigurationRequest[] | undefined;
  TagSpecifications?: TagSpecification[] | undefined;
  UsageOperation?: string | undefined;
  BootMode?: BootModeValues | undefined;
}
export interface ImportImageResult {
  Architecture?: string | undefined;
  Description?: string | undefined;
  Encrypted?: boolean | undefined;
  Hypervisor?: string | undefined;
  ImageId?: string | undefined;
  ImportTaskId?: string | undefined;
  KmsKeyId?: string | undefined;
  LicenseType?: string | undefined;
  Platform?: string | undefined;
  Progress?: string | undefined;
  SnapshotDetails?: SnapshotDetail[] | undefined;
  Status?: string | undefined;
  StatusMessage?: string | undefined;
  LicenseSpecifications?: ImportImageLicenseConfigurationResponse[] | undefined;
  Tags?: Tag[] | undefined;
  UsageOperation?: string | undefined;
}
export interface DiskImageDetail {
  Format: DiskImageFormat | undefined;
  Bytes: number | undefined;
  ImportManifestUrl: string | undefined;
}
export interface VolumeDetail {
  Size: number | undefined;
}
export interface DiskImage {
  Description?: string | undefined;
  Image?: DiskImageDetail | undefined;
  Volume?: VolumeDetail | undefined;
}
export interface UserData {
  Data?: string | undefined;
}
export interface ImportInstanceLaunchSpecification {
  Architecture?: ArchitectureValues | undefined;
  GroupNames?: string[] | undefined;
  GroupIds?: string[] | undefined;
  AdditionalInfo?: string | undefined;
  UserData?: UserData | undefined;
  InstanceType?: _InstanceType | undefined;
  Placement?: Placement | undefined;
  Monitoring?: boolean | undefined;
  SubnetId?: string | undefined;
  InstanceInitiatedShutdownBehavior?: ShutdownBehavior | undefined;
  PrivateIpAddress?: string | undefined;
}
export interface ImportInstanceRequest {
  DryRun?: boolean | undefined;
  Description?: string | undefined;
  LaunchSpecification?: ImportInstanceLaunchSpecification | undefined;
  DiskImages?: DiskImage[] | undefined;
  Platform: PlatformValues | undefined;
}
export interface ImportInstanceResult {
  ConversionTask?: ConversionTask | undefined;
}
export interface ImportKeyPairRequest {
  TagSpecifications?: TagSpecification[] | undefined;
  DryRun?: boolean | undefined;
  KeyName: string | undefined;
  PublicKeyMaterial: Uint8Array | undefined;
}
export interface ImportKeyPairResult {
  KeyFingerprint?: string | undefined;
  KeyName?: string | undefined;
  KeyPairId?: string | undefined;
  Tags?: Tag[] | undefined;
}
export interface SnapshotDiskContainer {
  Description?: string | undefined;
  Format?: string | undefined;
  Url?: string | undefined;
  UserBucket?: UserBucket | undefined;
}
export interface ImportSnapshotRequest {
  ClientData?: ClientData | undefined;
  ClientToken?: string | undefined;
  Description?: string | undefined;
  DiskContainer?: SnapshotDiskContainer | undefined;
  DryRun?: boolean | undefined;
  Encrypted?: boolean | undefined;
  KmsKeyId?: string | undefined;
  RoleName?: string | undefined;
  TagSpecifications?: TagSpecification[] | undefined;
}
export interface ImportSnapshotResult {
  Description?: string | undefined;
  ImportTaskId?: string | undefined;
  SnapshotTaskDetail?: SnapshotTaskDetail | undefined;
  Tags?: Tag[] | undefined;
}
export interface ImportVolumeRequest {
  DryRun?: boolean | undefined;
  AvailabilityZone: string | undefined;
  Image: DiskImageDetail | undefined;
  Description?: string | undefined;
  Volume: VolumeDetail | undefined;
}
export interface ImportVolumeResult {
  ConversionTask?: ConversionTask | undefined;
}
export interface ListImagesInRecycleBinRequest {
  ImageIds?: string[] | undefined;
  NextToken?: string | undefined;
  MaxResults?: number | undefined;
  DryRun?: boolean | undefined;
}
export interface ImageRecycleBinInfo {
  ImageId?: string | undefined;
  Name?: string | undefined;
  Description?: string | undefined;
  RecycleBinEnterTime?: Date | undefined;
  RecycleBinExitTime?: Date | undefined;
}
export interface ListImagesInRecycleBinResult {
  Images?: ImageRecycleBinInfo[] | undefined;
  NextToken?: string | undefined;
}
export interface ListSnapshotsInRecycleBinRequest {
  MaxResults?: number | undefined;
  NextToken?: string | undefined;
  SnapshotIds?: string[] | undefined;
  DryRun?: boolean | undefined;
}
export interface SnapshotRecycleBinInfo {
  SnapshotId?: string | undefined;
  RecycleBinEnterTime?: Date | undefined;
  RecycleBinExitTime?: Date | undefined;
  Description?: string | undefined;
  VolumeId?: string | undefined;
}
export interface ListSnapshotsInRecycleBinResult {
  Snapshots?: SnapshotRecycleBinInfo[] | undefined;
  NextToken?: string | undefined;
}
export declare const LockMode: {
  readonly compliance: "compliance";
  readonly governance: "governance";
};
export type LockMode = (typeof LockMode)[keyof typeof LockMode];
export interface LockSnapshotRequest {
  SnapshotId: string | undefined;
  DryRun?: boolean | undefined;
  LockMode: LockMode | undefined;
  CoolOffPeriod?: number | undefined;
  LockDuration?: number | undefined;
  ExpirationDate?: Date | undefined;
}
export interface LockSnapshotResult {
  SnapshotId?: string | undefined;
  LockState?: LockState | undefined;
  LockDuration?: number | undefined;
  CoolOffPeriod?: number | undefined;
  CoolOffPeriodExpiresOn?: Date | undefined;
  LockCreatedOn?: Date | undefined;
  LockExpiresOn?: Date | undefined;
  LockDurationStartTime?: Date | undefined;
}
export interface ModifyAddressAttributeRequest {
  AllocationId: string | undefined;
  DomainName?: string | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyAddressAttributeResult {
  Address?: AddressAttribute | undefined;
}
export declare const ModifyAvailabilityZoneOptInStatus: {
  readonly not_opted_in: "not-opted-in";
  readonly opted_in: "opted-in";
};
export type ModifyAvailabilityZoneOptInStatus =
  (typeof ModifyAvailabilityZoneOptInStatus)[keyof typeof ModifyAvailabilityZoneOptInStatus];
export interface ModifyAvailabilityZoneGroupRequest {
  GroupName: string | undefined;
  OptInStatus: ModifyAvailabilityZoneOptInStatus | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyAvailabilityZoneGroupResult {
  Return?: boolean | undefined;
}
export interface ModifyCapacityReservationRequest {
  CapacityReservationId: string | undefined;
  InstanceCount?: number | undefined;
  EndDate?: Date | undefined;
  EndDateType?: EndDateType | undefined;
  Accept?: boolean | undefined;
  DryRun?: boolean | undefined;
  AdditionalInfo?: string | undefined;
  InstanceMatchCriteria?: InstanceMatchCriteria | undefined;
}
export interface ModifyCapacityReservationResult {
  Return?: boolean | undefined;
}
export interface ModifyCapacityReservationFleetRequest {
  CapacityReservationFleetId: string | undefined;
  TotalTargetCapacity?: number | undefined;
  EndDate?: Date | undefined;
  DryRun?: boolean | undefined;
  RemoveEndDate?: boolean | undefined;
}
export interface ModifyCapacityReservationFleetResult {
  Return?: boolean | undefined;
}
export interface DnsServersOptionsModifyStructure {
  CustomDnsServers?: string[] | undefined;
  Enabled?: boolean | undefined;
}
export interface ModifyClientVpnEndpointRequest {
  ClientVpnEndpointId: string | undefined;
  ServerCertificateArn?: string | undefined;
  ConnectionLogOptions?: ConnectionLogOptions | undefined;
  DnsServers?: DnsServersOptionsModifyStructure | undefined;
  VpnPort?: number | undefined;
  Description?: string | undefined;
  SplitTunnel?: boolean | undefined;
  DryRun?: boolean | undefined;
  SecurityGroupIds?: string[] | undefined;
  VpcId?: string | undefined;
  SelfServicePortal?: SelfServicePortal | undefined;
  ClientConnectOptions?: ClientConnectOptions | undefined;
  SessionTimeoutHours?: number | undefined;
  ClientLoginBannerOptions?: ClientLoginBannerOptions | undefined;
  ClientRouteEnforcementOptions?: ClientRouteEnforcementOptions | undefined;
  DisconnectOnSessionTimeout?: boolean | undefined;
}
export interface ModifyClientVpnEndpointResult {
  Return?: boolean | undefined;
}
export interface ModifyDefaultCreditSpecificationRequest {
  DryRun?: boolean | undefined;
  InstanceFamily: UnlimitedSupportedInstanceFamily | undefined;
  CpuCredits: string | undefined;
}
export interface ModifyDefaultCreditSpecificationResult {
  InstanceFamilyCreditSpecification?:
    | InstanceFamilyCreditSpecification
    | undefined;
}
export interface ModifyEbsDefaultKmsKeyIdRequest {
  KmsKeyId: string | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyEbsDefaultKmsKeyIdResult {
  KmsKeyId?: string | undefined;
}
export interface ModifyFleetRequest {
  DryRun?: boolean | undefined;
  ExcessCapacityTerminationPolicy?:
    | FleetExcessCapacityTerminationPolicy
    | undefined;
  LaunchTemplateConfigs?: FleetLaunchTemplateConfigRequest[] | undefined;
  FleetId: string | undefined;
  TargetCapacitySpecification?: TargetCapacitySpecificationRequest | undefined;
  Context?: string | undefined;
}
export interface ModifyFleetResult {
  Return?: boolean | undefined;
}
export interface LoadPermissionRequest {
  Group?: PermissionGroup | undefined;
  UserId?: string | undefined;
}
export interface LoadPermissionModifications {
  Add?: LoadPermissionRequest[] | undefined;
  Remove?: LoadPermissionRequest[] | undefined;
}
export declare const OperationType: {
  readonly add: "add";
  readonly remove: "remove";
};
export type OperationType = (typeof OperationType)[keyof typeof OperationType];
export interface ModifyFpgaImageAttributeRequest {
  DryRun?: boolean | undefined;
  FpgaImageId: string | undefined;
  Attribute?: FpgaImageAttributeName | undefined;
  OperationType?: OperationType | undefined;
  UserIds?: string[] | undefined;
  UserGroups?: string[] | undefined;
  ProductCodes?: string[] | undefined;
  LoadPermission?: LoadPermissionModifications | undefined;
  Description?: string | undefined;
  Name?: string | undefined;
}
export interface ModifyFpgaImageAttributeResult {
  FpgaImageAttribute?: FpgaImageAttribute | undefined;
}
export interface ModifyHostsRequest {
  HostRecovery?: HostRecovery | undefined;
  InstanceType?: string | undefined;
  InstanceFamily?: string | undefined;
  HostMaintenance?: HostMaintenance | undefined;
  HostIds: string[] | undefined;
  AutoPlacement?: AutoPlacement | undefined;
}
export interface ModifyHostsResult {
  Successful?: string[] | undefined;
  Unsuccessful?: UnsuccessfulItem[] | undefined;
}
export interface ModifyIdentityIdFormatRequest {
  Resource: string | undefined;
  UseLongIds: boolean | undefined;
  PrincipalArn: string | undefined;
}
export interface ModifyIdFormatRequest {
  Resource: string | undefined;
  UseLongIds: boolean | undefined;
}
export interface LaunchPermissionModifications {
  Add?: LaunchPermission[] | undefined;
  Remove?: LaunchPermission[] | undefined;
}
export interface ModifyImageAttributeRequest {
  Attribute?: string | undefined;
  Description?: AttributeValue | undefined;
  ImageId: string | undefined;
  LaunchPermission?: LaunchPermissionModifications | undefined;
  OperationType?: OperationType | undefined;
  ProductCodes?: string[] | undefined;
  UserGroups?: string[] | undefined;
  UserIds?: string[] | undefined;
  Value?: string | undefined;
  OrganizationArns?: string[] | undefined;
  OrganizationalUnitArns?: string[] | undefined;
  ImdsSupport?: AttributeValue | undefined;
  DryRun?: boolean | undefined;
}
export interface EbsInstanceBlockDeviceSpecification {
  VolumeId?: string | undefined;
  DeleteOnTermination?: boolean | undefined;
}
export interface InstanceBlockDeviceMappingSpecification {
  DeviceName?: string | undefined;
  Ebs?: EbsInstanceBlockDeviceSpecification | undefined;
  VirtualName?: string | undefined;
  NoDevice?: string | undefined;
}
export interface BlobAttributeValue {
  Value?: Uint8Array | undefined;
}
export interface ModifyInstanceAttributeRequest {
  SourceDestCheck?: AttributeBooleanValue | undefined;
  DisableApiStop?: AttributeBooleanValue | undefined;
  DryRun?: boolean | undefined;
  InstanceId: string | undefined;
  Attribute?: InstanceAttributeName | undefined;
  Value?: string | undefined;
  BlockDeviceMappings?: InstanceBlockDeviceMappingSpecification[] | undefined;
  DisableApiTermination?: AttributeBooleanValue | undefined;
  InstanceType?: AttributeValue | undefined;
  Kernel?: AttributeValue | undefined;
  Ramdisk?: AttributeValue | undefined;
  UserData?: BlobAttributeValue | undefined;
  InstanceInitiatedShutdownBehavior?: AttributeValue | undefined;
  Groups?: string[] | undefined;
  EbsOptimized?: AttributeBooleanValue | undefined;
  SriovNetSupport?: AttributeValue | undefined;
  EnaSupport?: AttributeBooleanValue | undefined;
}
export interface CapacityReservationSpecification {
  CapacityReservationPreference?: CapacityReservationPreference | undefined;
  CapacityReservationTarget?: CapacityReservationTarget | undefined;
}
export interface ModifyInstanceCapacityReservationAttributesRequest {
  InstanceId: string | undefined;
  CapacityReservationSpecification:
    | CapacityReservationSpecification
    | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyInstanceCapacityReservationAttributesResult {
  Return?: boolean | undefined;
}
export interface ModifyInstanceCpuOptionsRequest {
  InstanceId: string | undefined;
  CoreCount: number | undefined;
  ThreadsPerCore: number | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyInstanceCpuOptionsResult {
  InstanceId?: string | undefined;
  CoreCount?: number | undefined;
  ThreadsPerCore?: number | undefined;
}
export interface InstanceCreditSpecificationRequest {
  InstanceId: string | undefined;
  CpuCredits?: string | undefined;
}
export interface ModifyInstanceCreditSpecificationRequest {
  DryRun?: boolean | undefined;
  ClientToken?: string | undefined;
  InstanceCreditSpecifications:
    | InstanceCreditSpecificationRequest[]
    | undefined;
}
export interface SuccessfulInstanceCreditSpecificationItem {
  InstanceId?: string | undefined;
}
export declare const UnsuccessfulInstanceCreditSpecificationErrorCode: {
  readonly INCORRECT_INSTANCE_STATE: "IncorrectInstanceState";
  readonly INSTANCE_CREDIT_SPECIFICATION_NOT_SUPPORTED: "InstanceCreditSpecification.NotSupported";
  readonly INSTANCE_NOT_FOUND: "InvalidInstanceID.NotFound";
  readonly INVALID_INSTANCE_ID: "InvalidInstanceID.Malformed";
};
export type UnsuccessfulInstanceCreditSpecificationErrorCode =
  (typeof UnsuccessfulInstanceCreditSpecificationErrorCode)[keyof typeof UnsuccessfulInstanceCreditSpecificationErrorCode];
export interface UnsuccessfulInstanceCreditSpecificationItemError {
  Code?: UnsuccessfulInstanceCreditSpecificationErrorCode | undefined;
  Message?: string | undefined;
}
export interface UnsuccessfulInstanceCreditSpecificationItem {
  InstanceId?: string | undefined;
  Error?: UnsuccessfulInstanceCreditSpecificationItemError | undefined;
}
export interface ModifyInstanceCreditSpecificationResult {
  SuccessfulInstanceCreditSpecifications?:
    | SuccessfulInstanceCreditSpecificationItem[]
    | undefined;
  UnsuccessfulInstanceCreditSpecifications?:
    | UnsuccessfulInstanceCreditSpecificationItem[]
    | undefined;
}
export interface ModifyInstanceEventStartTimeRequest {
  DryRun?: boolean | undefined;
  InstanceId: string | undefined;
  InstanceEventId: string | undefined;
  NotBefore: Date | undefined;
}
export interface ModifyInstanceEventStartTimeResult {
  Event?: InstanceStatusEvent | undefined;
}
export interface ModifyInstanceEventWindowRequest {
  DryRun?: boolean | undefined;
  Name?: string | undefined;
  InstanceEventWindowId: string | undefined;
  TimeRanges?: InstanceEventWindowTimeRangeRequest[] | undefined;
  CronExpression?: string | undefined;
}
export interface ModifyInstanceEventWindowResult {
  InstanceEventWindow?: InstanceEventWindow | undefined;
}
export interface ModifyInstanceMaintenanceOptionsRequest {
  InstanceId: string | undefined;
  AutoRecovery?: InstanceAutoRecoveryState | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyInstanceMaintenanceOptionsResult {
  InstanceId?: string | undefined;
  AutoRecovery?: InstanceAutoRecoveryState | undefined;
}
export declare const DefaultInstanceMetadataEndpointState: {
  readonly disabled: "disabled";
  readonly enabled: "enabled";
  readonly no_preference: "no-preference";
};
export type DefaultInstanceMetadataEndpointState =
  (typeof DefaultInstanceMetadataEndpointState)[keyof typeof DefaultInstanceMetadataEndpointState];
export declare const MetadataDefaultHttpTokensState: {
  readonly no_preference: "no-preference";
  readonly optional: "optional";
  readonly required: "required";
};
export type MetadataDefaultHttpTokensState =
  (typeof MetadataDefaultHttpTokensState)[keyof typeof MetadataDefaultHttpTokensState];
export declare const DefaultInstanceMetadataTagsState: {
  readonly disabled: "disabled";
  readonly enabled: "enabled";
  readonly no_preference: "no-preference";
};
export type DefaultInstanceMetadataTagsState =
  (typeof DefaultInstanceMetadataTagsState)[keyof typeof DefaultInstanceMetadataTagsState];
export interface ModifyInstanceMetadataDefaultsRequest {
  HttpTokens?: MetadataDefaultHttpTokensState | undefined;
  HttpPutResponseHopLimit?: number | undefined;
  HttpEndpoint?: DefaultInstanceMetadataEndpointState | undefined;
  InstanceMetadataTags?: DefaultInstanceMetadataTagsState | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyInstanceMetadataDefaultsResult {
  Return?: boolean | undefined;
}
export interface ModifyInstanceMetadataOptionsRequest {
  InstanceId: string | undefined;
  HttpTokens?: HttpTokensState | undefined;
  HttpPutResponseHopLimit?: number | undefined;
  HttpEndpoint?: InstanceMetadataEndpointState | undefined;
  DryRun?: boolean | undefined;
  HttpProtocolIpv6?: InstanceMetadataProtocolState | undefined;
  InstanceMetadataTags?: InstanceMetadataTagsState | undefined;
}
export interface ModifyInstanceMetadataOptionsResult {
  InstanceId?: string | undefined;
  InstanceMetadataOptions?: InstanceMetadataOptionsResponse | undefined;
}
export interface ModifyInstanceNetworkPerformanceRequest {
  InstanceId: string | undefined;
  BandwidthWeighting: InstanceBandwidthWeighting | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyInstanceNetworkPerformanceResult {
  InstanceId?: string | undefined;
  BandwidthWeighting?: InstanceBandwidthWeighting | undefined;
}
export declare const HostTenancy: {
  readonly dedicated: "dedicated";
  readonly default: "default";
  readonly host: "host";
};
export type HostTenancy = (typeof HostTenancy)[keyof typeof HostTenancy];
export interface ModifyInstancePlacementRequest {
  GroupName?: string | undefined;
  PartitionNumber?: number | undefined;
  HostResourceGroupArn?: string | undefined;
  GroupId?: string | undefined;
  InstanceId: string | undefined;
  Tenancy?: HostTenancy | undefined;
  Affinity?: Affinity | undefined;
  HostId?: string | undefined;
}
export interface ModifyInstancePlacementResult {
  Return?: boolean | undefined;
}
export interface RemoveIpamOperatingRegion {
  RegionName?: string | undefined;
}
export interface ModifyIpamRequest {
  DryRun?: boolean | undefined;
  IpamId: string | undefined;
  Description?: string | undefined;
  AddOperatingRegions?: AddIpamOperatingRegion[] | undefined;
  RemoveOperatingRegions?: RemoveIpamOperatingRegion[] | undefined;
  Tier?: IpamTier | undefined;
  EnablePrivateGua?: boolean | undefined;
  MeteredAccount?: IpamMeteredAccount | undefined;
}
export interface ModifyIpamResult {
  Ipam?: Ipam | undefined;
}
export interface ModifyIpamPoolRequest {
  DryRun?: boolean | undefined;
  IpamPoolId: string | undefined;
  Description?: string | undefined;
  AutoImport?: boolean | undefined;
  AllocationMinNetmaskLength?: number | undefined;
  AllocationMaxNetmaskLength?: number | undefined;
  AllocationDefaultNetmaskLength?: number | undefined;
  ClearAllocationDefaultNetmaskLength?: boolean | undefined;
  AddAllocationResourceTags?: RequestIpamResourceTag[] | undefined;
  RemoveAllocationResourceTags?: RequestIpamResourceTag[] | undefined;
}
export interface ModifyIpamPoolResult {
  IpamPool?: IpamPool | undefined;
}
export interface ModifyIpamResourceCidrRequest {
  DryRun?: boolean | undefined;
  ResourceId: string | undefined;
  ResourceCidr: string | undefined;
  ResourceRegion: string | undefined;
  CurrentIpamScopeId: string | undefined;
  DestinationIpamScopeId?: string | undefined;
  Monitored: boolean | undefined;
}
export interface ModifyIpamResourceCidrResult {
  IpamResourceCidr?: IpamResourceCidr | undefined;
}
export interface RemoveIpamOrganizationalUnitExclusion {
  OrganizationsEntityPath?: string | undefined;
}
export interface ModifyIpamResourceDiscoveryRequest {
  DryRun?: boolean | undefined;
  IpamResourceDiscoveryId: string | undefined;
  Description?: string | undefined;
  AddOperatingRegions?: AddIpamOperatingRegion[] | undefined;
  RemoveOperatingRegions?: RemoveIpamOperatingRegion[] | undefined;
  AddOrganizationalUnitExclusions?:
    | AddIpamOrganizationalUnitExclusion[]
    | undefined;
  RemoveOrganizationalUnitExclusions?:
    | RemoveIpamOrganizationalUnitExclusion[]
    | undefined;
}
export interface ModifyIpamResourceDiscoveryResult {
  IpamResourceDiscovery?: IpamResourceDiscovery | undefined;
}
export interface ModifyIpamScopeRequest {
  DryRun?: boolean | undefined;
  IpamScopeId: string | undefined;
  Description?: string | undefined;
}
export interface ModifyIpamScopeResult {
  IpamScope?: IpamScope | undefined;
}
export interface ModifyLaunchTemplateRequest {
  DryRun?: boolean | undefined;
  ClientToken?: string | undefined;
  LaunchTemplateId?: string | undefined;
  LaunchTemplateName?: string | undefined;
  DefaultVersion?: string | undefined;
}
export interface ModifyLaunchTemplateResult {
  LaunchTemplate?: LaunchTemplate | undefined;
}
export interface ModifyLocalGatewayRouteRequest {
  DestinationCidrBlock?: string | undefined;
  LocalGatewayRouteTableId: string | undefined;
  LocalGatewayVirtualInterfaceGroupId?: string | undefined;
  NetworkInterfaceId?: string | undefined;
  DryRun?: boolean | undefined;
  DestinationPrefixListId?: string | undefined;
}
export interface ModifyLocalGatewayRouteResult {
  Route?: LocalGatewayRoute | undefined;
}
export interface RemovePrefixListEntry {
  Cidr: string | undefined;
}
export interface ModifyManagedPrefixListRequest {
  DryRun?: boolean | undefined;
  PrefixListId: string | undefined;
  CurrentVersion?: number | undefined;
  PrefixListName?: string | undefined;
  AddEntries?: AddPrefixListEntry[] | undefined;
  RemoveEntries?: RemovePrefixListEntry[] | undefined;
  MaxEntries?: number | undefined;
}
export interface ModifyManagedPrefixListResult {
  PrefixList?: ManagedPrefixList | undefined;
}
export interface NetworkInterfaceAttachmentChanges {
  DefaultEnaQueueCount?: boolean | undefined;
  EnaQueueCount?: number | undefined;
  AttachmentId?: string | undefined;
  DeleteOnTermination?: boolean | undefined;
}
export interface ModifyNetworkInterfaceAttributeRequest {
  EnaSrdSpecification?: EnaSrdSpecification | undefined;
  EnablePrimaryIpv6?: boolean | undefined;
  ConnectionTrackingSpecification?:
    | ConnectionTrackingSpecificationRequest
    | undefined;
  AssociatePublicIpAddress?: boolean | undefined;
  DryRun?: boolean | undefined;
  NetworkInterfaceId: string | undefined;
  Description?: AttributeValue | undefined;
  SourceDestCheck?: AttributeBooleanValue | undefined;
  Groups?: string[] | undefined;
  Attachment?: NetworkInterfaceAttachmentChanges | undefined;
}
export interface ModifyPrivateDnsNameOptionsRequest {
  DryRun?: boolean | undefined;
  InstanceId: string | undefined;
  PrivateDnsHostnameType?: HostnameType | undefined;
  EnableResourceNameDnsARecord?: boolean | undefined;
  EnableResourceNameDnsAAAARecord?: boolean | undefined;
}
export interface ModifyPrivateDnsNameOptionsResult {
  Return?: boolean | undefined;
}
export interface ModifyReservedInstancesRequest {
  ReservedInstancesIds: string[] | undefined;
  ClientToken?: string | undefined;
  TargetConfigurations: ReservedInstancesConfiguration[] | undefined;
}
export interface ModifyReservedInstancesResult {
  ReservedInstancesModificationId?: string | undefined;
}
export interface ModifyRouteServerRequest {
  RouteServerId: string | undefined;
  PersistRoutes?: RouteServerPersistRoutesAction | undefined;
  PersistRoutesDuration?: number | undefined;
  SnsNotificationsEnabled?: boolean | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyRouteServerResult {
  RouteServer?: RouteServer | undefined;
}
export interface SecurityGroupRuleRequest {
  IpProtocol?: string | undefined;
  FromPort?: number | undefined;
  ToPort?: number | undefined;
  CidrIpv4?: string | undefined;
  CidrIpv6?: string | undefined;
  PrefixListId?: string | undefined;
  ReferencedGroupId?: string | undefined;
  Description?: string | undefined;
}
export interface SecurityGroupRuleUpdate {
  SecurityGroupRuleId: string | undefined;
  SecurityGroupRule?: SecurityGroupRuleRequest | undefined;
}
export interface ModifySecurityGroupRulesRequest {
  GroupId: string | undefined;
  SecurityGroupRules: SecurityGroupRuleUpdate[] | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifySecurityGroupRulesResult {
  Return?: boolean | undefined;
}
export interface CreateVolumePermissionModifications {
  Add?: CreateVolumePermission[] | undefined;
  Remove?: CreateVolumePermission[] | undefined;
}
export interface ModifySnapshotAttributeRequest {
  Attribute?: SnapshotAttributeName | undefined;
  CreateVolumePermission?: CreateVolumePermissionModifications | undefined;
  GroupNames?: string[] | undefined;
  OperationType?: OperationType | undefined;
  SnapshotId: string | undefined;
  UserIds?: string[] | undefined;
  DryRun?: boolean | undefined;
}
export declare const TargetStorageTier: {
  readonly archive: "archive";
};
export type TargetStorageTier =
  (typeof TargetStorageTier)[keyof typeof TargetStorageTier];
export interface ModifySnapshotTierRequest {
  SnapshotId: string | undefined;
  StorageTier?: TargetStorageTier | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifySnapshotTierResult {
  SnapshotId?: string | undefined;
  TieringStartTime?: Date | undefined;
}
export interface ModifySpotFleetRequestRequest {
  LaunchTemplateConfigs?: LaunchTemplateConfig[] | undefined;
  OnDemandTargetCapacity?: number | undefined;
  Context?: string | undefined;
  SpotFleetRequestId: string | undefined;
  TargetCapacity?: number | undefined;
  ExcessCapacityTerminationPolicy?: ExcessCapacityTerminationPolicy | undefined;
}
export interface ModifySpotFleetRequestResponse {
  Return?: boolean | undefined;
}
export interface ModifySubnetAttributeRequest {
  AssignIpv6AddressOnCreation?: AttributeBooleanValue | undefined;
  MapPublicIpOnLaunch?: AttributeBooleanValue | undefined;
  SubnetId: string | undefined;
  MapCustomerOwnedIpOnLaunch?: AttributeBooleanValue | undefined;
  CustomerOwnedIpv4Pool?: string | undefined;
  EnableDns64?: AttributeBooleanValue | undefined;
  PrivateDnsHostnameTypeOnLaunch?: HostnameType | undefined;
  EnableResourceNameDnsARecordOnLaunch?: AttributeBooleanValue | undefined;
  EnableResourceNameDnsAAAARecordOnLaunch?: AttributeBooleanValue | undefined;
  EnableLniAtDeviceIndex?: number | undefined;
  DisableLniAtDeviceIndex?: AttributeBooleanValue | undefined;
}
export interface ModifyTrafficMirrorFilterNetworkServicesRequest {
  TrafficMirrorFilterId: string | undefined;
  AddNetworkServices?: TrafficMirrorNetworkService[] | undefined;
  RemoveNetworkServices?: TrafficMirrorNetworkService[] | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyTrafficMirrorFilterNetworkServicesResult {
  TrafficMirrorFilter?: TrafficMirrorFilter | undefined;
}
export declare const TrafficMirrorFilterRuleField: {
  readonly description: "description";
  readonly destination_port_range: "destination-port-range";
  readonly protocol: "protocol";
  readonly source_port_range: "source-port-range";
};
export type TrafficMirrorFilterRuleField =
  (typeof TrafficMirrorFilterRuleField)[keyof typeof TrafficMirrorFilterRuleField];
export interface ModifyTrafficMirrorFilterRuleRequest {
  TrafficMirrorFilterRuleId: string | undefined;
  TrafficDirection?: TrafficDirection | undefined;
  RuleNumber?: number | undefined;
  RuleAction?: TrafficMirrorRuleAction | undefined;
  DestinationPortRange?: TrafficMirrorPortRangeRequest | undefined;
  SourcePortRange?: TrafficMirrorPortRangeRequest | undefined;
  Protocol?: number | undefined;
  DestinationCidrBlock?: string | undefined;
  SourceCidrBlock?: string | undefined;
  Description?: string | undefined;
  RemoveFields?: TrafficMirrorFilterRuleField[] | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyTrafficMirrorFilterRuleResult {
  TrafficMirrorFilterRule?: TrafficMirrorFilterRule | undefined;
}
export declare const TrafficMirrorSessionField: {
  readonly description: "description";
  readonly packet_length: "packet-length";
  readonly virtual_network_id: "virtual-network-id";
};
export type TrafficMirrorSessionField =
  (typeof TrafficMirrorSessionField)[keyof typeof TrafficMirrorSessionField];
export interface ModifyTrafficMirrorSessionRequest {
  TrafficMirrorSessionId: string | undefined;
  TrafficMirrorTargetId?: string | undefined;
  TrafficMirrorFilterId?: string | undefined;
  PacketLength?: number | undefined;
  SessionNumber?: number | undefined;
  VirtualNetworkId?: number | undefined;
  Description?: string | undefined;
  RemoveFields?: TrafficMirrorSessionField[] | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyTrafficMirrorSessionResult {
  TrafficMirrorSession?: TrafficMirrorSession | undefined;
}
export interface ModifyTransitGatewayOptions {
  AddTransitGatewayCidrBlocks?: string[] | undefined;
  RemoveTransitGatewayCidrBlocks?: string[] | undefined;
  VpnEcmpSupport?: VpnEcmpSupportValue | undefined;
  DnsSupport?: DnsSupportValue | undefined;
  SecurityGroupReferencingSupport?:
    | SecurityGroupReferencingSupportValue
    | undefined;
  AutoAcceptSharedAttachments?: AutoAcceptSharedAttachmentsValue | undefined;
  DefaultRouteTableAssociation?: DefaultRouteTableAssociationValue | undefined;
  AssociationDefaultRouteTableId?: string | undefined;
  DefaultRouteTablePropagation?: DefaultRouteTablePropagationValue | undefined;
  PropagationDefaultRouteTableId?: string | undefined;
  AmazonSideAsn?: number | undefined;
}
export interface ModifyTransitGatewayRequest {
  TransitGatewayId: string | undefined;
  Description?: string | undefined;
  Options?: ModifyTransitGatewayOptions | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyTransitGatewayResult {
  TransitGateway?: TransitGateway | undefined;
}
export interface ModifyTransitGatewayPrefixListReferenceRequest {
  TransitGatewayRouteTableId: string | undefined;
  PrefixListId: string | undefined;
  TransitGatewayAttachmentId?: string | undefined;
  Blackhole?: boolean | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyTransitGatewayPrefixListReferenceResult {
  TransitGatewayPrefixListReference?:
    | TransitGatewayPrefixListReference
    | undefined;
}
export interface ModifyTransitGatewayVpcAttachmentRequestOptions {
  DnsSupport?: DnsSupportValue | undefined;
  SecurityGroupReferencingSupport?:
    | SecurityGroupReferencingSupportValue
    | undefined;
  Ipv6Support?: Ipv6SupportValue | undefined;
  ApplianceModeSupport?: ApplianceModeSupportValue | undefined;
}
export interface ModifyTransitGatewayVpcAttachmentRequest {
  TransitGatewayAttachmentId: string | undefined;
  AddSubnetIds?: string[] | undefined;
  RemoveSubnetIds?: string[] | undefined;
  Options?: ModifyTransitGatewayVpcAttachmentRequestOptions | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyTransitGatewayVpcAttachmentResult {
  TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment | undefined;
}
export interface ModifyVerifiedAccessEndpointPortRange {
  FromPort?: number | undefined;
  ToPort?: number | undefined;
}
export interface ModifyVerifiedAccessEndpointCidrOptions {
  PortRanges?: ModifyVerifiedAccessEndpointPortRange[] | undefined;
}
export interface ModifyVerifiedAccessEndpointLoadBalancerOptions {
  SubnetIds?: string[] | undefined;
  Protocol?: VerifiedAccessEndpointProtocol | undefined;
  Port?: number | undefined;
  PortRanges?: ModifyVerifiedAccessEndpointPortRange[] | undefined;
}
export interface ModifyVerifiedAccessEndpointEniOptions {
  Protocol?: VerifiedAccessEndpointProtocol | undefined;
  Port?: number | undefined;
  PortRanges?: ModifyVerifiedAccessEndpointPortRange[] | undefined;
}
export interface ModifyVerifiedAccessEndpointRdsOptions {
  SubnetIds?: string[] | undefined;
  Port?: number | undefined;
  RdsEndpoint?: string | undefined;
}
export interface ModifyVerifiedAccessEndpointRequest {
  VerifiedAccessEndpointId: string | undefined;
  VerifiedAccessGroupId?: string | undefined;
  LoadBalancerOptions?:
    | ModifyVerifiedAccessEndpointLoadBalancerOptions
    | undefined;
  NetworkInterfaceOptions?: ModifyVerifiedAccessEndpointEniOptions | undefined;
  Description?: string | undefined;
  ClientToken?: string | undefined;
  DryRun?: boolean | undefined;
  RdsOptions?: ModifyVerifiedAccessEndpointRdsOptions | undefined;
  CidrOptions?: ModifyVerifiedAccessEndpointCidrOptions | undefined;
}
export interface ModifyVerifiedAccessEndpointResult {
  VerifiedAccessEndpoint?: VerifiedAccessEndpoint | undefined;
}
export interface ModifyVerifiedAccessEndpointPolicyRequest {
  VerifiedAccessEndpointId: string | undefined;
  PolicyEnabled?: boolean | undefined;
  PolicyDocument?: string | undefined;
  ClientToken?: string | undefined;
  DryRun?: boolean | undefined;
  SseSpecification?: VerifiedAccessSseSpecificationRequest | undefined;
}
export interface ModifyVerifiedAccessEndpointPolicyResult {
  PolicyEnabled?: boolean | undefined;
  PolicyDocument?: string | undefined;
  SseSpecification?: VerifiedAccessSseSpecificationResponse | undefined;
}
export interface ModifyVerifiedAccessGroupRequest {
  VerifiedAccessGroupId: string | undefined;
  VerifiedAccessInstanceId?: string | undefined;
  Description?: string | undefined;
  ClientToken?: string | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyVerifiedAccessGroupResult {
  VerifiedAccessGroup?: VerifiedAccessGroup | undefined;
}
export interface ModifyVerifiedAccessGroupPolicyRequest {
  VerifiedAccessGroupId: string | undefined;
  PolicyEnabled?: boolean | undefined;
  PolicyDocument?: string | undefined;
  ClientToken?: string | undefined;
  DryRun?: boolean | undefined;
  SseSpecification?: VerifiedAccessSseSpecificationRequest | undefined;
}
export interface ModifyVerifiedAccessGroupPolicyResult {
  PolicyEnabled?: boolean | undefined;
  PolicyDocument?: string | undefined;
  SseSpecification?: VerifiedAccessSseSpecificationResponse | undefined;
}
export interface ModifyVerifiedAccessInstanceRequest {
  VerifiedAccessInstanceId: string | undefined;
  Description?: string | undefined;
  DryRun?: boolean | undefined;
  ClientToken?: string | undefined;
  CidrEndpointsCustomSubDomain?: string | undefined;
}
export interface ModifyVerifiedAccessInstanceResult {
  VerifiedAccessInstance?: VerifiedAccessInstance | undefined;
}
export interface VerifiedAccessLogCloudWatchLogsDestinationOptions {
  Enabled: boolean | undefined;
  LogGroup?: string | undefined;
}
export interface VerifiedAccessLogKinesisDataFirehoseDestinationOptions {
  Enabled: boolean | undefined;
  DeliveryStream?: string | undefined;
}
export interface VerifiedAccessLogS3DestinationOptions {
  Enabled: boolean | undefined;
  BucketName?: string | undefined;
  Prefix?: string | undefined;
  BucketOwner?: string | undefined;
}
export interface VerifiedAccessLogOptions {
  S3?: VerifiedAccessLogS3DestinationOptions | undefined;
  CloudWatchLogs?:
    | VerifiedAccessLogCloudWatchLogsDestinationOptions
    | undefined;
  KinesisDataFirehose?:
    | VerifiedAccessLogKinesisDataFirehoseDestinationOptions
    | undefined;
  LogVersion?: string | undefined;
  IncludeTrustContext?: boolean | undefined;
}
export interface ModifyVerifiedAccessInstanceLoggingConfigurationRequest {
  VerifiedAccessInstanceId: string | undefined;
  AccessLogs: VerifiedAccessLogOptions | undefined;
  DryRun?: boolean | undefined;
  ClientToken?: string | undefined;
}
export interface ModifyVerifiedAccessInstanceLoggingConfigurationResult {
  LoggingConfiguration?: VerifiedAccessInstanceLoggingConfiguration | undefined;
}
export interface ModifyVerifiedAccessTrustProviderDeviceOptions {
  PublicSigningKeyUrl?: string | undefined;
}
export interface ModifyVerifiedAccessNativeApplicationOidcOptions {
  PublicSigningKeyEndpoint?: string | undefined;
  Issuer?: string | undefined;
  AuthorizationEndpoint?: string | undefined;
  TokenEndpoint?: string | undefined;
  UserInfoEndpoint?: string | undefined;
  ClientId?: string | undefined;
  ClientSecret?: string | undefined;
  Scope?: string | undefined;
}
export interface ModifyVerifiedAccessTrustProviderOidcOptions {
  Issuer?: string | undefined;
  AuthorizationEndpoint?: string | undefined;
  TokenEndpoint?: string | undefined;
  UserInfoEndpoint?: string | undefined;
  ClientId?: string | undefined;
  ClientSecret?: string | undefined;
  Scope?: string | undefined;
}
export interface ModifyVerifiedAccessTrustProviderRequest {
  VerifiedAccessTrustProviderId: string | undefined;
  OidcOptions?: ModifyVerifiedAccessTrustProviderOidcOptions | undefined;
  DeviceOptions?: ModifyVerifiedAccessTrustProviderDeviceOptions | undefined;
  Description?: string | undefined;
  DryRun?: boolean | undefined;
  ClientToken?: string | undefined;
  SseSpecification?: VerifiedAccessSseSpecificationRequest | undefined;
  NativeApplicationOidcOptions?:
    | ModifyVerifiedAccessNativeApplicationOidcOptions
    | undefined;
}
export interface ModifyVerifiedAccessTrustProviderResult {
  VerifiedAccessTrustProvider?: VerifiedAccessTrustProvider | undefined;
}
export interface ModifyVolumeRequest {
  DryRun?: boolean | undefined;
  VolumeId: string | undefined;
  Size?: number | undefined;
  VolumeType?: VolumeType | undefined;
  Iops?: number | undefined;
  Throughput?: number | undefined;
  MultiAttachEnabled?: boolean | undefined;
}
export interface ModifyVolumeResult {
  VolumeModification?: VolumeModification | undefined;
}
export interface ModifyVolumeAttributeRequest {
  AutoEnableIO?: AttributeBooleanValue | undefined;
  VolumeId: string | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyVpcAttributeRequest {
  EnableDnsHostnames?: AttributeBooleanValue | undefined;
  EnableDnsSupport?: AttributeBooleanValue | undefined;
  VpcId: string | undefined;
  EnableNetworkAddressUsageMetrics?: AttributeBooleanValue | undefined;
}
export interface ModifyVpcBlockPublicAccessExclusionRequest {
  DryRun?: boolean | undefined;
  ExclusionId: string | undefined;
  InternetGatewayExclusionMode: InternetGatewayExclusionMode | undefined;
}
export interface ModifyVpcBlockPublicAccessExclusionResult {
  VpcBlockPublicAccessExclusion?: VpcBlockPublicAccessExclusion | undefined;
}
export interface ModifyVpcBlockPublicAccessOptionsRequest {
  DryRun?: boolean | undefined;
  InternetGatewayBlockMode: InternetGatewayBlockMode | undefined;
}
export interface ModifyVpcBlockPublicAccessOptionsResult {
  VpcBlockPublicAccessOptions?: VpcBlockPublicAccessOptions | undefined;
}
export interface ModifyVpcEndpointRequest {
  DryRun?: boolean | undefined;
  VpcEndpointId: string | undefined;
  ResetPolicy?: boolean | undefined;
  PolicyDocument?: string | undefined;
  AddRouteTableIds?: string[] | undefined;
  RemoveRouteTableIds?: string[] | undefined;
  AddSubnetIds?: string[] | undefined;
  RemoveSubnetIds?: string[] | undefined;
  AddSecurityGroupIds?: string[] | undefined;
  RemoveSecurityGroupIds?: string[] | undefined;
  IpAddressType?: IpAddressType | undefined;
  DnsOptions?: DnsOptionsSpecification | undefined;
  PrivateDnsEnabled?: boolean | undefined;
  SubnetConfigurations?: SubnetConfiguration[] | undefined;
}
export interface ModifyVpcEndpointResult {
  Return?: boolean | undefined;
}
export interface ModifyVpcEndpointConnectionNotificationRequest {
  DryRun?: boolean | undefined;
  ConnectionNotificationId: string | undefined;
  ConnectionNotificationArn?: string | undefined;
  ConnectionEvents?: string[] | undefined;
}
export interface ModifyVpcEndpointConnectionNotificationResult {
  ReturnValue?: boolean | undefined;
}
export interface ModifyVpcEndpointServiceConfigurationRequest {
  DryRun?: boolean | undefined;
  ServiceId: string | undefined;
  PrivateDnsName?: string | undefined;
  RemovePrivateDnsName?: boolean | undefined;
  AcceptanceRequired?: boolean | undefined;
  AddNetworkLoadBalancerArns?: string[] | undefined;
  RemoveNetworkLoadBalancerArns?: string[] | undefined;
  AddGatewayLoadBalancerArns?: string[] | undefined;
  RemoveGatewayLoadBalancerArns?: string[] | undefined;
  AddSupportedIpAddressTypes?: string[] | undefined;
  RemoveSupportedIpAddressTypes?: string[] | undefined;
  AddSupportedRegions?: string[] | undefined;
  RemoveSupportedRegions?: string[] | undefined;
}
export interface ModifyVpcEndpointServiceConfigurationResult {
  Return?: boolean | undefined;
}
export interface ModifyVpcEndpointServicePayerResponsibilityRequest {
  DryRun?: boolean | undefined;
  ServiceId: string | undefined;
  PayerResponsibility: PayerResponsibility | undefined;
}
export interface ModifyVpcEndpointServicePayerResponsibilityResult {
  ReturnValue?: boolean | undefined;
}
export interface ModifyVpcEndpointServicePermissionsRequest {
  DryRun?: boolean | undefined;
  ServiceId: string | undefined;
  AddAllowedPrincipals?: string[] | undefined;
  RemoveAllowedPrincipals?: string[] | undefined;
}
export interface ModifyVpcEndpointServicePermissionsResult {
  AddedPrincipals?: AddedPrincipal[] | undefined;
  ReturnValue?: boolean | undefined;
}
export interface PeeringConnectionOptionsRequest {
  AllowDnsResolutionFromRemoteVpc?: boolean | undefined;
  AllowEgressFromLocalClassicLinkToRemoteVpc?: boolean | undefined;
  AllowEgressFromLocalVpcToRemoteClassicLink?: boolean | undefined;
}
export interface ModifyVpcPeeringConnectionOptionsRequest {
  AccepterPeeringConnectionOptions?:
    | PeeringConnectionOptionsRequest
    | undefined;
  DryRun?: boolean | undefined;
  RequesterPeeringConnectionOptions?:
    | PeeringConnectionOptionsRequest
    | undefined;
  VpcPeeringConnectionId: string | undefined;
}
export interface PeeringConnectionOptions {
  AllowDnsResolutionFromRemoteVpc?: boolean | undefined;
  AllowEgressFromLocalClassicLinkToRemoteVpc?: boolean | undefined;
  AllowEgressFromLocalVpcToRemoteClassicLink?: boolean | undefined;
}
export interface ModifyVpcPeeringConnectionOptionsResult {
  AccepterPeeringConnectionOptions?: PeeringConnectionOptions | undefined;
  RequesterPeeringConnectionOptions?: PeeringConnectionOptions | undefined;
}
export declare const VpcTenancy: {
  readonly default: "default";
};
export type VpcTenancy = (typeof VpcTenancy)[keyof typeof VpcTenancy];
export interface ModifyVpcTenancyRequest {
  VpcId: string | undefined;
  InstanceTenancy: VpcTenancy | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyVpcTenancyResult {
  ReturnValue?: boolean | undefined;
}
export interface ModifyVpnConnectionRequest {
  VpnConnectionId: string | undefined;
  TransitGatewayId?: string | undefined;
  CustomerGatewayId?: string | undefined;
  VpnGatewayId?: string | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyVpnConnectionResult {
  VpnConnection?: VpnConnection | undefined;
}
export interface ModifyVpnConnectionOptionsRequest {
  VpnConnectionId: string | undefined;
  LocalIpv4NetworkCidr?: string | undefined;
  RemoteIpv4NetworkCidr?: string | undefined;
  LocalIpv6NetworkCidr?: string | undefined;
  RemoteIpv6NetworkCidr?: string | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyVpnConnectionOptionsResult {
  VpnConnection?: VpnConnection | undefined;
}
export interface ModifyVpnTunnelCertificateRequest {
  VpnConnectionId: string | undefined;
  VpnTunnelOutsideIpAddress: string | undefined;
  DryRun?: boolean | undefined;
}
export interface ModifyVpnTunnelCertificateResult {
  VpnConnection?: VpnConnection | undefined;
}
export interface ModifyVpnTunnelOptionsSpecification {
  TunnelInsideCidr?: string | undefined;
  TunnelInsideIpv6Cidr?: string | undefined;
  PreSharedKey?: string | undefined;
  Phase1LifetimeSeconds?: number | undefined;
  Phase2LifetimeSeconds?: number | undefined;
  RekeyMarginTimeSeconds?: number | undefined;
  RekeyFuzzPercentage?: number | undefined;
  ReplayWindowSize?: number | undefined;
  DPDTimeoutSeconds?: number | undefined;
  DPDTimeoutAction?: string | undefined;
  Phase1EncryptionAlgorithms?:
    | Phase1EncryptionAlgorithmsRequestListValue[]
    | undefined;
  Phase2EncryptionAlgorithms?:
    | Phase2EncryptionAlgorithmsRequestListValue[]
    | undefined;
  Phase1IntegrityAlgorithms?:
    | Phase1IntegrityAlgorithmsRequestListValue[]
    | undefined;
  Phase2IntegrityAlgorithms?:
    | Phase2IntegrityAlgorithmsRequestListValue[]
    | undefined;
  Phase1DHGroupNumbers?: Phase1DHGroupNumbersRequestListValue[] | undefined;
  Phase2DHGroupNumbers?: Phase2DHGroupNumbersRequestListValue[] | undefined;
  IKEVersions?: IKEVersionsRequestListValue[] | undefined;
  StartupAction?: string | undefined;
  LogOptions?: VpnTunnelLogOptionsSpecification | undefined;
  EnableTunnelLifecycleControl?: boolean | undefined;
}
export interface ModifyVpnTunnelOptionsRequest {
  VpnConnectionId: string | undefined;
  VpnTunnelOutsideIpAddress: string | undefined;
  TunnelOptions: ModifyVpnTunnelOptionsSpecification | undefined;
  DryRun?: boolean | undefined;
  SkipTunnelReplacement?: boolean | undefined;
}
export interface ModifyVpnTunnelOptionsResult {
  VpnConnection?: VpnConnection | undefined;
}
export interface MonitorInstancesRequest {
  InstanceIds: string[] | undefined;
  DryRun?: boolean | undefined;
}
export interface InstanceMonitoring {
  InstanceId?: string | undefined;
  Monitoring?: Monitoring | undefined;
}
export interface MonitorInstancesResult {
  InstanceMonitorings?: InstanceMonitoring[] | undefined;
}
export interface MoveAddressToVpcRequest {
  DryRun?: boolean | undefined;
  PublicIp: string | undefined;
}
export declare const Status: {
  readonly inClassic: "InClassic";
  readonly inVpc: "InVpc";
  readonly moveInProgress: "MoveInProgress";
};
export type Status = (typeof Status)[keyof typeof Status];
export interface MoveAddressToVpcResult {
  AllocationId?: string | undefined;
  Status?: Status | undefined;
}
export interface MoveByoipCidrToIpamRequest {
  DryRun?: boolean | undefined;
  Cidr: string | undefined;
  IpamPoolId: string | undefined;
  IpamPoolOwner: string | undefined;
}
export interface MoveByoipCidrToIpamResult {
  ByoipCidr?: ByoipCidr | undefined;
}
export interface MoveCapacityReservationInstancesRequest {
  DryRun?: boolean | undefined;
  ClientToken?: string | undefined;
  SourceCapacityReservationId: string | undefined;
  DestinationCapacityReservationId: string | undefined;
  InstanceCount: number | undefined;
}
export interface MoveCapacityReservationInstancesResult {
  SourceCapacityReservation?: CapacityReservation | undefined;
  DestinationCapacityReservation?: CapacityReservation | undefined;
  InstanceCount?: number | undefined;
}
export interface CidrAuthorizationContext {
  Message: string | undefined;
  Signature: string | undefined;
}
export interface ProvisionByoipCidrRequest {
  Cidr: string | undefined;
  CidrAuthorizationContext?: CidrAuthorizationContext | undefined;
  PubliclyAdvertisable?: boolean | undefined;
  Description?: string | undefined;
  DryRun?: boolean | undefined;
  PoolTagSpecifications?: TagSpecification[] | undefined;
  MultiRegion?: boolean | undefined;
  NetworkBorderGroup?: string | undefined;
}
export interface ProvisionByoipCidrResult {
  ByoipCidr?: ByoipCidr | undefined;
}
export interface AsnAuthorizationContext {
  Message: string | undefined;
  Signature: string | undefined;
}
export interface ProvisionIpamByoasnRequest {
  DryRun?: boolean | undefined;
  IpamId: string | undefined;
  Asn: string | undefined;
  AsnAuthorizationContext: AsnAuthorizationContext | undefined;
}
export interface ProvisionIpamByoasnResult {
  Byoasn?: Byoasn | undefined;
}
export interface IpamCidrAuthorizationContext {
  Message?: string | undefined;
  Signature?: string | undefined;
}
export declare const VerificationMethod: {
  readonly dns_token: "dns-token";
  readonly remarks_x509: "remarks-x509";
};
export type VerificationMethod =
  (typeof VerificationMethod)[keyof typeof VerificationMethod];
export interface ProvisionIpamPoolCidrRequest {
  DryRun?: boolean | undefined;
  IpamPoolId: string | undefined;
  Cidr?: string | undefined;
  CidrAuthorizationContext?: IpamCidrAuthorizationContext | undefined;
  NetmaskLength?: number | undefined;
  ClientToken?: string | undefined;
  VerificationMethod?: VerificationMethod | undefined;
  IpamExternalResourceVerificationTokenId?: string | undefined;
}
export interface ProvisionIpamPoolCidrResult {
  IpamPoolCidr?: IpamPoolCidr | undefined;
}
export interface ProvisionPublicIpv4PoolCidrRequest {
  DryRun?: boolean | undefined;
  IpamPoolId: string | undefined;
  PoolId: string | undefined;
  NetmaskLength: number | undefined;
  NetworkBorderGroup?: string | undefined;
}
export interface ProvisionPublicIpv4PoolCidrResult {
  PoolId?: string | undefined;
  PoolAddressRange?: PublicIpv4PoolRange | undefined;
}
export interface PurchaseCapacityBlockRequest {
  DryRun?: boolean | undefined;
  TagSpecifications?: TagSpecification[] | undefined;
  CapacityBlockOfferingId: string | undefined;
  InstancePlatform: CapacityReservationInstancePlatform | undefined;
}
export interface PurchaseCapacityBlockResult {
  CapacityReservation?: CapacityReservation | undefined;
}
export interface PurchaseCapacityBlockExtensionRequest {
  CapacityBlockExtensionOfferingId: string | undefined;
  CapacityReservationId: string | undefined;
  DryRun?: boolean | undefined;
}
export interface PurchaseCapacityBlockExtensionResult {
  CapacityBlockExtensions?: CapacityBlockExtension[] | undefined;
}
export interface PurchaseHostReservationRequest {
  ClientToken?: string | undefined;
  CurrencyCode?: CurrencyCodeValues | undefined;
  HostIdSet: string[] | undefined;
  LimitPrice?: string | undefined;
  OfferingId: string | undefined;
  TagSpecifications?: TagSpecification[] | undefined;
}
export interface PurchaseHostReservationResult {
  ClientToken?: string | undefined;
  CurrencyCode?: CurrencyCodeValues | undefined;
  Purchase?: Purchase[] | undefined;
  TotalHourlyPrice?: string | undefined;
  TotalUpfrontPrice?: string | undefined;
}
export interface ReservedInstanceLimitPrice {
  Amount?: number | undefined;
  CurrencyCode?: CurrencyCodeValues | undefined;
}
export interface PurchaseReservedInstancesOfferingRequest {
  InstanceCount: number | undefined;
  ReservedInstancesOfferingId: string | undefined;
  PurchaseTime?: Date | undefined;
  DryRun?: boolean | undefined;
  LimitPrice?: ReservedInstanceLimitPrice | undefined;
}
export interface PurchaseReservedInstancesOfferingResult {
  ReservedInstancesId?: string | undefined;
}
export interface PurchaseRequest {
  InstanceCount: number | undefined;
  PurchaseToken: string | undefined;
}
export interface PurchaseScheduledInstancesRequest {
  ClientToken?: string | undefined;
  DryRun?: boolean | undefined;
  PurchaseRequests: PurchaseRequest[] | undefined;
}
export interface PurchaseScheduledInstancesResult {
  ScheduledInstanceSet?: ScheduledInstance[] | undefined;
}
export interface RebootInstancesRequest {
  InstanceIds: string[] | undefined;
  DryRun?: boolean | undefined;
}
export interface RegisterImageRequest {
  ImageLocation?: string | undefined;
  BillingProducts?: string[] | undefined;
  BootMode?: BootModeValues | undefined;
  TpmSupport?: TpmSupportValues | undefined;
  UefiData?: string | undefined;
  ImdsSupport?: ImdsSupportValues | undefined;
  TagSpecifications?: TagSpecification[] | undefined;
  DryRun?: boolean | undefined;
  Name: string | undefined;
  Description?: string | undefined;
  Architecture?: ArchitectureValues | undefined;
  KernelId?: string | undefined;
  RamdiskId?: string | undefined;
  RootDeviceName?: string | undefined;
  BlockDeviceMappings?: BlockDeviceMapping[] | undefined;
  VirtualizationType?: string | undefined;
  SriovNetSupport?: string | undefined;
  EnaSupport?: boolean | undefined;
}
export interface RegisterImageResult {
  ImageId?: string | undefined;
}
export interface RegisterInstanceTagAttributeRequest {
  IncludeAllTagsOfInstance?: boolean | undefined;
  InstanceTagKeys?: string[] | undefined;
}
export interface RegisterInstanceEventNotificationAttributesRequest {
  DryRun?: boolean | undefined;
  InstanceTagAttribute: RegisterInstanceTagAttributeRequest | undefined;
}
export interface RegisterInstanceEventNotificationAttributesResult {
  InstanceTagAttribute?: InstanceTagNotificationAttribute | undefined;
}
export interface RegisterTransitGatewayMulticastGroupMembersRequest {
  TransitGatewayMulticastDomainId: string | undefined;
  GroupIpAddress?: string | undefined;
  NetworkInterfaceIds: string[] | undefined;
  DryRun?: boolean | undefined;
}
export interface TransitGatewayMulticastRegisteredGroupMembers {
  TransitGatewayMulticastDomainId?: string | undefined;
  RegisteredNetworkInterfaceIds?: string[] | undefined;
  GroupIpAddress?: string | undefined;
}
export interface RegisterTransitGatewayMulticastGroupMembersResult {
  RegisteredMulticastGroupMembers?:
    | TransitGatewayMulticastRegisteredGroupMembers
    | undefined;
}
export interface RegisterTransitGatewayMulticastGroupSourcesRequest {
  TransitGatewayMulticastDomainId: string | undefined;
  GroupIpAddress?: string | undefined;
  NetworkInterfaceIds: string[] | undefined;
  DryRun?: boolean | undefined;
}
export interface TransitGatewayMulticastRegisteredGroupSources {
  TransitGatewayMulticastDomainId?: string | undefined;
  RegisteredNetworkInterfaceIds?: string[] | undefined;
  GroupIpAddress?: string | undefined;
}
export interface RegisterTransitGatewayMulticastGroupSourcesResult {
  RegisteredMulticastGroupSources?:
    | TransitGatewayMulticastRegisteredGroupSources
    | undefined;
}
export interface RejectCapacityReservationBillingOwnershipRequest {
  DryRun?: boolean | undefined;
  CapacityReservationId: string | undefined;
}
export interface RejectCapacityReservationBillingOwnershipResult {
  Return?: boolean | undefined;
}
export interface RejectTransitGatewayMulticastDomainAssociationsRequest {
  TransitGatewayMulticastDomainId?: string | undefined;
  TransitGatewayAttachmentId?: string | undefined;
  SubnetIds?: string[] | undefined;
  DryRun?: boolean | undefined;
}
export interface RejectTransitGatewayMulticastDomainAssociationsResult {
  Associations?: TransitGatewayMulticastDomainAssociations | undefined;
}
export interface RejectTransitGatewayPeeringAttachmentRequest {
  TransitGatewayAttachmentId: string | undefined;
  DryRun?: boolean | undefined;
}
export interface RejectTransitGatewayPeeringAttachmentResult {
  TransitGatewayPeeringAttachment?: TransitGatewayPeeringAttachment | undefined;
}
export interface RejectTransitGatewayVpcAttachmentRequest {
  TransitGatewayAttachmentId: string | undefined;
  DryRun?: boolean | undefined;
}
export interface RejectTransitGatewayVpcAttachmentResult {
  TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment | undefined;
}
export interface RejectVpcEndpointConnectionsRequest {
  DryRun?: boolean | undefined;
  ServiceId: string | undefined;
  VpcEndpointIds: string[] | undefined;
}
export interface RejectVpcEndpointConnectionsResult {
  Unsuccessful?: UnsuccessfulItem[] | undefined;
}
export interface RejectVpcPeeringConnectionRequest {
  DryRun?: boolean | undefined;
  VpcPeeringConnectionId: string | undefined;
}
export interface RejectVpcPeeringConnectionResult {
  Return?: boolean | undefined;
}
export interface ReleaseAddressRequest {
  AllocationId?: string | undefined;
  PublicIp?: string | undefined;
  NetworkBorderGroup?: string | undefined;
  DryRun?: boolean | undefined;
}
export interface ReleaseHostsRequest {
  HostIds: string[] | undefined;
}
export interface ReleaseHostsResult {
  Successful?: string[] | undefined;
  Unsuccessful?: UnsuccessfulItem[] | undefined;
}
export interface ReleaseIpamPoolAllocationRequest {
  DryRun?: boolean | undefined;
  IpamPoolId: string | undefined;
  Cidr: string | undefined;
  IpamPoolAllocationId: string | undefined;
}
export interface ReleaseIpamPoolAllocationResult {
  Success?: boolean | undefined;
}
export interface ReplaceIamInstanceProfileAssociationRequest {
  IamInstanceProfile: IamInstanceProfileSpecification | undefined;
  AssociationId: string | undefined;
}
export interface ReplaceIamInstanceProfileAssociationResult {
  IamInstanceProfileAssociation?: IamInstanceProfileAssociation | undefined;
}
export interface ImageCriterionRequest {
  ImageProviders?: string[] | undefined;
}
export interface ReplaceImageCriteriaInAllowedImagesSettingsRequest {
  ImageCriteria?: ImageCriterionRequest[] | undefined;
  DryRun?: boolean | undefined;
}
export interface ReplaceImageCriteriaInAllowedImagesSettingsResult {
  ReturnValue?: boolean | undefined;
}
export interface ReplaceNetworkAclAssociationRequest {
  DryRun?: boolean | undefined;
  AssociationId: string | undefined;
  NetworkAclId: string | undefined;
}
export interface ReplaceNetworkAclAssociationResult {
  NewAssociationId?: string | undefined;
}
export interface ReplaceNetworkAclEntryRequest {
  DryRun?: boolean | undefined;
  NetworkAclId: string | undefined;
  RuleNumber: number | undefined;
  Protocol: string | undefined;
  RuleAction: RuleAction | undefined;
  Egress: boolean | undefined;
  CidrBlock?: string | undefined;
  Ipv6CidrBlock?: string | undefined;
  IcmpTypeCode?: IcmpTypeCode | undefined;
  PortRange?: PortRange | undefined;
}
export interface ReplaceRouteRequest {
  DestinationPrefixListId?: string | undefined;
  VpcEndpointId?: string | undefined;
  LocalTarget?: boolean | undefined;
  TransitGatewayId?: string | undefined;
  LocalGatewayId?: string | undefined;
  CarrierGatewayId?: string | undefined;
  CoreNetworkArn?: string | undefined;
  DryRun?: boolean | undefined;
  RouteTableId: string | undefined;
  DestinationCidrBlock?: string | undefined;
  GatewayId?: string | undefined;
  DestinationIpv6CidrBlock?: string | undefined;
  EgressOnlyInternetGatewayId?: string | undefined;
  InstanceId?: string | undefined;
  NetworkInterfaceId?: string | undefined;
  VpcPeeringConnectionId?: string | undefined;
  NatGatewayId?: string | undefined;
}
export interface ReplaceRouteTableAssociationRequest {
  DryRun?: boolean | undefined;
  AssociationId: string | undefined;
  RouteTableId: string | undefined;
}
export interface ReplaceRouteTableAssociationResult {
  NewAssociationId?: string | undefined;
  AssociationState?: RouteTableAssociationState | undefined;
}
export interface ReplaceTransitGatewayRouteRequest {
  DestinationCidrBlock: string | undefined;
  TransitGatewayRouteTableId: string | undefined;
  TransitGatewayAttachmentId?: string | undefined;
  Blackhole?: boolean | undefined;
  DryRun?: boolean | undefined;
}
export interface ReplaceTransitGatewayRouteResult {
  Route?: TransitGatewayRoute | undefined;
}
export interface ReplaceVpnTunnelRequest {
  VpnConnectionId: string | undefined;
  VpnTunnelOutsideIpAddress: string | undefined;
  ApplyPendingMaintenance?: boolean | undefined;
  DryRun?: boolean | undefined;
}
export interface ReplaceVpnTunnelResult {
  Return?: boolean | undefined;
}
export declare const ReportInstanceReasonCodes: {
  readonly instance_stuck_in_state: "instance-stuck-in-state";
  readonly not_accepting_credentials: "not-accepting-credentials";
  readonly other: "other";
  readonly password_not_available: "password-not-available";
  readonly performance_ebs_volume: "performance-ebs-volume";
  readonly performance_instance_store: "performance-instance-store";
  readonly performance_network: "performance-network";
  readonly performance_other: "performance-other";
  readonly unresponsive: "unresponsive";
};
export type ReportInstanceReasonCodes =
  (typeof ReportInstanceReasonCodes)[keyof typeof ReportInstanceReasonCodes];
export declare const ReportStatusType: {
  readonly impaired: "impaired";
  readonly ok: "ok";
};
export type ReportStatusType =
  (typeof ReportStatusType)[keyof typeof ReportStatusType];
export interface ReportInstanceStatusRequest {
  DryRun?: boolean | undefined;
  Instances: string[] | undefined;
  Status: ReportStatusType | undefined;
  StartTime?: Date | undefined;
  EndTime?: Date | undefined;
  ReasonCodes: ReportInstanceReasonCodes[] | undefined;
  Description?: string | undefined;
}
export declare const GetVpnConnectionDeviceSampleConfigurationResultFilterSensitiveLog: (
  obj: GetVpnConnectionDeviceSampleConfigurationResult
) => any;
export declare const ImageDiskContainerFilterSensitiveLog: (
  obj: ImageDiskContainer
) => any;
export declare const ImportImageRequestFilterSensitiveLog: (
  obj: ImportImageRequest
) => any;
export declare const ImportImageResultFilterSensitiveLog: (
  obj: ImportImageResult
) => any;
export declare const DiskImageDetailFilterSensitiveLog: (
  obj: DiskImageDetail
) => any;
export declare const DiskImageFilterSensitiveLog: (obj: DiskImage) => any;
export declare const UserDataFilterSensitiveLog: (obj: UserData) => any;
export declare const ImportInstanceLaunchSpecificationFilterSensitiveLog: (
  obj: ImportInstanceLaunchSpecification
) => any;
export declare const ImportInstanceRequestFilterSensitiveLog: (
  obj: ImportInstanceRequest
) => any;
export declare const ImportInstanceResultFilterSensitiveLog: (
  obj: ImportInstanceResult
) => any;
export declare const SnapshotDiskContainerFilterSensitiveLog: (
  obj: SnapshotDiskContainer
) => any;
export declare const ImportSnapshotRequestFilterSensitiveLog: (
  obj: ImportSnapshotRequest
) => any;
export declare const ImportSnapshotResultFilterSensitiveLog: (
  obj: ImportSnapshotResult
) => any;
export declare const ImportVolumeRequestFilterSensitiveLog: (
  obj: ImportVolumeRequest
) => any;
export declare const ImportVolumeResultFilterSensitiveLog: (
  obj: ImportVolumeResult
) => any;
export declare const ModifyVerifiedAccessNativeApplicationOidcOptionsFilterSensitiveLog: (
  obj: ModifyVerifiedAccessNativeApplicationOidcOptions
) => any;
export declare const ModifyVerifiedAccessTrustProviderOidcOptionsFilterSensitiveLog: (
  obj: ModifyVerifiedAccessTrustProviderOidcOptions
) => any;
export declare const ModifyVerifiedAccessTrustProviderRequestFilterSensitiveLog: (
  obj: ModifyVerifiedAccessTrustProviderRequest
) => any;
export declare const ModifyVerifiedAccessTrustProviderResultFilterSensitiveLog: (
  obj: ModifyVerifiedAccessTrustProviderResult
) => any;
export declare const ModifyVpnConnectionResultFilterSensitiveLog: (
  obj: ModifyVpnConnectionResult
) => any;
export declare const ModifyVpnConnectionOptionsResultFilterSensitiveLog: (
  obj: ModifyVpnConnectionOptionsResult
) => any;
export declare const ModifyVpnTunnelCertificateResultFilterSensitiveLog: (
  obj: ModifyVpnTunnelCertificateResult
) => any;
export declare const ModifyVpnTunnelOptionsSpecificationFilterSensitiveLog: (
  obj: ModifyVpnTunnelOptionsSpecification
) => any;
export declare const ModifyVpnTunnelOptionsRequestFilterSensitiveLog: (
  obj: ModifyVpnTunnelOptionsRequest
) => any;
export declare const ModifyVpnTunnelOptionsResultFilterSensitiveLog: (
  obj: ModifyVpnTunnelOptionsResult
) => any;
export declare const ReportInstanceStatusRequestFilterSensitiveLog: (
  obj: ReportInstanceStatusRequest
) => any;
