diff --git a/clients/client-devops-guru/src/DevOpsGuru.ts b/clients/client-devops-guru/src/DevOpsGuru.ts index 4efc47d77778..97045d465e5d 100644 --- a/clients/client-devops-guru/src/DevOpsGuru.ts +++ b/clients/client-devops-guru/src/DevOpsGuru.ts @@ -451,8 +451,9 @@ export class DevOpsGuru extends DevOpsGuruClient { /** *
Returns the number of open proactive insights, open reactive insights, and the Mean Time to Recover (MTTR) * for all closed insights in resource collections in your account. You specify the type of - * Amazon Web Services resources collection. The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * Amazon Web Services resources collection. The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ public describeResourceCollectionHealth( args: DescribeResourceCollectionHealthCommandInput, @@ -555,8 +556,9 @@ export class DevOpsGuru extends DevOpsGuruClient { /** *Returns lists Amazon Web Services resources that are of the specified resource collection type. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ public getResourceCollection( args: GetResourceCollectionCommandInput, @@ -880,12 +882,12 @@ export class DevOpsGuru extends DevOpsGuruClient { /** * Returns a list of insights in your organization. You can specify which insights are
* returned by their start time, one or more statuses (ONGOING
,
- * CLOSED
, and CLOSED
), one or more severities
- * (LOW
, MEDIUM
, and HIGH
), and type
- * (REACTIVE
or PROACTIVE
).
CLOSED
, and CLOSED
), one or more severities
+ * (LOW
, MEDIUM
, and HIGH
), and type
+ * (REACTIVE
or PROACTIVE
).
* Use the Filters
parameter to specify status and severity search
* parameters. Use the Type
parameter to specify REACTIVE
or
- * PROACTIVE
in your search.
PROACTIVE
in your search.
*/
public searchOrganizationInsights(
args: SearchOrganizationInsightsCommandInput,
@@ -951,8 +953,9 @@ export class DevOpsGuru extends DevOpsGuruClient {
/**
* Updates the collection of resources that DevOps Guru analyzes. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks. This method also creates the IAM role required for + * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. This method also creates the IAM role required for * you to use DevOps Guru.
*/ public updateResourceCollection( diff --git a/clients/client-devops-guru/src/commands/DescribeResourceCollectionHealthCommand.ts b/clients/client-devops-guru/src/commands/DescribeResourceCollectionHealthCommand.ts index 15bbc1f692b0..0e7e56c6e793 100644 --- a/clients/client-devops-guru/src/commands/DescribeResourceCollectionHealthCommand.ts +++ b/clients/client-devops-guru/src/commands/DescribeResourceCollectionHealthCommand.ts @@ -26,8 +26,9 @@ export interface DescribeResourceCollectionHealthCommandOutput /** *Returns the number of open proactive insights, open reactive insights, and the Mean Time to Recover (MTTR) * for all closed insights in resource collections in your account. You specify the type of - * Amazon Web Services resources collection. The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * Amazon Web Services resources collection. The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-devops-guru/src/commands/GetResourceCollectionCommand.ts b/clients/client-devops-guru/src/commands/GetResourceCollectionCommand.ts index 7ecaabe90af6..72d157086a8e 100644 --- a/clients/client-devops-guru/src/commands/GetResourceCollectionCommand.ts +++ b/clients/client-devops-guru/src/commands/GetResourceCollectionCommand.ts @@ -23,8 +23,9 @@ export interface GetResourceCollectionCommandOutput extends GetResourceCollectio /** *Returns lists Amazon Web Services resources that are of the specified resource collection type. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. * @example * Use a bare-bones client and the command you need to make an API call. * ```javascript diff --git a/clients/client-devops-guru/src/commands/SearchOrganizationInsightsCommand.ts b/clients/client-devops-guru/src/commands/SearchOrganizationInsightsCommand.ts index 3b3af2d45e84..6dd3afc75d8d 100644 --- a/clients/client-devops-guru/src/commands/SearchOrganizationInsightsCommand.ts +++ b/clients/client-devops-guru/src/commands/SearchOrganizationInsightsCommand.ts @@ -24,12 +24,12 @@ export interface SearchOrganizationInsightsCommandOutput extends SearchOrganizat /** * Returns a list of insights in your organization. You can specify which insights are
* returned by their start time, one or more statuses (ONGOING
,
- * CLOSED
, and CLOSED
), one or more severities
- * (LOW
, MEDIUM
, and HIGH
), and type
- * (REACTIVE
or PROACTIVE
).
CLOSED
, and CLOSED
), one or more severities
+ * (LOW
, MEDIUM
, and HIGH
), and type
+ * (REACTIVE
or PROACTIVE
).
* Use the Filters
parameter to specify status and severity search
* parameters. Use the Type
parameter to specify REACTIVE
or
- * PROACTIVE
in your search.
PROACTIVE
in your search.
* @example
* Use a bare-bones client and the command you need to make an API call.
* ```javascript
diff --git a/clients/client-devops-guru/src/commands/UpdateResourceCollectionCommand.ts b/clients/client-devops-guru/src/commands/UpdateResourceCollectionCommand.ts
index 695b5cf2add3..1ce128abdd36 100644
--- a/clients/client-devops-guru/src/commands/UpdateResourceCollectionCommand.ts
+++ b/clients/client-devops-guru/src/commands/UpdateResourceCollectionCommand.ts
@@ -23,8 +23,9 @@ export interface UpdateResourceCollectionCommandOutput extends UpdateResourceCol
/**
* Updates the collection of resources that DevOps Guru analyzes. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks. This method also creates the IAM role required for + * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. This method also creates the IAM role required for * you to use DevOps Guru.
* @example * Use a bare-bones client and the command you need to make an API call. diff --git a/clients/client-devops-guru/src/models/models_0.ts b/clients/client-devops-guru/src/models/models_0.ts index bdef64bf006b..14013e70be87 100644 --- a/clients/client-devops-guru/src/models/models_0.ts +++ b/clients/client-devops-guru/src/models/models_0.ts @@ -321,7 +321,9 @@ export namespace ValidationExceptionField { export enum ValidationExceptionReason { CANNOT_PARSE = "CANNOT_PARSE", FIELD_VALIDATION_FAILED = "FIELD_VALIDATION_FAILED", + INVALID_PARAMETER_COMBINATION = "INVALID_PARAMETER_COMBINATION", OTHER = "OTHER", + PARAMETER_INCONSISTENT_WITH_SERVICE_STATE = "PARAMETER_INCONSISTENT_WITH_SERVICE_STATE", UNKNOWN_OPERATION = "UNKNOWN_OPERATION", } @@ -383,6 +385,33 @@ export namespace AnomalyReportedTimeRange { }); } +/** + *The Amazon Web Services resources in which DevOps Guru detected unusual behavior that resulted in + * the generation of an anomaly. When DevOps Guru detects multiple related anomalies, it creates + * and insight with details about the anomalous behavior and suggestions about how to correct the + * problem.
+ */ +export interface AnomalyResource { + /** + *The name of the Amazon Web Services resource.
+ */ + Name?: string; + + /** + *The type of the Amazon Web Services resource.
+ */ + Type?: string; +} + +export namespace AnomalyResource { + /** + * @internal + */ + export const filterSensitiveLog = (obj: AnomalyResource): any => ({ + ...obj, + }); +} + export enum AnomalySeverity { HIGH = "HIGH", LOW = "LOW", @@ -390,7 +419,7 @@ export enum AnomalySeverity { } /** - *The dimension of a Amazon CloudWatch metric that is used when DevOps Guru analyzes the resources in + *
The dimension of am Amazon CloudWatch metric that is used when DevOps Guru analyzes the resources in * your account for operational problems and anomalous behavior. A dimension is a * name/value pair that is part of the identity of a metric. A metric can have up to 10 * dimensions. For more information, see Dimensions in the Amazon CloudWatch User Guide.
@@ -452,13 +481,13 @@ export namespace TimestampMetricValuePair { */ export interface CloudWatchMetricsDataSummary { /** - *This is a list of cloudwatch metric values at given timestamp.
+ *This is a list of Amazon CloudWatch metric values at given timestamp.
*/ TimestampMetricValuePairList?: TimestampMetricValuePair[]; /** - *This is enum of the status showing whether the metric value pair list has Partial or - * Complete data or there was an error.
+ *This is an enum of the status showing whether the metric value pair list has partial or + * complete data, or if there was an error.
*/ StatusCode?: CloudWatchMetricDataStatusCode | string; } @@ -535,16 +564,472 @@ export namespace CloudWatchMetricsDetail { }); } +/** + *A logical grouping of Performance Insights metrics for a related subject area. For example, the
+ * db.sql
dimension group consists of the following dimensions:
+ * db.sql.id
, db.sql.db_id
, db.sql.statement
, and
+ * db.sql.tokenized_id
.
Each response element returns a maximum of 500 bytes. For larger elements, such as SQL statements, + * only the first 500 bytes are returned.
+ *Amazon RDS Performance Insights enables you to monitor and explore different + * dimensions of database load based on data captured from a running DB instance. + * DB load is measured as average active sessions. Performance Insights provides the + * data to API consumers as a two-dimensional time-series dataset. The time dimension + * provides DB load data for each time point in the queried time range. Each time point + * decomposes overall load in relation to the requested dimensions, measured at that + * time point. Examples include SQL, Wait event, User, and Host.
+ * + *To learn more about Performance Insights and Amazon Aurora DB instances, go to the Amazon Aurora User Guide. + *
+ *To learn more about Performance Insights and Amazon RDS DB instances, go to the Amazon RDS User Guide. + *
+ *The name of the dimension group. Its valid values are:
+ * + *
+ * db
- The name of the database to which the client is connected (only Aurora PostgreSQL, Amazon RDS PostgreSQL,
+ * Aurora MySQL, Amazon RDS MySQL, and MariaDB)
+ * db.application
- The name of the application that is connected to the database (only Aurora
+ * PostgreSQL and RDS PostgreSQL)
+ * db.host
- The host name of the connected client (all engines)
+ * db.session_type
- The type of the current session (only Aurora PostgreSQL and RDS PostgreSQL)
+ * db.sql
- The SQL that is currently executing (all engines)
+ * db.sql_tokenized
- The SQL digest (all engines)
+ * db.wait_event
- The event for which the database backend is waiting (all engines)
+ * db.wait_event_type
- The type of event for which the database backend is waiting (all engines)
+ * db.user
- The user logged in to the database (all engines)
A list of specific dimensions from a dimension group. If this parameter is not present, + * then it signifies that all of the dimensions in the group were requested or are present in + * the response.
+ *Valid values for elements in the Dimensions
array are:
+ * db.application.name
- The name of the application that is connected to the database (only
+ * Aurora PostgreSQL and RDS PostgreSQL)
+ * db.host.id
- The host ID of the connected client (all engines)
+ * db.host.name
- The host name of the connected client (all engines)
+ * db.name
- The name of the database to which the client is connected (only Aurora PostgreSQL, Amazon RDS
+ * PostgreSQL, Aurora MySQL, Amazon RDS MySQL, and MariaDB)
+ * db.session_type.name
- The type of the current session (only Aurora PostgreSQL and RDS PostgreSQL)
+ * db.sql.id
- The SQL ID generated by Performance Insights (all engines)
+ * db.sql.db_id
- The SQL ID generated by the database (all engines)
+ * db.sql.statement
- The SQL text that is being executed (all engines)
+ * db.sql.tokenized_id
+ *
+ * db.sql_tokenized.id
- The SQL digest ID generated by Performance Insights (all engines)
+ * db.sql_tokenized.db_id
- SQL digest ID generated by the database (all engines)
+ * db.sql_tokenized.statement
- The SQL digest text (all engines)
+ * db.user.id
- The ID of the user logged in to the database (all engines)
+ * db.user.name
- The name of the user logged in to the database (all engines)
+ * db.wait_event.name
- The event for which the backend is waiting (all engines)
+ * db.wait_event.type
- The type of event for which the backend is waiting (all engines)
+ * db.wait_event_type.name
- The name of the event type for which the backend is waiting (all
+ * engines)
The maximum number of items to fetch for this dimension group.
+ */ + Limit?: number; +} + +export namespace PerformanceInsightsMetricDimensionGroup { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PerformanceInsightsMetricDimensionGroup): any => ({ + ...obj, + }); +} + +/** + *A single query to be processed. Use these parameters to
+ * query the Performance Insights GetResourceMetrics
API to retrieve the metrics
+ * for an anomaly. For more information, see
+ * GetResourceMetrics
+ *
+ * in the Amazon RDS Performance Insights API Reference.
Amazon RDS Performance Insights enables you to monitor and explore different + * dimensions of database load based on data captured from a running DB instance. + * DB load is measured as average active sessions. Performance Insights provides the + * data to API consumers as a two-dimensional time-series dataset. The time dimension + * provides DB load data for each time point in the queried time range. Each time point + * decomposes overall load in relation to the requested dimensions, measured at that + * time point. Examples include SQL, Wait event, User, and Host.
+ * + *To learn more about Performance Insights and Amazon Aurora DB instances, go to the Amazon Aurora User Guide. + *
+ *To learn more about Performance Insights and Amazon RDS DB instances, go to the Amazon RDS User Guide. + *
+ *The name of the meteric used used when querying an Performance Insights GetResourceMetrics
API for
+ * anomaly metrics.
Valid values for Metric
are:
+ * db.load.avg
- a scaled representation of the number of active sessions
+ * for the database engine.
+ * db.sampledload.avg
- the raw number of active sessions for the
+ * database engine.
If the number of active sessions is less than an internal Performance Insights threshold, db.load.avg
and db.sampledload.avg
+ * are the same value. If the number of active sessions is greater than the internal threshold, Performance Insights samples the active sessions, with db.load.avg
+ * showing the scaled values, db.sampledload.avg
showing the raw values, and db.sampledload.avg
less than db.load.avg
.
+ * For most use cases, you can query db.load.avg
only.
The specification for how to aggregate the data points from a Performance Insights GetResourceMetrics
API query. The
+ * Performance Insights query returns all of the dimensions within that group,
+ * unless you provide the names of specific dimensions within that group. You can also request
+ * that Performance Insights return a limited number of values for a dimension.
One or more filters to apply to a Performance Insights GetResourceMetrics
API query. Restrictions:
Any number of filters by the same dimension, as specified in the GroupBy
parameter.
A single filter for any other dimension in this dimension group.
+ *Information about a reference metric used to evaluate Performance Insights.
+ */ +export interface PerformanceInsightsReferenceMetric { + /** + *A query to be processed on the metric.
+ */ + MetricQuery?: PerformanceInsightsMetricQuery; +} + +export namespace PerformanceInsightsReferenceMetric { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PerformanceInsightsReferenceMetric): any => ({ + ...obj, + }); +} + +/** + *A reference value to compare Performance Insights metrics against to determine if the metrics + * demonstrate anomalous behavior.
+ */ +export interface PerformanceInsightsReferenceScalar { + /** + *The reference value.
+ */ + Value?: number; +} + +export namespace PerformanceInsightsReferenceScalar { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PerformanceInsightsReferenceScalar): any => ({ + ...obj, + }); +} + +/** + *Reference scalar values and other metrics that DevOps Guru displays on a graph in its console along with the actual metrics it + * analyzed. Compare these reference values to your actual metrics to help you understand anomalous behavior that DevOps Guru detected.
+ */ +export interface PerformanceInsightsReferenceComparisonValues { + /** + *A scalar value DevOps Guru for a metric that DevOps Guru compares to actual metric values. This reference value is used + * to determine if an actual metric value should be considered anomalous.
+ */ + ReferenceScalar?: PerformanceInsightsReferenceScalar; + + /** + *A metric that DevOps Guru compares to actual metric values. This reference metric is used + * to determine if an actual metric should be considered anomalous.
+ */ + ReferenceMetric?: PerformanceInsightsReferenceMetric; +} + +export namespace PerformanceInsightsReferenceComparisonValues { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PerformanceInsightsReferenceComparisonValues): any => ({ + ...obj, + }); +} + +/** + *Reference data used to evaluate Performance Insights to determine if its performance + * is anomalous or not.
+ */ +export interface PerformanceInsightsReferenceData { + /** + *The name of the reference data.
+ */ + Name?: string; + + /** + *The specific reference values used to evaluate the Performance Insights. For more information, see
+ *
+ * PerformanceInsightsReferenceComparisonValues
+ *
.
+ *
A statistic in a Performance Insights collection.
+ */ +export interface PerformanceInsightsStat { + /** + *The statistic type.
+ */ + Type?: string; + + /** + *The value of the statistic.
+ */ + Value?: number; +} + +export namespace PerformanceInsightsStat { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PerformanceInsightsStat): any => ({ + ...obj, + }); +} + +/** + *Details about Performance Insights metrics.
+ * + *Amazon RDS Performance Insights enables you to monitor and explore different + * dimensions of database load based on data captured from a running DB instance. + * DB load is measured as average active sessions. Performance Insights provides the + * data to API consumers as a two-dimensional time-series dataset. The time dimension + * provides DB load data for each time point in the queried time range. Each time point + * decomposes overall load in relation to the requested dimensions, measured at that + * time point. Examples include SQL, Wait event, User, and Host.
+ * + *To learn more about Performance Insights and Amazon Aurora DB instances, go to the Amazon Aurora User Guide. + *
+ *To learn more about Performance Insights and Amazon RDS DB instances, go to the Amazon RDS User Guide. + *
+ *The name used for a specific Performance Insights metric.
+ */ + MetricDisplayName?: string; + + /** + *The unit of measure for a metric. For example, a session or a process.
+ */ + Unit?: string; + + /** + *A single query to be processed for the metric. For more information, see
+ *
+ * PerformanceInsightsMetricQuery
+ *
.
+ * For more information, see
+ *
+ * PerformanceInsightsReferenceData
+ *
.
+ *
The metric statistics during the anomalous period detected by DevOps Guru;
+ */ + StatsAtAnomaly?: PerformanceInsightsStat[]; + + /** + *Typical metric statistics that are not considered anomalous. When DevOps Guru analyzes
+ * metrics, it compares them to StatsAtBaseline
to help determine if they are
+ * anomalous.
Details about the source of the anomalous operational data that triggered the - * anomaly. The one supported source is Amazon CloudWatch metrics.
+ * anomaly. */ export interface AnomalySourceDetails { /** - * An array of CloudWatchMetricsDetail
object that contains information
- * about the analyzed metrics that displayed anomalous behavior.
An array of CloudWatchMetricsDetail
objects that contain information
+ * about analyzed CloudWatch metrics that show anomalous behavior.
An array of PerformanceInsightsMetricsDetail
objects that contain information
+ * about analyzed Performance Insights metrics that show anomalous behavior.
A collection of Amazon Web Services stags.
+ *Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support + * tagging, so you can assign the same tag to resources from different services to indicate + * that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB + * table resource that you assign to an Lambda function. For more information about + * using tags, see the Tagging + * best practices whitepaper.
+ *Each Amazon Web Services tag has two parts.
+ *A tag key (for example, CostCenter
,
+ * Environment
, Project
, or Secret
). Tag
+ * keys are case-sensitive.
An optional field known as a tag value (for example,
+ * 111122223333
, Production
, or a team
+ * name). Omitting the tag value is the same as using an empty
+ * string. Like tag keys, tag values are
+ * case-sensitive.
Together these are known as key-value pairs.
+ *The string used for a key in a tag that you use to define your resource coverage must begin with the
+ * prefix Devops-guru-
. The tag key might be
+ * Devops-guru-deployment-application
or
+ * Devops-guru-rds-application
. While keys are case-sensitive, the
+ * case of key characters don't matter to DevOps Guru. For example, DevOps Guru works with a
+ * key named devops-guru-rds
and a key named
+ * DevOps-Guru-RDS
. Possible key/value pairs in your
+ * application might be Devops-Guru-production-application/RDS
or
+ * Devops-Guru-production-application/containers
.
An Amazon Web Services tag key that is used to identify the Amazon Web Services resources that + * DevOps Guru analyzes. All Amazon Web Services resources in your account and Region tagged with this key make + * up your DevOps Guru application and analysis boundary.
+ *The string used for a key in a tag that you use to define your resource coverage must begin with the
+ * prefix Devops-guru-
. The tag key might be
+ * Devops-guru-deployment-application
or
+ * Devops-guru-rds-application
. While keys are case-sensitive, the
+ * case of key characters don't matter to DevOps Guru. For example, DevOps Guru works with a
+ * key named devops-guru-rds
and a key named
+ * DevOps-Guru-RDS
. Possible key/value pairs in your
+ * application might be Devops-Guru-production-application/RDS
or
+ * Devops-Guru-production-application/containers
.
The values in an Amazon Web Services tag collection.
+ *The tag's value is an optional field used to associate a string with
+ * the tag key (for example, 111122223333
, Production
, or a team
+ * name). The key and value are the tag's key pair.
+ * Omitting the tag value is the same as using an empty
+ * string. Like tag keys, tag values are
+ * case-sensitive. You can specify a maximum of 256 characters for a tag value.
A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ export interface ResourceCollection { /** @@ -767,6 +1334,44 @@ export interface ResourceCollection { * DevOps Guru analyzes. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ CloudFormation?: CloudFormationCollection; + + /** + *The Amazon Web Services tags that are used by resources in the resource collection.
+ *Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support + * tagging, so you can assign the same tag to resources from different services to indicate + * that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB + * table resource that you assign to an Lambda function. For more information about + * using tags, see the Tagging + * best practices whitepaper.
+ *Each Amazon Web Services tag has two parts.
+ *A tag key (for example, CostCenter
,
+ * Environment
, Project
, or Secret
). Tag
+ * keys are case-sensitive.
An optional field known as a tag value (for example,
+ * 111122223333
, Production
, or a team
+ * name). Omitting the tag value is the same as using an empty
+ * string. Like tag keys, tag values are
+ * case-sensitive.
Together these are known as key-value pairs.
+ *The string used for a key in a tag that you use to define your resource coverage must begin with the
+ * prefix Devops-guru-
. The tag key might be
+ * Devops-guru-deployment-application
or
+ * Devops-guru-rds-application
. While keys are case-sensitive, the
+ * case of key characters don't matter to DevOps Guru. For example, DevOps Guru works with a
+ * key named devops-guru-rds
and a key named
+ * DevOps-Guru-RDS
. Possible key/value pairs in your
+ * application might be Devops-Guru-production-application/RDS
or
+ * Devops-Guru-production-application/containers
.
The severity of a proactive anomaly.
+ *The severity of the anomaly. The severity of anomalies that generate + * an insight determine that insight's severity. For more information, see + * Understanding + * insight severities in the Amazon DevOps Guru User Guide.
*/ Severity?: AnomalySeverity | string; @@ -812,7 +1420,7 @@ export interface ProactiveAnomaly { /** *
- * A AnomalyReportedTimeRange
object that specifies the time range between when the anomaly is opened and the time when it is closed.
+ * An AnomalyReportedTimeRange
object that specifies the time range between when the anomaly is opened and the time when it is closed.
*
A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; @@ -869,7 +1478,10 @@ export interface ReactiveAnomaly { Id?: string; /** - *The severity of the anomaly.
+ *The severity of the anomaly. The severity of anomalies that generate + * an insight determine that insight's severity. For more information, see + * Understanding + * insight severities in the Amazon DevOps Guru User Guide.
*/ Severity?: AnomalySeverity | string; @@ -887,7 +1499,7 @@ export interface ReactiveAnomaly { /** *
- * A AnomalyReportedTimeRange
object that specifies the time range between when the anomaly is opened and the time when it is closed.
+ * An AnomalyReportedTimeRange
object that specifies the time range between when the anomaly is opened and the time when it is closed.
*
A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; + + /** + *The type of the reactive anomaly. It can be one of the following types.
+ *
+ * CAUSAL
- the anomaly can cause a new insight.
+ * CONTEXTUAL
- the anomaly contains additional information about an insight or its causal anomaly.
The name of the reactive anomaly.
+ */ + Name?: string; + + /** + *A description of the reactive anomaly.
+ */ + Description?: string; + + /** + *The ID of the causal anomaly that is associated with this + * reactive anomaly. The ID of a `CAUSAL` anomaly is always `NULL`.
+ */ + CausalAnomalyId?: string; + + /** + *The Amazon Web Services resources in which anomalous behavior was detected by DevOps Guru.
+ */ + AnomalyResources?: AnomalyResource[]; } export namespace ReactiveAnomaly { @@ -923,12 +1572,12 @@ export namespace ReactiveAnomaly { export interface DescribeAnomalyResponse { /** - * A ReactiveAnomaly
object that represents the requested anomaly.
A ProactiveAnomaly
object that represents the requested anomaly.
A ProactiveAnomaly
object that represents the requested anomaly.
A ReactiveAnomaly
object that represents the requested anomaly.
The severity of the proactive insight.
+ *The severity of the insight. For more information, see + * Understanding + * insight severities in the Amazon DevOps Guru User Guide.
*/ Severity?: InsightSeverity | string; @@ -1102,8 +1753,9 @@ export interface ProactiveInsight { /** *A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; @@ -1139,7 +1791,9 @@ export interface ReactiveInsight { Name?: string; /** - *The severity of a reactive insight.
+ *The severity of the insight. For more information, see + * Understanding + * insight severities in the Amazon DevOps Guru User Guide.
*/ Severity?: InsightSeverity | string; @@ -1156,8 +1810,9 @@ export interface ReactiveInsight { /** *A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; @@ -1321,8 +1976,9 @@ export enum OrganizationResourceCollectionType { export interface DescribeOrganizationResourceCollectionHealthRequest { /** *An Amazon Web Services resource collection type. This type specifies how analyzed Amazon Web Services resources - * are defined. The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * are defined. The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ OrganizationResourceCollectionType: OrganizationResourceCollectionType | string | undefined; @@ -1497,7 +2153,7 @@ export namespace ServiceHealth { export interface DescribeOrganizationResourceCollectionHealthResponse { /** *The returned CloudFormationHealthOverview
object that contains an
- * InsightHealthOverview
object with the requested system health
+ * InsightHealthOverview
object with the requested system health
* information.
An Amazon Web Services resource collection type. This type specifies how analyzed Amazon Web Services resources - * are defined. The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * are defined. The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollectionType: ResourceCollectionType | string | undefined; @@ -1558,13 +2216,64 @@ export namespace DescribeResourceCollectionHealthRequest { }); } +/** + *Information about the health of Amazon Web Services resources in your account that are specified by + * an Amazon Web Services tag key.
+ */ +export interface TagHealth { + /** + *An Amazon Web Services tag key that is used to identify the Amazon Web Services resources that + * DevOps Guru analyzes. All Amazon Web Services resources in your account and Region tagged with this key make + * up your DevOps Guru application and analysis boundary.
+ *The string used for a key in a tag that you use to define your resource coverage must begin with the
+ * prefix Devops-guru-
. The tag key might be
+ * Devops-guru-deployment-application
or
+ * Devops-guru-rds-application
. While keys are case-sensitive, the
+ * case of key characters don't matter to DevOps Guru. For example, DevOps Guru works with a
+ * key named devops-guru-rds
and a key named
+ * DevOps-Guru-RDS
. Possible key/value pairs in your
+ * application might be Devops-Guru-production-application/RDS
or
+ * Devops-Guru-production-application/containers
.
The value in an Amazon Web Services tag.
+ *The tag's value is an optional field used to associate a string with
+ * the tag key (for example, 111122223333
, Production
, or a team
+ * name). The key and value are the tag's key pair.
+ * Omitting the tag value is the same as using an empty
+ * string. Like tag keys, tag values are
+ * case-sensitive. You can specify a maximum of 256 characters for a tag value.
Information about the health of the Amazon Web Services resources in your account that are + * specified by an Amazon Web Services tag, including the number of open proactive, open reactive + * insights, and the Mean Time to Recover (MTTR) of closed insights.
+ */ + Insight?: InsightHealth; +} + +export namespace TagHealth { + /** + * @internal + */ + export const filterSensitiveLog = (obj: TagHealth): any => ({ + ...obj, + }); +} + export interface DescribeResourceCollectionHealthResponse { /** * The returned CloudFormationHealthOverview
object that contains an
* InsightHealthOverview
object with the requested system health
* information.
An array of ServiceHealth
objects that describes the health of the Amazon Web Services
@@ -1577,6 +2286,44 @@ export interface DescribeResourceCollectionHealthResponse {
* the next page of results for this operation. If there are no more pages, this value is null.
The Amazon Web Services tags that are used by resources in the resource collection.
+ *Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support + * tagging, so you can assign the same tag to resources from different services to indicate + * that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB + * table resource that you assign to an Lambda function. For more information about + * using tags, see the Tagging + * best practices whitepaper.
+ *Each Amazon Web Services tag has two parts.
+ *A tag key (for example, CostCenter
,
+ * Environment
, Project
, or Secret
). Tag
+ * keys are case-sensitive.
An optional field known as a tag value (for example,
+ * 111122223333
, Production
, or a team
+ * name). Omitting the tag value is the same as using an empty
+ * string. Like tag keys, tag values are
+ * case-sensitive.
Together these are known as key-value pairs.
+ *The string used for a key in a tag that you use to define your resource coverage must begin with the
+ * prefix Devops-guru-
. The tag key might be
+ * Devops-guru-deployment-application
or
+ * Devops-guru-rds-application
. While keys are case-sensitive, the
+ * case of key characters don't matter to DevOps Guru. For example, DevOps Guru works with a
+ * key named devops-guru-rds
and a key named
+ * DevOps-Guru-RDS
. Possible key/value pairs in your
+ * application might be Devops-Guru-production-application/RDS
or
+ * Devops-Guru-production-application/containers
.
Information about a collection of Amazon Web Services resources that are identified by an + * Amazon Web Services tag. This collection of resources is used to create a monthly cost estimate + * for DevOps Guru to analyze Amazon Web Services resources. The maximum number of tags you can specify for a + * cost estimate is one. The estimate created is for the cost to analyze the Amazon Web Services + * resources defined by the tag. For more information, see Stacks in the + * Amazon Web Services CloudFormation User Guide.
+ */ +export interface TagCostEstimationResourceCollectionFilter { + /** + *An Amazon Web Services tag key that is used to identify the Amazon Web Services resources that + * DevOps Guru analyzes. All Amazon Web Services resources in your account and Region tagged with this key make + * up your DevOps Guru application and analysis boundary.
+ *The string used for a key in a tag that you use to define your resource coverage must begin with the
+ * prefix Devops-guru-
. The tag key might be
+ * Devops-guru-deployment-application
or
+ * Devops-guru-rds-application
. While keys are case-sensitive, the
+ * case of key characters don't matter to DevOps Guru. For example, DevOps Guru works with a
+ * key named devops-guru-rds
and a key named
+ * DevOps-Guru-RDS
. Possible key/value pairs in your
+ * application might be Devops-Guru-production-application/RDS
or
+ * Devops-Guru-production-application/containers
.
The values in an Amazon Web Services tag collection.
+ *The tag's value is an optional field used to associate a string with
+ * the tag key (for example, 111122223333
, Production
, or a team
+ * name). The key and value are the tag's key pair.
+ * Omitting the tag value is the same as using an empty
+ * string. Like tag keys, tag values are
+ * case-sensitive. You can specify a maximum of 256 characters for a tag value.
Information about a filter used to specify which Amazon Web Services resources are analyzed to * create a monthly DevOps Guru cost estimate. For more information, @@ -1773,6 +2568,45 @@ export interface CostEstimationResourceCollectionFilter { * used to create a monthly estimate for DevOps Guru.
*/ CloudFormation?: CloudFormationCostEstimationResourceCollectionFilter; + + /** + *The Amazon Web Services tags used to filter the resource collection that is used for + * a cost estimate.
+ *Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support + * tagging, so you can assign the same tag to resources from different services to indicate + * that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB + * table resource that you assign to an Lambda function. For more information about + * using tags, see the Tagging + * best practices whitepaper.
+ *Each Amazon Web Services tag has two parts.
+ *A tag key (for example, CostCenter
,
+ * Environment
, Project
, or Secret
). Tag
+ * keys are case-sensitive.
An optional field known as a tag value (for example,
+ * 111122223333
, Production
, or a team
+ * name). Omitting the tag value is the same as using an empty
+ * string. Like tag keys, tag values are
+ * case-sensitive.
Together these are known as key-value pairs.
+ *The string used for a key in a tag that you use to define your resource coverage must begin with the
+ * prefix Devops-guru-
. The tag key might be
+ * Devops-guru-deployment-application
or
+ * Devops-guru-rds-application
. While keys are case-sensitive, the
+ * case of key characters don't matter to DevOps Guru. For example, DevOps Guru works with a
+ * key named devops-guru-rds
and a key named
+ * DevOps-Guru-RDS
. Possible key/value pairs in your
+ * application might be Devops-Guru-production-application/RDS
or
+ * Devops-Guru-production-application/containers
.
A collection of Amazon Web Services tags used to filter insights. This is used to return insights generated from + * only resources that contain the tags in the tag collection.
+ */ +export interface TagCollectionFilter { + /** + *An Amazon Web Services tag key that is used to identify the Amazon Web Services resources that + * DevOps Guru analyzes. All Amazon Web Services resources in your account and Region tagged with this key make + * up your DevOps Guru application and analysis boundary.
+ *The string used for a key in a tag that you use to define your resource coverage must begin with the
+ * prefix Devops-guru-
. The tag key might be
+ * Devops-guru-deployment-application
or
+ * Devops-guru-rds-application
. While keys are case-sensitive, the
+ * case of key characters don't matter to DevOps Guru. For example, DevOps Guru works with a
+ * key named devops-guru-rds
and a key named
+ * DevOps-Guru-RDS
. Possible key/value pairs in your
+ * application might be Devops-Guru-production-application/RDS
or
+ * Devops-Guru-production-application/containers
.
The values in an Amazon Web Services tag collection.
+ *The tag's value is an optional field used to associate a string with
+ * the tag key (for example, 111122223333
, Production
, or a team
+ * name). The key and value are the tag's key pair.
+ * Omitting the tag value is the same as using an empty
+ * string. Like tag keys, tag values are
+ * case-sensitive. You can specify a maximum of 256 characters for a tag value.
Information about a filter used to specify which Amazon Web Services resources are analyzed for * anomalous behavior by DevOps Guru.
@@ -1918,6 +2796,44 @@ export interface ResourceCollectionFilter { * Amazon Web Services CloudFormation User Guide. */ CloudFormation?: CloudFormationCollectionFilter; + + /** + *The Amazon Web Services tags used to filter the resources in the resource collection.
+ *Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support + * tagging, so you can assign the same tag to resources from different services to indicate + * that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB + * table resource that you assign to an Lambda function. For more information about + * using tags, see the Tagging + * best practices whitepaper.
+ *Each Amazon Web Services tag has two parts.
+ *A tag key (for example, CostCenter
,
+ * Environment
, Project
, or Secret
). Tag
+ * keys are case-sensitive.
An optional field known as a tag value (for example,
+ * 111122223333
, Production
, or a team
+ * name). Omitting the tag value is the same as using an empty
+ * string. Like tag keys, tag values are
+ * case-sensitive.
Together these are known as key-value pairs.
+ *The string used for a key in a tag that you use to define your resource coverage must begin with the
+ * prefix Devops-guru-
. The tag key might be
+ * Devops-guru-deployment-application
or
+ * Devops-guru-rds-application
. While keys are case-sensitive, the
+ * case of key characters don't matter to DevOps Guru. For example, DevOps Guru works with a
+ * key named devops-guru-rds
and a key named
+ * DevOps-Guru-RDS
. Possible key/value pairs in your
+ * application might be Devops-Guru-production-application/RDS
or
+ * Devops-Guru-production-application/containers
.
The requested list of Amazon Web Services resource collections. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollectionFilter; @@ -2029,7 +2946,10 @@ export interface ProactiveAnomalySummary { Id?: string; /** - *The severity of the anomaly.
+ *The severity of the anomaly. The severity of anomalies that generate + * an insight determine that insight's severity. For more information, see + * Understanding + * insight severities in the Amazon DevOps Guru User Guide.
*/ Severity?: AnomalySeverity | string; @@ -2052,7 +2972,7 @@ export interface ProactiveAnomalySummary { /** *
- * A AnomalyReportedTimeRange
object that specifies the time range between when the anomaly is opened and the time when it is closed.
+ * An AnomalyReportedTimeRange
object that specifies the time range between when the anomaly is opened and the time when it is closed.
*
A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; @@ -2110,7 +3031,10 @@ export interface ReactiveAnomalySummary { Id?: string; /** - *The severity of the reactive anomaly.
+ *The severity of the anomaly. The severity of anomalies that generate + * an insight determine that insight's severity. For more information, see + * Understanding + * insight severities in the Amazon DevOps Guru User Guide.
*/ Severity?: AnomalySeverity | string; @@ -2128,7 +3052,7 @@ export interface ReactiveAnomalySummary { /** *
- * A AnomalyReportedTimeRange
object that specifies the time range between when the anomaly is opened and the time when it is closed.
+ * An AnomalyReportedTimeRange
object that specifies the time range between when the anomaly is opened and the time when it is closed.
*
A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; + + /** + *The type of the reactive anomaly. It can be one of the following types.
+ *
+ * CAUSAL
- the anomaly can cause a new insight.
+ * CONTEXTUAL
- the anomaly contains additional information about an insight or its causal anomaly.
The name of the reactive anomaly.
+ */ + Name?: string; + + /** + *A description of the reactive anomaly.
+ */ + Description?: string; + + /** + *The ID of the causal anomaly that is associated with this + * reactive anomaly. The ID of a `CAUSAL` anomaly is always `NULL`.
+ */ + CausalAnomalyId?: string; + + /** + *The Amazon Web Services resources in which anomalous behavior was detected by DevOps Guru.
+ */ + AnomalyResources?: AnomalyResource[]; } export namespace ReactiveAnomalySummary { @@ -2264,8 +3225,9 @@ export interface ListEventsFilters { /** *A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; } @@ -2352,8 +3314,9 @@ export namespace EventResource { export interface Event { /** *A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; @@ -2627,7 +3590,9 @@ export interface ProactiveInsightSummary { Name?: string; /** - *The severity of the proactive insight.
+ *The severity of the insight. For more information, see + * Understanding + * insight severities in the Amazon DevOps Guru User Guide.
*/ Severity?: InsightSeverity | string; @@ -2650,8 +3615,9 @@ export interface ProactiveInsightSummary { /** *A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; @@ -2659,6 +3625,12 @@ export interface ProactiveInsightSummary { *A collection of the names of Amazon Web Services services.
*/ ServiceCollection?: ServiceCollection; + + /** + *The Amazon Resource Names (ARNs) + * of the Amazon Web Services resources that generated this insight.
+ */ + AssociatedResourceArns?: string[]; } export namespace ProactiveInsightSummary { @@ -2687,7 +3659,9 @@ export interface ReactiveInsightSummary { Name?: string; /** - *The severity of a reactive insight.
+ *The severity of the insight. For more information, see + * Understanding + * insight severities in the Amazon DevOps Guru User Guide.
*/ Severity?: InsightSeverity | string; @@ -2704,8 +3678,9 @@ export interface ReactiveInsightSummary { /** *A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; @@ -2713,6 +3688,12 @@ export interface ReactiveInsightSummary { *A collection of the names of Amazon Web Services services.
*/ ServiceCollection?: ServiceCollection; + + /** + *The Amazon Resource Names (ARNs) + * of the Amazon Web Services resources that generated this insight.
+ */ + AssociatedResourceArns?: string[]; } export namespace ReactiveInsightSummary { @@ -2865,7 +3846,7 @@ export namespace ListOrganizationInsightsRequest { /** *Details about a proactive insight. This object is returned by
- * DescribeInsight
.
DescribeInsight
.
*/
export interface ProactiveOrganizationInsightSummary {
/**
@@ -2889,7 +3870,9 @@ export interface ProactiveOrganizationInsightSummary {
Name?: string;
/**
- * An array of severity values used to search for insights.
+ *An array of severity values used to search for insights. For more information, see + * Understanding + * insight severities in the Amazon DevOps Guru User Guide.
*/ Severity?: InsightSeverity | string; @@ -2912,8 +3895,9 @@ export interface ProactiveOrganizationInsightSummary { /** *A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; @@ -2934,7 +3918,7 @@ export namespace ProactiveOrganizationInsightSummary { /** *Information about a reactive insight. This object is returned by
- * DescribeInsight
.
DescribeInsight
.
*/
export interface ReactiveOrganizationInsightSummary {
/**
@@ -2943,7 +3927,7 @@ export interface ReactiveOrganizationInsightSummary {
Id?: string;
/**
- * The ID of the Amazon Web Services account.
+ *The ID of the Amazon Web Services account.
*/ AccountId?: string; @@ -2958,7 +3942,9 @@ export interface ReactiveOrganizationInsightSummary { Name?: string; /** - *An array of severity values used to search for insights.
+ *An array of severity values used to search for insights. For more information, see + * Understanding + * insight severities in the Amazon DevOps Guru User Guide.
*/ Severity?: InsightSeverity | string; @@ -2975,8 +3961,9 @@ export interface ReactiveOrganizationInsightSummary { /** *A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; @@ -3080,7 +4067,11 @@ export interface RecommendationRelatedAnomalyResource { Name?: string; /** - *The type of the resource.
+ * The type of the resource. Resource types take the same form that is
+ * used by Amazon Web Services CloudFormation resource type identifiers, service-provider::service-name::data-type-name
.
+ * For example, AWS::RDS::DBCluster
. For more information, see
+ * Amazon Web Services resource and
+ * property types reference in the Amazon Web Services CloudFormation User Guide.
The ID of an anomaly that generated the insight with this recommendation.
+ */ + AnomalyId?: string; } export namespace RecommendationRelatedAnomaly { @@ -3359,8 +4355,9 @@ export interface SearchInsightsFilters { /** *A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; @@ -3464,8 +4461,9 @@ export interface SearchOrganizationInsightsFilters { /** *A collection of Amazon Web Services resources supported by DevOps Guru. - * The one type of Amazon Web Services resource collection supported is Amazon Web Services CloudFormation stacks. DevOps Guru can be configured to analyze - * only the Amazon Web Services resources that are defined in the stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ * The two types of Amazon Web Services resource collections supported are Amazon Web Services CloudFormation stacks and + * Amazon Web Services resources that contain the same Amazon Web Services tag. DevOps Guru can be configured to analyze + * the Amazon Web Services resources that are defined in the stacks or that are tagged using the same tag key. You can specify up to 500 Amazon Web Services CloudFormation stacks. */ ResourceCollection?: ResourceCollection; @@ -3516,7 +4514,7 @@ export interface SearchOrganizationInsightsRequest { /** * The type of insights you are searching for (REACTIVE
or
- * PROACTIVE
).
PROACTIVE
).
*/
Type: InsightType | string | undefined;
}
@@ -3617,14 +4615,96 @@ export namespace UpdateCloudFormationCollectionFilter {
});
}
+/**
+ * A new collection of Amazon Web Services resources that are defined by an Amazon Web Services tag or tag + * key/value pair.
+ */ +export interface UpdateTagCollectionFilter { + /** + *An Amazon Web Services tag key that is used to identify the Amazon Web Services resources that + * DevOps Guru analyzes. All Amazon Web Services resources in your account and Region tagged with this key make + * up your DevOps Guru application and analysis boundary.
+ *The string used for a key in a tag that you use to define your resource coverage must begin with the
+ * prefix Devops-guru-
. The tag key might be
+ * Devops-guru-deployment-application
or
+ * Devops-guru-rds-application
. While keys are case-sensitive, the
+ * case of key characters don't matter to DevOps Guru. For example, DevOps Guru works with a
+ * key named devops-guru-rds
and a key named
+ * DevOps-Guru-RDS
. Possible key/value pairs in your
+ * application might be Devops-Guru-production-application/RDS
or
+ * Devops-Guru-production-application/containers
.
The values in an Amazon Web Services tag collection.
+ *The tag's value is an optional field used to associate a string with
+ * the tag key (for example, 111122223333
, Production
, or a team
+ * name). The key and value are the tag's key pair.
+ * Omitting the tag value is the same as using an empty
+ * string. Like tag keys, tag values are
+ * case-sensitive. You can specify a maximum of 256 characters for a tag value.
Contains information used to update a collection of Amazon Web Services resources.
*/ export interface UpdateResourceCollectionFilter { /** - *An collection of Amazon Web Services CloudFormation stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
+ *A collection of Amazon Web Services CloudFormation stacks. You can specify up to 500 Amazon Web Services CloudFormation stacks.
*/ CloudFormation?: UpdateCloudFormationCollectionFilter; + + /** + *The updated Amazon Web Services tags used to filter the resources in the resource collection.
+ *Tags help you identify and organize your Amazon Web Services resources. Many Amazon Web Services services support + * tagging, so you can assign the same tag to resources from different services to indicate + * that the resources are related. For example, you can assign the same tag to an Amazon DynamoDB + * table resource that you assign to an Lambda function. For more information about + * using tags, see the Tagging + * best practices whitepaper.
+ *Each Amazon Web Services tag has two parts.
+ *A tag key (for example, CostCenter
,
+ * Environment
, Project
, or Secret
). Tag
+ * keys are case-sensitive.
An optional field known as a tag value (for example,
+ * 111122223333
, Production
, or a team
+ * name). Omitting the tag value is the same as using an empty
+ * string. Like tag keys, tag values are
+ * case-sensitive.
Together these are known as key-value pairs.
+ *The string used for a key in a tag that you use to define your resource coverage must begin with the
+ * prefix Devops-guru-
. The tag key might be
+ * Devops-guru-deployment-application
or
+ * Devops-guru-rds-application
. While keys are case-sensitive, the
+ * case of key characters don't matter to DevOps Guru. For example, DevOps Guru works with a
+ * key named devops-guru-rds
and a key named
+ * DevOps-Guru-RDS
. Possible key/value pairs in your
+ * application might be Devops-Guru-production-application/RDS
or
+ * Devops-Guru-production-application/containers
.
The tags associated with the virtual interface.
*/ tags?: Tag[]; + + /** + *Indicates whether SiteLink is enabled.
+ */ + siteLinkEnabled?: boolean; } export namespace VirtualInterface { @@ -1418,7 +1423,9 @@ export namespace ConfirmConnectionResponse { export interface ConfirmCustomerAgreementRequest { /** *+ * * The name of the customer agreement. + * *
*/ agreementName?: string; @@ -2527,6 +2534,11 @@ export interface NewPrivateVirtualInterface { *The tags associated with the private virtual interface.
*/ tags?: Tag[]; + + /** + *Indicates whether to enable or disable SiteLink.
+ */ + enableSiteLink?: boolean; } export namespace NewPrivateVirtualInterface { @@ -2694,6 +2706,11 @@ export interface NewTransitVirtualInterface { *The tags associated with the transitive virtual interface.
*/ tags?: Tag[]; + + /** + *Indicates whether to enable or disable SiteLink.
+ */ + enableSiteLink?: boolean; } export namespace NewTransitVirtualInterface { @@ -3796,7 +3813,7 @@ export interface DescribeRouterConfigurationResponse { virtualInterfaceId?: string; /** - *The name of the virtual interface assigned by the customer network.
+ *Provides the details about a virtual interface's router.
*/ virtualInterfaceName?: string; } @@ -4434,6 +4451,16 @@ export interface UpdateVirtualInterfaceAttributesRequest { *The maximum transmission unit (MTU), in bytes. The supported values are 1500 and 9001. The default value is 1500.
*/ mtu?: number; + + /** + *Indicates whether to enable or disable SiteLink.
+ */ + enableSiteLink?: boolean; + + /** + *The name of the virtual private interface.
+ */ + virtualInterfaceName?: string; } export namespace UpdateVirtualInterfaceAttributesRequest { diff --git a/clients/client-direct-connect/src/protocols/Aws_json1_1.ts b/clients/client-direct-connect/src/protocols/Aws_json1_1.ts index 7b389e9e3220..c4b7a1abb332 100644 --- a/clients/client-direct-connect/src/protocols/Aws_json1_1.ts +++ b/clients/client-direct-connect/src/protocols/Aws_json1_1.ts @@ -5988,6 +5988,8 @@ const serializeAws_json1_1NewPrivateVirtualInterface = ( input.customerAddress !== null && { customerAddress: input.customerAddress }), ...(input.directConnectGatewayId !== undefined && input.directConnectGatewayId !== null && { directConnectGatewayId: input.directConnectGatewayId }), + ...(input.enableSiteLink !== undefined && + input.enableSiteLink !== null && { enableSiteLink: input.enableSiteLink }), ...(input.mtu !== undefined && input.mtu !== null && { mtu: input.mtu }), ...(input.tags !== undefined && input.tags !== null && { tags: serializeAws_json1_1TagList(input.tags, context) }), ...(input.virtualGatewayId !== undefined && @@ -6074,6 +6076,8 @@ const serializeAws_json1_1NewTransitVirtualInterface = ( input.customerAddress !== null && { customerAddress: input.customerAddress }), ...(input.directConnectGatewayId !== undefined && input.directConnectGatewayId !== null && { directConnectGatewayId: input.directConnectGatewayId }), + ...(input.enableSiteLink !== undefined && + input.enableSiteLink !== null && { enableSiteLink: input.enableSiteLink }), ...(input.mtu !== undefined && input.mtu !== null && { mtu: input.mtu }), ...(input.tags !== undefined && input.tags !== null && { tags: serializeAws_json1_1TagList(input.tags, context) }), ...(input.virtualInterfaceName !== undefined && @@ -6257,9 +6261,13 @@ const serializeAws_json1_1UpdateVirtualInterfaceAttributesRequest = ( context: __SerdeContext ): any => { return { + ...(input.enableSiteLink !== undefined && + input.enableSiteLink !== null && { enableSiteLink: input.enableSiteLink }), ...(input.mtu !== undefined && input.mtu !== null && { mtu: input.mtu }), ...(input.virtualInterfaceId !== undefined && input.virtualInterfaceId !== null && { virtualInterfaceId: input.virtualInterfaceId }), + ...(input.virtualInterfaceName !== undefined && + input.virtualInterfaceName !== null && { virtualInterfaceName: input.virtualInterfaceName }), }; }; @@ -7276,6 +7284,7 @@ const deserializeAws_json1_1VirtualInterface = (output: any, context: __SerdeCon output.routeFilterPrefixes !== undefined && output.routeFilterPrefixes !== null ? deserializeAws_json1_1RouteFilterPrefixList(output.routeFilterPrefixes, context) : undefined, + siteLinkEnabled: __expectBoolean(output.siteLinkEnabled), tags: output.tags !== undefined && output.tags !== null ? deserializeAws_json1_1TagList(output.tags, context) diff --git a/clients/client-dynamodb/src/models/models_0.ts b/clients/client-dynamodb/src/models/models_0.ts index f3db810e2d37..59b49cee8d78 100644 --- a/clients/client-dynamodb/src/models/models_0.ts +++ b/clients/client-dynamodb/src/models/models_0.ts @@ -1759,6 +1759,36 @@ export type ReplicaStatus = | "REGION_DISABLED" | "UPDATING"; +export enum TableClass { + STANDARD = "STANDARD", + STANDARD_INFREQUENT_ACCESS = "STANDARD_INFREQUENT_ACCESS", +} + +/** + *Contains details of the table class.
+ */ +export interface TableClassSummary { + /** + *The table class of the specified table. Valid values are STANDARD
and
+ * STANDARD_INFREQUENT_ACCESS
.
The date and time at which the table class was last updated.
+ */ + LastUpdateDateTime?: Date; +} + +export namespace TableClassSummary { + /** + * @internal + */ + export const filterSensitiveLog = (obj: TableClassSummary): any => ({ + ...obj, + }); +} + /** *Contains the details of the replica.
*/ @@ -1845,6 +1875,11 @@ export interface ReplicaDescription { * of inaccessibility check theReplicaStatus
property.
*/
ReplicaInaccessibleDateTime?: Date;
+
+ /**
+ * Contains details of the table class.
+ */ + ReplicaTableClassSummary?: TableClassSummary; } export namespace ReplicaDescription { @@ -2019,6 +2054,12 @@ export interface CreateReplicationGroupMemberAction { *Replica-specific global secondary index settings.
*/ GlobalSecondaryIndexes?: ReplicaGlobalSecondaryIndex[]; + + /** + *Replica-specific table class. If not specified, uses the source table's + * table class.
+ */ + TableClassOverride?: TableClass | string; } export namespace CreateReplicationGroupMemberAction { @@ -2491,6 +2532,12 @@ export interface CreateTableInput { * for DynamoDB. */ Tags?: Tag[]; + + /** + *The table class of the new table. Valid values are STANDARD
and
+ * STANDARD_INFREQUENT_ACCESS
.
Contains information about the table archive.
*/ ArchivalSummary?: ArchivalSummary; + + /** + *Contains details of the table class.
+ */ + TableClassSummary?: TableClassSummary; } export namespace TableDescription { @@ -3993,6 +4045,11 @@ export interface ReplicaSettingsDescription { *Replica global secondary index settings for the global table.
*/ ReplicaGlobalSecondaryIndexSettings?: ReplicaGlobalSecondaryIndexSettingsDescription[]; + + /** + *Contains details of the table class.
+ */ + ReplicaTableClassSummary?: TableClassSummary; } export namespace ReplicaSettingsDescription { @@ -5626,6 +5683,12 @@ export interface ReplicaSettingsUpdate { * modified. */ ReplicaGlobalSecondaryIndexSettingsUpdate?: ReplicaGlobalSecondaryIndexSettingsUpdate[]; + + /** + *Replica-specific table class. If not specified, uses the source table's + * table class.
+ */ + ReplicaTableClass?: TableClass | string; } export namespace ReplicaSettingsUpdate { @@ -5846,6 +5909,12 @@ export interface UpdateReplicationGroupMemberAction { *Replica-specific global secondary index settings.
*/ GlobalSecondaryIndexes?: ReplicaGlobalSecondaryIndex[]; + + /** + *Replica-specific table class. If not specified, uses the source table's + * table class.
+ */ + TableClassOverride?: TableClass | string; } export namespace UpdateReplicationGroupMemberAction { @@ -5994,6 +6063,12 @@ export interface UpdateTableInput { * */ ReplicaUpdates?: ReplicationGroupUpdate[]; + + /** + *The table class of the table to be updated. Valid values are STANDARD
and
+ * STANDARD_INFREQUENT_ACCESS
.
Allocate a CIDR from an IPAM pool. In IPAM, an allocation is a CIDR assignment from an IPAM pool to another resource or IPAM pool. For more information, see Allocate CIDRs in the Amazon VPC IPAM User Guide. + *
+ */ + public allocateIpamPoolCidr( + args: AllocateIpamPoolCidrCommandInput, + options?: __HttpHandlerOptions + ): PromiseApplies a security group to the association between the target network and the Client VPN endpoint. This action replaces the existing * security groups with the specified security groups.
@@ -4830,6 +5031,101 @@ export class EC2 extends EC2Client { } } + /** + *Create an IPAM. Amazon VCP IP Address Manager (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 Create an IPAM in the Amazon VPC IPAM User Guide. + *
+ */ + public createIpam(args: CreateIpamCommandInput, options?: __HttpHandlerOptions): PromiseCreate an IP address pool for Amazon VPC IP Address Manager (IPAM). 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.
+ *For more information, see Create a top-level pool in the Amazon VPC IPAM User Guide. + *
+ */ + public createIpamPool( + args: CreateIpamPoolCommandInput, + options?: __HttpHandlerOptions + ): PromiseCreate an IPAM scope. 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 Add a scope in the Amazon VPC IPAM User Guide.
+ */ + public createIpamScope( + args: CreateIpamScopeCommandInput, + options?: __HttpHandlerOptions + ): PromiseCreates an ED25519 or 2048-bit RSA key pair with the specified name. Amazon EC2 stores the public * key and displays the private key for you to save to a file. The private key is returned @@ -5157,6 +5453,41 @@ export class EC2 extends EC2Client { } } + /** + *
Creates a Network Access Scope.
+ *Amazon Web Services Network Access Analyzer enables cloud networking and cloud operations teams + * to verify that their networks on Amazon Web Services conform to their network security and governance + * objectives. For more information, see the Amazon Web Services Network Access Analyzer Guide.
+ */ + public createNetworkInsightsAccessScope( + args: CreateNetworkInsightsAccessScopeCommandInput, + options?: __HttpHandlerOptions + ): PromiseCreates a path to analyze for reachability.
*Reachability Analyzer enables you to analyze and debug network reachability between @@ -5301,6 +5632,38 @@ export class EC2 extends EC2Client { } } + /** + *
Creates a public IPv4 address pool. A public IPv4 pool is an EC2 IP address pool required for the public IPv4 CIDRs that you own and bring to Amazon Web Services to manage with IPAM. IPv6 addresses you bring to Amazon Web Services, however, use IPAM pools only. To monitor the status of pool creation, use DescribePublicIpv4Pools.
+ */ + public createPublicIpv4Pool( + args: CreatePublicIpv4PoolCommandInput, + options?: __HttpHandlerOptions + ): PromiseCreates a root volume replacement task for an Amazon EC2 instance. The root volume * can either be restored to its initial launch state, or it can be restored using a @@ -7059,6 +7422,112 @@ export class EC2 extends EC2Client { } } + /** + *
Delete an IPAM. Deleting an IPAM removes all monitored data associated with the IPAM including the historical data for CIDRs.
+ *You cannot delete an IPAM if there are CIDRs provisioned to pools or if there are allocations in the pools within the IPAM. To deprovision pool + * CIDRs, see DeprovisionIpamPoolCidr. To release allocations, see ReleaseIpamPoolAllocation. + *
+ *For more information, see Delete an IPAM in the Amazon VPC IPAM User Guide. + *
+ */ + public deleteIpam(args: DeleteIpamCommandInput, options?: __HttpHandlerOptions): PromiseDelete an IPAM pool.
+ *You cannot delete an IPAM pool if there are allocations in it or CIDRs provisioned to it. To release + * allocations, see ReleaseIpamPoolAllocation. To deprovision pool + * CIDRs, see DeprovisionIpamPoolCidr.
+ *For more information, see Delete a pool in the Amazon VPC IPAM User Guide. + *
+ */ + public deleteIpamPool( + args: DeleteIpamPoolCommandInput, + options?: __HttpHandlerOptions + ): PromiseDelete the scope for an IPAM. You cannot delete the default scopes.
+ *For more information, see Delete a scope in the Amazon VPC IPAM User Guide. + *
+ */ + public deleteIpamScope( + args: DeleteIpamScopeCommandInput, + options?: __HttpHandlerOptions + ): PromiseDeletes the specified key pair, by removing the public key from Amazon EC2.
*/ @@ -7354,6 +7823,72 @@ export class EC2 extends EC2Client { } } + /** + *Deletes the specified Network Access Scope.
+ */ + public deleteNetworkInsightsAccessScope( + args: DeleteNetworkInsightsAccessScopeCommandInput, + options?: __HttpHandlerOptions + ): PromiseDeletes the specified Network Access Scope analysis.
+ */ + public deleteNetworkInsightsAccessScopeAnalysis( + args: DeleteNetworkInsightsAccessScopeAnalysisCommandInput, + options?: __HttpHandlerOptions + ): PromiseDeletes the specified network insights analysis.
*/ @@ -7519,6 +8054,38 @@ export class EC2 extends EC2Client { } } + /** + *Delete a public IPv4 pool. A public IPv4 pool is an EC2 IP address pool required for the public IPv4 CIDRs that you own and bring to Amazon Web Services to manage with IPAM. IPv6 addresses you bring to Amazon Web Services, however, use IPAM pools only.
+ */ + public deletePublicIpv4Pool( + args: DeletePublicIpv4PoolCommandInput, + options?: __HttpHandlerOptions + ): PromiseDeletes the queued purchases for the specified Reserved Instances.
*/ @@ -8602,34 +9169,98 @@ export class EC2 extends EC2Client { } /** - *Deregisters the specified AMI. After you deregister an AMI, it can't be used to launch - * new instances; however, it doesn't affect any instances that you've already launched - * from the AMI. You'll continue to incur usage costs for those instances until you - * terminate them.
- *When you deregister an Amazon EBS-backed AMI, it doesn't affect the snapshot that was - * created for the root volume of the instance during the AMI creation process. When you - * deregister an instance store-backed AMI, it doesn't affect the files that you uploaded - * to Amazon S3 when you created the AMI.
+ *Deprovision a CIDR provisioned from an IPAM pool. If you deprovision a CIDR from a pool that has a source pool, the CIDR is recycled back into the source pool. For more information, see Deprovision pool CIDRs in the Amazon VPC IPAM User Guide.
*/ - public deregisterImage( - args: DeregisterImageCommandInput, + public deprovisionIpamPoolCidr( + args: DeprovisionIpamPoolCidrCommandInput, options?: __HttpHandlerOptions - ): PromiseDeprovision a CIDR from a public IPv4 pool.
+ */ + public deprovisionPublicIpv4PoolCidr( + args: DeprovisionPublicIpv4PoolCidrCommandInput, + options?: __HttpHandlerOptions + ): PromiseDeregisters the specified AMI. After you deregister an AMI, it can't be used to launch + * new instances; however, it doesn't affect any instances that you've already launched + * from the AMI. You'll continue to incur usage costs for those instances until you + * terminate them.
+ *When you deregister an Amazon EBS-backed AMI, it doesn't affect the snapshot that was + * created for the root volume of the instance during the AMI creation process. When you + * deregister an instance store-backed AMI, it doesn't affect the files that you uploaded + * to Amazon S3 when you created the AMI.
+ */ + public deregisterImage( + args: DeregisterImageCommandInput, + options?: __HttpHandlerOptions + ): PromiseGet information about your IPAM pools.
+ */ + public describeIpamPools( + args: DescribeIpamPoolsCommandInput, + options?: __HttpHandlerOptions + ): PromiseGet information about your IPAM pools.
+ *For more information, see What is IPAM? in the Amazon VPC IPAM User Guide. + *
+ */ + public describeIpams( + args: DescribeIpamsCommandInput, + options?: __HttpHandlerOptions + ): PromiseGet information about your IPAM scopes.
+ */ + public describeIpamScopes( + args: DescribeIpamScopesCommandInput, + options?: __HttpHandlerOptions + ): PromiseDescribes your IPv6 address pools.
*/ @@ -11030,6 +11759,72 @@ export class EC2 extends EC2Client { } } + /** + *Describes the specified Network Access Scope analyses.
+ */ + public describeNetworkInsightsAccessScopeAnalyses( + args: DescribeNetworkInsightsAccessScopeAnalysesCommandInput, + options?: __HttpHandlerOptions + ): PromiseDescribes the specified Network Access Scopes.
+ */ + public describeNetworkInsightsAccessScopes( + args: DescribeNetworkInsightsAccessScopesCommandInput, + options?: __HttpHandlerOptions + ): PromiseDescribes one or more of your network insights analyses.
*/ @@ -13545,6 +14340,39 @@ export class EC2 extends EC2Client { } } + /** + *Disable the IPAM account. For more information, see Enable integration with Organizations in the Amazon VPC IPAM User Guide. + *
+ */ + public disableIpamOrganizationAdminAccount( + args: DisableIpamOrganizationAdminAccountCommandInput, + options?: __HttpHandlerOptions + ): PromiseDisables access to the EC2 serial console of all instances for your account. By default, * access to the EC2 serial console is disabled for your account. For more information, see @@ -14226,6 +15054,39 @@ export class EC2 extends EC2Client { } } + /** + *
Enable an Organizations member account as the IPAM admin account. You cannot select the Organizations management account as the IPAM admin account. For more information, see Enable integration with Organizations in the Amazon VPC IPAM User Guide. + *
+ */ + public enableIpamOrganizationAdminAccount( + args: EnableIpamOrganizationAdminAccountCommandInput, + options?: __HttpHandlerOptions + ): PromiseEnables access to the EC2 serial console of all instances for your account. By default, * access to the EC2 serial console is disabled for your account. For more information, see Manage account access to the EC2 serial console @@ -15047,6 +15908,134 @@ export class EC2 extends EC2Client { } } + /** + *
Retrieve historical information about a CIDR within an IPAM scope. For more information, see View the history of IP addresses in the Amazon VPC IPAM User Guide.
+ */ + public getIpamAddressHistory( + args: GetIpamAddressHistoryCommandInput, + options?: __HttpHandlerOptions + ): PromiseGet a list of all the CIDR allocations in an IPAM pool.
+ */ + public getIpamPoolAllocations( + args: GetIpamPoolAllocationsCommandInput, + options?: __HttpHandlerOptions + ): PromiseGet the CIDRs provisioned to an IPAM pool.
+ */ + public getIpamPoolCidrs( + args: GetIpamPoolCidrsCommandInput, + options?: __HttpHandlerOptions + ): PromiseGet information about the resources in a scope.
+ */ + public getIpamResourceCidrs( + args: GetIpamResourceCidrsCommandInput, + options?: __HttpHandlerOptions + ): PromiseRetrieves the configuration data of the specified instance. You can use this data * to create a launch template.
@@ -15147,6 +16136,72 @@ export class EC2 extends EC2Client { } } + /** + *Gets the findings for the specified Network Access Scope analysis.
+ */ + public getNetworkInsightsAccessScopeAnalysisFindings( + args: GetNetworkInsightsAccessScopeAnalysisFindingsCommandInput, + options?: __HttpHandlerOptions + ): PromiseGets the content for the specified Network Access Scope.
+ */ + public getNetworkInsightsAccessScopeContent( + args: GetNetworkInsightsAccessScopeContentCommandInput, + options?: __HttpHandlerOptions + ): PromiseRetrieves the encrypted administrator password for a running Windows instance.
*The Windows password is generated at boot by the EC2Config
service or
@@ -16600,6 +17655,132 @@ export class EC2 extends EC2Client {
}
}
+ /**
+ *
Modify the configurations of an IPAM. + *
+ */ + public modifyIpam(args: ModifyIpamCommandInput, options?: __HttpHandlerOptions): PromiseModify the configurations of an IPAM pool.
+ *For more information, see Modify a pool in the Amazon VPC IPAM User Guide. + *
+ */ + public modifyIpamPool( + args: ModifyIpamPoolCommandInput, + options?: __HttpHandlerOptions + ): PromiseModify a resource CIDR. You can use this action to transfer resource CIDRs between scopes and ignore resource CIDRs that you do not want to manage. If set to false, the resource will not be tracked for overlap, it cannot be auto-imported into a pool, and it will be removed from any pool it has an allocation in.
+ *For more information, see Move resource CIDRs between scopes and Change the monitoring state of resource CIDRs in the Amazon VPC IPAM User Guide.
+ */ + public modifyIpamResourceCidr( + args: ModifyIpamResourceCidrCommandInput, + options?: __HttpHandlerOptions + ): PromiseModify an IPAM scope.
+ */ + public modifyIpamScope( + args: ModifyIpamScopeCommandInput, + options?: __HttpHandlerOptions + ): PromiseModifies a launch template. You can specify which version of the launch template to * set as the default version. When launching an instance, the default version applies when @@ -17797,6 +18978,38 @@ export class EC2 extends EC2Client { } } + /** + *
Move an BYOIP IPv4 CIDR to IPAM from a public IPv4 pool.
+ */ + public moveByoipCidrToIpam( + args: MoveByoipCidrToIpamCommandInput, + options?: __HttpHandlerOptions + ): PromiseProvisions an IPv4 or IPv6 address range for use with your Amazon Web Services resources through bring your own IP * addresses (BYOIP) and creates a corresponding address pool. After the address range is @@ -17840,6 +19053,74 @@ export class EC2 extends EC2Client { } } + /** + *
Provision a CIDR to an IPAM pool. You can use thsi action to provision new CIDRs to a top-level pool or to transfer a CIDR from a top-level pool to a pool within it.
+ *For more information, see Provision CIDRs to pools in the Amazon VPC IPAM User Guide. + *
+ */ + public provisionIpamPoolCidr( + args: ProvisionIpamPoolCidrCommandInput, + options?: __HttpHandlerOptions + ): PromiseProvision a CIDR to a public IPv4 pool.
+ *For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide. + *
+ */ + public provisionPublicIpv4PoolCidr( + args: ProvisionPublicIpv4PoolCidrCommandInput, + options?: __HttpHandlerOptions + ): PromisePurchase a reservation with configurations that match those of your Dedicated Host. * You must have active Dedicated Hosts in your account before you purchase a reservation. @@ -18438,6 +19719,39 @@ export class EC2 extends EC2Client { } } + /** + *
Release an allocation within an IPAM pool. You can only use this action to release manual allocations. To remove an allocation for a resource without deleting the resource, set its monitored state to false using ModifyIpamResourceCidr. For more information, see Release an allocation in the Amazon VPC IPAM User Guide. + *
+ */ + public releaseIpamPoolAllocation( + args: ReleaseIpamPoolAllocationCommandInput, + options?: __HttpHandlerOptions + ): PromiseReplaces an IAM instance profile for the specified running instance. You can use * this action to change the IAM instance profile that's associated with an instance @@ -19580,6 +20894,40 @@ export class EC2 extends EC2Client { } } + /** + *
Starts analyzing the specified Network Access Scope.
+ */ + public startNetworkInsightsAccessScopeAnalysis( + args: StartNetworkInsightsAccessScopeAnalysisCommandInput, + options?: __HttpHandlerOptions + ): PromiseStarts analyzing the specified path. If the path is reachable, the * operation returns the shortest feasible path.
diff --git a/clients/client-ec2/src/EC2Client.ts b/clients/client-ec2/src/EC2Client.ts index 8a36dd17cf56..bcb935c2afa7 100644 --- a/clients/client-ec2/src/EC2Client.ts +++ b/clients/client-ec2/src/EC2Client.ts @@ -76,6 +76,10 @@ import { import { AdvertiseByoipCidrCommandInput, AdvertiseByoipCidrCommandOutput } from "./commands/AdvertiseByoipCidrCommand"; import { AllocateAddressCommandInput, AllocateAddressCommandOutput } from "./commands/AllocateAddressCommand"; import { AllocateHostsCommandInput, AllocateHostsCommandOutput } from "./commands/AllocateHostsCommand"; +import { + AllocateIpamPoolCidrCommandInput, + AllocateIpamPoolCidrCommandOutput, +} from "./commands/AllocateIpamPoolCidrCommand"; import { ApplySecurityGroupsToClientVpnTargetNetworkCommandInput, ApplySecurityGroupsToClientVpnTargetNetworkCommandOutput, @@ -244,6 +248,9 @@ import { CreateInternetGatewayCommandInput, CreateInternetGatewayCommandOutput, } from "./commands/CreateInternetGatewayCommand"; +import { CreateIpamCommandInput, CreateIpamCommandOutput } from "./commands/CreateIpamCommand"; +import { CreateIpamPoolCommandInput, CreateIpamPoolCommandOutput } from "./commands/CreateIpamPoolCommand"; +import { CreateIpamScopeCommandInput, CreateIpamScopeCommandOutput } from "./commands/CreateIpamScopeCommand"; import { CreateKeyPairCommandInput, CreateKeyPairCommandOutput } from "./commands/CreateKeyPairCommand"; import { CreateLaunchTemplateCommandInput, @@ -271,6 +278,10 @@ import { CreateNetworkAclEntryCommandInput, CreateNetworkAclEntryCommandOutput, } from "./commands/CreateNetworkAclEntryCommand"; +import { + CreateNetworkInsightsAccessScopeCommandInput, + CreateNetworkInsightsAccessScopeCommandOutput, +} from "./commands/CreateNetworkInsightsAccessScopeCommand"; import { CreateNetworkInsightsPathCommandInput, CreateNetworkInsightsPathCommandOutput, @@ -287,6 +298,10 @@ import { CreatePlacementGroupCommandInput, CreatePlacementGroupCommandOutput, } from "./commands/CreatePlacementGroupCommand"; +import { + CreatePublicIpv4PoolCommandInput, + CreatePublicIpv4PoolCommandOutput, +} from "./commands/CreatePublicIpv4PoolCommand"; import { CreateReplaceRootVolumeTaskCommandInput, CreateReplaceRootVolumeTaskCommandOutput, @@ -429,6 +444,9 @@ import { DeleteInternetGatewayCommandInput, DeleteInternetGatewayCommandOutput, } from "./commands/DeleteInternetGatewayCommand"; +import { DeleteIpamCommandInput, DeleteIpamCommandOutput } from "./commands/DeleteIpamCommand"; +import { DeleteIpamPoolCommandInput, DeleteIpamPoolCommandOutput } from "./commands/DeleteIpamPoolCommand"; +import { DeleteIpamScopeCommandInput, DeleteIpamScopeCommandOutput } from "./commands/DeleteIpamScopeCommand"; import { DeleteKeyPairCommandInput, DeleteKeyPairCommandOutput } from "./commands/DeleteKeyPairCommand"; import { DeleteLaunchTemplateCommandInput, @@ -456,6 +474,14 @@ import { DeleteNetworkAclEntryCommandInput, DeleteNetworkAclEntryCommandOutput, } from "./commands/DeleteNetworkAclEntryCommand"; +import { + DeleteNetworkInsightsAccessScopeAnalysisCommandInput, + DeleteNetworkInsightsAccessScopeAnalysisCommandOutput, +} from "./commands/DeleteNetworkInsightsAccessScopeAnalysisCommand"; +import { + DeleteNetworkInsightsAccessScopeCommandInput, + DeleteNetworkInsightsAccessScopeCommandOutput, +} from "./commands/DeleteNetworkInsightsAccessScopeCommand"; import { DeleteNetworkInsightsAnalysisCommandInput, DeleteNetworkInsightsAnalysisCommandOutput, @@ -476,6 +502,10 @@ import { DeletePlacementGroupCommandInput, DeletePlacementGroupCommandOutput, } from "./commands/DeletePlacementGroupCommand"; +import { + DeletePublicIpv4PoolCommandInput, + DeletePublicIpv4PoolCommandOutput, +} from "./commands/DeletePublicIpv4PoolCommand"; import { DeleteQueuedReservedInstancesCommandInput, DeleteQueuedReservedInstancesCommandOutput, @@ -577,6 +607,14 @@ import { DeprovisionByoipCidrCommandInput, DeprovisionByoipCidrCommandOutput, } from "./commands/DeprovisionByoipCidrCommand"; +import { + DeprovisionIpamPoolCidrCommandInput, + DeprovisionIpamPoolCidrCommandOutput, +} from "./commands/DeprovisionIpamPoolCidrCommand"; +import { + DeprovisionPublicIpv4PoolCidrCommandInput, + DeprovisionPublicIpv4PoolCidrCommandOutput, +} from "./commands/DeprovisionPublicIpv4PoolCidrCommand"; import { DeregisterImageCommandInput, DeregisterImageCommandOutput } from "./commands/DeregisterImageCommand"; import { DeregisterInstanceEventNotificationAttributesCommandInput, @@ -760,6 +798,9 @@ import { DescribeInternetGatewaysCommandInput, DescribeInternetGatewaysCommandOutput, } from "./commands/DescribeInternetGatewaysCommand"; +import { DescribeIpamPoolsCommandInput, DescribeIpamPoolsCommandOutput } from "./commands/DescribeIpamPoolsCommand"; +import { DescribeIpamsCommandInput, DescribeIpamsCommandOutput } from "./commands/DescribeIpamsCommand"; +import { DescribeIpamScopesCommandInput, DescribeIpamScopesCommandOutput } from "./commands/DescribeIpamScopesCommand"; import { DescribeIpv6PoolsCommandInput, DescribeIpv6PoolsCommandOutput } from "./commands/DescribeIpv6PoolsCommand"; import { DescribeKeyPairsCommandInput, DescribeKeyPairsCommandOutput } from "./commands/DescribeKeyPairsCommand"; import { @@ -810,6 +851,14 @@ import { DescribeNetworkAclsCommandInput, DescribeNetworkAclsCommandOutput, } from "./commands/DescribeNetworkAclsCommand"; +import { + DescribeNetworkInsightsAccessScopeAnalysesCommandInput, + DescribeNetworkInsightsAccessScopeAnalysesCommandOutput, +} from "./commands/DescribeNetworkInsightsAccessScopeAnalysesCommand"; +import { + DescribeNetworkInsightsAccessScopesCommandInput, + DescribeNetworkInsightsAccessScopesCommandOutput, +} from "./commands/DescribeNetworkInsightsAccessScopesCommand"; import { DescribeNetworkInsightsAnalysesCommandInput, DescribeNetworkInsightsAnalysesCommandOutput, @@ -1070,6 +1119,10 @@ import { DisableImageDeprecationCommandInput, DisableImageDeprecationCommandOutput, } from "./commands/DisableImageDeprecationCommand"; +import { + DisableIpamOrganizationAdminAccountCommandInput, + DisableIpamOrganizationAdminAccountCommandOutput, +} from "./commands/DisableIpamOrganizationAdminAccountCommand"; import { DisableSerialConsoleAccessCommandInput, DisableSerialConsoleAccessCommandOutput, @@ -1146,6 +1199,10 @@ import { EnableImageDeprecationCommandInput, EnableImageDeprecationCommandOutput, } from "./commands/EnableImageDeprecationCommand"; +import { + EnableIpamOrganizationAdminAccountCommandInput, + EnableIpamOrganizationAdminAccountCommandOutput, +} from "./commands/EnableIpamOrganizationAdminAccountCommand"; import { EnableSerialConsoleAccessCommandInput, EnableSerialConsoleAccessCommandOutput, @@ -1226,6 +1283,19 @@ import { GetInstanceTypesFromInstanceRequirementsCommandInput, GetInstanceTypesFromInstanceRequirementsCommandOutput, } from "./commands/GetInstanceTypesFromInstanceRequirementsCommand"; +import { + GetIpamAddressHistoryCommandInput, + GetIpamAddressHistoryCommandOutput, +} from "./commands/GetIpamAddressHistoryCommand"; +import { + GetIpamPoolAllocationsCommandInput, + GetIpamPoolAllocationsCommandOutput, +} from "./commands/GetIpamPoolAllocationsCommand"; +import { GetIpamPoolCidrsCommandInput, GetIpamPoolCidrsCommandOutput } from "./commands/GetIpamPoolCidrsCommand"; +import { + GetIpamResourceCidrsCommandInput, + GetIpamResourceCidrsCommandOutput, +} from "./commands/GetIpamResourceCidrsCommand"; import { GetLaunchTemplateDataCommandInput, GetLaunchTemplateDataCommandOutput, @@ -1238,6 +1308,14 @@ import { GetManagedPrefixListEntriesCommandInput, GetManagedPrefixListEntriesCommandOutput, } from "./commands/GetManagedPrefixListEntriesCommand"; +import { + GetNetworkInsightsAccessScopeAnalysisFindingsCommandInput, + GetNetworkInsightsAccessScopeAnalysisFindingsCommandOutput, +} from "./commands/GetNetworkInsightsAccessScopeAnalysisFindingsCommand"; +import { + GetNetworkInsightsAccessScopeContentCommandInput, + GetNetworkInsightsAccessScopeContentCommandOutput, +} from "./commands/GetNetworkInsightsAccessScopeContentCommand"; import { GetPasswordDataCommandInput, GetPasswordDataCommandOutput } from "./commands/GetPasswordDataCommand"; import { GetReservedInstancesExchangeQuoteCommandInput, @@ -1367,6 +1445,13 @@ import { ModifyInstancePlacementCommandInput, ModifyInstancePlacementCommandOutput, } from "./commands/ModifyInstancePlacementCommand"; +import { ModifyIpamCommandInput, ModifyIpamCommandOutput } from "./commands/ModifyIpamCommand"; +import { ModifyIpamPoolCommandInput, ModifyIpamPoolCommandOutput } from "./commands/ModifyIpamPoolCommand"; +import { + ModifyIpamResourceCidrCommandInput, + ModifyIpamResourceCidrCommandOutput, +} from "./commands/ModifyIpamResourceCidrCommand"; +import { ModifyIpamScopeCommandInput, ModifyIpamScopeCommandOutput } from "./commands/ModifyIpamScopeCommand"; import { ModifyLaunchTemplateCommandInput, ModifyLaunchTemplateCommandOutput, @@ -1470,7 +1555,19 @@ import { } from "./commands/ModifyVpnTunnelOptionsCommand"; import { MonitorInstancesCommandInput, MonitorInstancesCommandOutput } from "./commands/MonitorInstancesCommand"; import { MoveAddressToVpcCommandInput, MoveAddressToVpcCommandOutput } from "./commands/MoveAddressToVpcCommand"; +import { + MoveByoipCidrToIpamCommandInput, + MoveByoipCidrToIpamCommandOutput, +} from "./commands/MoveByoipCidrToIpamCommand"; import { ProvisionByoipCidrCommandInput, ProvisionByoipCidrCommandOutput } from "./commands/ProvisionByoipCidrCommand"; +import { + ProvisionIpamPoolCidrCommandInput, + ProvisionIpamPoolCidrCommandOutput, +} from "./commands/ProvisionIpamPoolCidrCommand"; +import { + ProvisionPublicIpv4PoolCidrCommandInput, + ProvisionPublicIpv4PoolCidrCommandOutput, +} from "./commands/ProvisionPublicIpv4PoolCidrCommand"; import { PurchaseHostReservationCommandInput, PurchaseHostReservationCommandOutput, @@ -1519,6 +1616,10 @@ import { } from "./commands/RejectVpcPeeringConnectionCommand"; import { ReleaseAddressCommandInput, ReleaseAddressCommandOutput } from "./commands/ReleaseAddressCommand"; import { ReleaseHostsCommandInput, ReleaseHostsCommandOutput } from "./commands/ReleaseHostsCommand"; +import { + ReleaseIpamPoolAllocationCommandInput, + ReleaseIpamPoolAllocationCommandOutput, +} from "./commands/ReleaseIpamPoolAllocationCommand"; import { ReplaceIamInstanceProfileAssociationCommandInput, ReplaceIamInstanceProfileAssociationCommandOutput, @@ -1627,6 +1728,10 @@ import { SendDiagnosticInterruptCommandOutput, } from "./commands/SendDiagnosticInterruptCommand"; import { StartInstancesCommandInput, StartInstancesCommandOutput } from "./commands/StartInstancesCommand"; +import { + StartNetworkInsightsAccessScopeAnalysisCommandInput, + StartNetworkInsightsAccessScopeAnalysisCommandOutput, +} from "./commands/StartNetworkInsightsAccessScopeAnalysisCommand"; import { StartNetworkInsightsAnalysisCommandInput, StartNetworkInsightsAnalysisCommandOutput, @@ -1671,6 +1776,7 @@ export type ServiceInputTypes = | AdvertiseByoipCidrCommandInput | AllocateAddressCommandInput | AllocateHostsCommandInput + | AllocateIpamPoolCidrCommandInput | ApplySecurityGroupsToClientVpnTargetNetworkCommandInput | AssignIpv6AddressesCommandInput | AssignPrivateIpAddressesCommandInput @@ -1725,6 +1831,9 @@ export type ServiceInputTypes = | CreateInstanceEventWindowCommandInput | CreateInstanceExportTaskCommandInput | CreateInternetGatewayCommandInput + | CreateIpamCommandInput + | CreateIpamPoolCommandInput + | CreateIpamScopeCommandInput | CreateKeyPairCommandInput | CreateLaunchTemplateCommandInput | CreateLaunchTemplateVersionCommandInput @@ -1734,10 +1843,12 @@ export type ServiceInputTypes = | CreateNatGatewayCommandInput | CreateNetworkAclCommandInput | CreateNetworkAclEntryCommandInput + | CreateNetworkInsightsAccessScopeCommandInput | CreateNetworkInsightsPathCommandInput | CreateNetworkInterfaceCommandInput | CreateNetworkInterfacePermissionCommandInput | CreatePlacementGroupCommandInput + | CreatePublicIpv4PoolCommandInput | CreateReplaceRootVolumeTaskCommandInput | CreateReservedInstancesListingCommandInput | CreateRestoreImageTaskCommandInput @@ -1784,6 +1895,9 @@ export type ServiceInputTypes = | DeleteFpgaImageCommandInput | DeleteInstanceEventWindowCommandInput | DeleteInternetGatewayCommandInput + | DeleteIpamCommandInput + | DeleteIpamPoolCommandInput + | DeleteIpamScopeCommandInput | DeleteKeyPairCommandInput | DeleteLaunchTemplateCommandInput | DeleteLaunchTemplateVersionsCommandInput @@ -1793,11 +1907,14 @@ export type ServiceInputTypes = | DeleteNatGatewayCommandInput | DeleteNetworkAclCommandInput | DeleteNetworkAclEntryCommandInput + | DeleteNetworkInsightsAccessScopeAnalysisCommandInput + | DeleteNetworkInsightsAccessScopeCommandInput | DeleteNetworkInsightsAnalysisCommandInput | DeleteNetworkInsightsPathCommandInput | DeleteNetworkInterfaceCommandInput | DeleteNetworkInterfacePermissionCommandInput | DeletePlacementGroupCommandInput + | DeletePublicIpv4PoolCommandInput | DeleteQueuedReservedInstancesCommandInput | DeleteRouteCommandInput | DeleteRouteTableCommandInput @@ -1830,6 +1947,8 @@ export type ServiceInputTypes = | DeleteVpnConnectionRouteCommandInput | DeleteVpnGatewayCommandInput | DeprovisionByoipCidrCommandInput + | DeprovisionIpamPoolCidrCommandInput + | DeprovisionPublicIpv4PoolCidrCommandInput | DeregisterImageCommandInput | DeregisterInstanceEventNotificationAttributesCommandInput | DeregisterTransitGatewayMulticastGroupMembersCommandInput @@ -1884,6 +2003,9 @@ export type ServiceInputTypes = | DescribeInstanceTypesCommandInput | DescribeInstancesCommandInput | DescribeInternetGatewaysCommandInput + | DescribeIpamPoolsCommandInput + | DescribeIpamScopesCommandInput + | DescribeIpamsCommandInput | DescribeIpv6PoolsCommandInput | DescribeKeyPairsCommandInput | DescribeLaunchTemplateVersionsCommandInput @@ -1898,6 +2020,8 @@ export type ServiceInputTypes = | DescribeMovingAddressesCommandInput | DescribeNatGatewaysCommandInput | DescribeNetworkAclsCommandInput + | DescribeNetworkInsightsAccessScopeAnalysesCommandInput + | DescribeNetworkInsightsAccessScopesCommandInput | DescribeNetworkInsightsAnalysesCommandInput | DescribeNetworkInsightsPathsCommandInput | DescribeNetworkInterfaceAttributeCommandInput @@ -1969,6 +2093,7 @@ export type ServiceInputTypes = | DisableEbsEncryptionByDefaultCommandInput | DisableFastSnapshotRestoresCommandInput | DisableImageDeprecationCommandInput + | DisableIpamOrganizationAdminAccountCommandInput | DisableSerialConsoleAccessCommandInput | DisableTransitGatewayRouteTablePropagationCommandInput | DisableVgwRoutePropagationCommandInput @@ -1988,6 +2113,7 @@ export type ServiceInputTypes = | EnableEbsEncryptionByDefaultCommandInput | EnableFastSnapshotRestoresCommandInput | EnableImageDeprecationCommandInput + | EnableIpamOrganizationAdminAccountCommandInput | EnableSerialConsoleAccessCommandInput | EnableTransitGatewayRouteTablePropagationCommandInput | EnableVgwRoutePropagationCommandInput @@ -2011,9 +2137,15 @@ export type ServiceInputTypes = | GetGroupsForCapacityReservationCommandInput | GetHostReservationPurchasePreviewCommandInput | GetInstanceTypesFromInstanceRequirementsCommandInput + | GetIpamAddressHistoryCommandInput + | GetIpamPoolAllocationsCommandInput + | GetIpamPoolCidrsCommandInput + | GetIpamResourceCidrsCommandInput | GetLaunchTemplateDataCommandInput | GetManagedPrefixListAssociationsCommandInput | GetManagedPrefixListEntriesCommandInput + | GetNetworkInsightsAccessScopeAnalysisFindingsCommandInput + | GetNetworkInsightsAccessScopeContentCommandInput | GetPasswordDataCommandInput | GetReservedInstancesExchangeQuoteCommandInput | GetSerialConsoleAccessStatusCommandInput @@ -2053,6 +2185,10 @@ export type ServiceInputTypes = | ModifyInstanceEventWindowCommandInput | ModifyInstanceMetadataOptionsCommandInput | ModifyInstancePlacementCommandInput + | ModifyIpamCommandInput + | ModifyIpamPoolCommandInput + | ModifyIpamResourceCidrCommandInput + | ModifyIpamScopeCommandInput | ModifyLaunchTemplateCommandInput | ModifyManagedPrefixListCommandInput | ModifyNetworkInterfaceAttributeCommandInput @@ -2084,7 +2220,10 @@ export type ServiceInputTypes = | ModifyVpnTunnelOptionsCommandInput | MonitorInstancesCommandInput | MoveAddressToVpcCommandInput + | MoveByoipCidrToIpamCommandInput | ProvisionByoipCidrCommandInput + | ProvisionIpamPoolCidrCommandInput + | ProvisionPublicIpv4PoolCidrCommandInput | PurchaseHostReservationCommandInput | PurchaseReservedInstancesOfferingCommandInput | PurchaseScheduledInstancesCommandInput @@ -2100,6 +2239,7 @@ export type ServiceInputTypes = | RejectVpcPeeringConnectionCommandInput | ReleaseAddressCommandInput | ReleaseHostsCommandInput + | ReleaseIpamPoolAllocationCommandInput | ReplaceIamInstanceProfileAssociationCommandInput | ReplaceNetworkAclAssociationCommandInput | ReplaceNetworkAclEntryCommandInput @@ -2130,6 +2270,7 @@ export type ServiceInputTypes = | SearchTransitGatewayRoutesCommandInput | SendDiagnosticInterruptCommandInput | StartInstancesCommandInput + | StartNetworkInsightsAccessScopeAnalysisCommandInput | StartNetworkInsightsAnalysisCommandInput | StartVpcEndpointServicePrivateDnsVerificationCommandInput | StopInstancesCommandInput @@ -2152,6 +2293,7 @@ export type ServiceOutputTypes = | AdvertiseByoipCidrCommandOutput | AllocateAddressCommandOutput | AllocateHostsCommandOutput + | AllocateIpamPoolCidrCommandOutput | ApplySecurityGroupsToClientVpnTargetNetworkCommandOutput | AssignIpv6AddressesCommandOutput | AssignPrivateIpAddressesCommandOutput @@ -2206,6 +2348,9 @@ export type ServiceOutputTypes = | CreateInstanceEventWindowCommandOutput | CreateInstanceExportTaskCommandOutput | CreateInternetGatewayCommandOutput + | CreateIpamCommandOutput + | CreateIpamPoolCommandOutput + | CreateIpamScopeCommandOutput | CreateKeyPairCommandOutput | CreateLaunchTemplateCommandOutput | CreateLaunchTemplateVersionCommandOutput @@ -2215,10 +2360,12 @@ export type ServiceOutputTypes = | CreateNatGatewayCommandOutput | CreateNetworkAclCommandOutput | CreateNetworkAclEntryCommandOutput + | CreateNetworkInsightsAccessScopeCommandOutput | CreateNetworkInsightsPathCommandOutput | CreateNetworkInterfaceCommandOutput | CreateNetworkInterfacePermissionCommandOutput | CreatePlacementGroupCommandOutput + | CreatePublicIpv4PoolCommandOutput | CreateReplaceRootVolumeTaskCommandOutput | CreateReservedInstancesListingCommandOutput | CreateRestoreImageTaskCommandOutput @@ -2265,6 +2412,9 @@ export type ServiceOutputTypes = | DeleteFpgaImageCommandOutput | DeleteInstanceEventWindowCommandOutput | DeleteInternetGatewayCommandOutput + | DeleteIpamCommandOutput + | DeleteIpamPoolCommandOutput + | DeleteIpamScopeCommandOutput | DeleteKeyPairCommandOutput | DeleteLaunchTemplateCommandOutput | DeleteLaunchTemplateVersionsCommandOutput @@ -2274,11 +2424,14 @@ export type ServiceOutputTypes = | DeleteNatGatewayCommandOutput | DeleteNetworkAclCommandOutput | DeleteNetworkAclEntryCommandOutput + | DeleteNetworkInsightsAccessScopeAnalysisCommandOutput + | DeleteNetworkInsightsAccessScopeCommandOutput | DeleteNetworkInsightsAnalysisCommandOutput | DeleteNetworkInsightsPathCommandOutput | DeleteNetworkInterfaceCommandOutput | DeleteNetworkInterfacePermissionCommandOutput | DeletePlacementGroupCommandOutput + | DeletePublicIpv4PoolCommandOutput | DeleteQueuedReservedInstancesCommandOutput | DeleteRouteCommandOutput | DeleteRouteTableCommandOutput @@ -2311,6 +2464,8 @@ export type ServiceOutputTypes = | DeleteVpnConnectionRouteCommandOutput | DeleteVpnGatewayCommandOutput | DeprovisionByoipCidrCommandOutput + | DeprovisionIpamPoolCidrCommandOutput + | DeprovisionPublicIpv4PoolCidrCommandOutput | DeregisterImageCommandOutput | DeregisterInstanceEventNotificationAttributesCommandOutput | DeregisterTransitGatewayMulticastGroupMembersCommandOutput @@ -2365,6 +2520,9 @@ export type ServiceOutputTypes = | DescribeInstanceTypesCommandOutput | DescribeInstancesCommandOutput | DescribeInternetGatewaysCommandOutput + | DescribeIpamPoolsCommandOutput + | DescribeIpamScopesCommandOutput + | DescribeIpamsCommandOutput | DescribeIpv6PoolsCommandOutput | DescribeKeyPairsCommandOutput | DescribeLaunchTemplateVersionsCommandOutput @@ -2379,6 +2537,8 @@ export type ServiceOutputTypes = | DescribeMovingAddressesCommandOutput | DescribeNatGatewaysCommandOutput | DescribeNetworkAclsCommandOutput + | DescribeNetworkInsightsAccessScopeAnalysesCommandOutput + | DescribeNetworkInsightsAccessScopesCommandOutput | DescribeNetworkInsightsAnalysesCommandOutput | DescribeNetworkInsightsPathsCommandOutput | DescribeNetworkInterfaceAttributeCommandOutput @@ -2450,6 +2610,7 @@ export type ServiceOutputTypes = | DisableEbsEncryptionByDefaultCommandOutput | DisableFastSnapshotRestoresCommandOutput | DisableImageDeprecationCommandOutput + | DisableIpamOrganizationAdminAccountCommandOutput | DisableSerialConsoleAccessCommandOutput | DisableTransitGatewayRouteTablePropagationCommandOutput | DisableVgwRoutePropagationCommandOutput @@ -2469,6 +2630,7 @@ export type ServiceOutputTypes = | EnableEbsEncryptionByDefaultCommandOutput | EnableFastSnapshotRestoresCommandOutput | EnableImageDeprecationCommandOutput + | EnableIpamOrganizationAdminAccountCommandOutput | EnableSerialConsoleAccessCommandOutput | EnableTransitGatewayRouteTablePropagationCommandOutput | EnableVgwRoutePropagationCommandOutput @@ -2492,9 +2654,15 @@ export type ServiceOutputTypes = | GetGroupsForCapacityReservationCommandOutput | GetHostReservationPurchasePreviewCommandOutput | GetInstanceTypesFromInstanceRequirementsCommandOutput + | GetIpamAddressHistoryCommandOutput + | GetIpamPoolAllocationsCommandOutput + | GetIpamPoolCidrsCommandOutput + | GetIpamResourceCidrsCommandOutput | GetLaunchTemplateDataCommandOutput | GetManagedPrefixListAssociationsCommandOutput | GetManagedPrefixListEntriesCommandOutput + | GetNetworkInsightsAccessScopeAnalysisFindingsCommandOutput + | GetNetworkInsightsAccessScopeContentCommandOutput | GetPasswordDataCommandOutput | GetReservedInstancesExchangeQuoteCommandOutput | GetSerialConsoleAccessStatusCommandOutput @@ -2534,6 +2702,10 @@ export type ServiceOutputTypes = | ModifyInstanceEventWindowCommandOutput | ModifyInstanceMetadataOptionsCommandOutput | ModifyInstancePlacementCommandOutput + | ModifyIpamCommandOutput + | ModifyIpamPoolCommandOutput + | ModifyIpamResourceCidrCommandOutput + | ModifyIpamScopeCommandOutput | ModifyLaunchTemplateCommandOutput | ModifyManagedPrefixListCommandOutput | ModifyNetworkInterfaceAttributeCommandOutput @@ -2565,7 +2737,10 @@ export type ServiceOutputTypes = | ModifyVpnTunnelOptionsCommandOutput | MonitorInstancesCommandOutput | MoveAddressToVpcCommandOutput + | MoveByoipCidrToIpamCommandOutput | ProvisionByoipCidrCommandOutput + | ProvisionIpamPoolCidrCommandOutput + | ProvisionPublicIpv4PoolCidrCommandOutput | PurchaseHostReservationCommandOutput | PurchaseReservedInstancesOfferingCommandOutput | PurchaseScheduledInstancesCommandOutput @@ -2581,6 +2756,7 @@ export type ServiceOutputTypes = | RejectVpcPeeringConnectionCommandOutput | ReleaseAddressCommandOutput | ReleaseHostsCommandOutput + | ReleaseIpamPoolAllocationCommandOutput | ReplaceIamInstanceProfileAssociationCommandOutput | ReplaceNetworkAclAssociationCommandOutput | ReplaceNetworkAclEntryCommandOutput @@ -2611,6 +2787,7 @@ export type ServiceOutputTypes = | SearchTransitGatewayRoutesCommandOutput | SendDiagnosticInterruptCommandOutput | StartInstancesCommandOutput + | StartNetworkInsightsAccessScopeAnalysisCommandOutput | StartNetworkInsightsAnalysisCommandOutput | StartVpcEndpointServicePrivateDnsVerificationCommandOutput | StopInstancesCommandOutput diff --git a/clients/client-ec2/src/commands/AllocateIpamPoolCidrCommand.ts b/clients/client-ec2/src/commands/AllocateIpamPoolCidrCommand.ts new file mode 100644 index 000000000000..6122d43693ca --- /dev/null +++ b/clients/client-ec2/src/commands/AllocateIpamPoolCidrCommand.ts @@ -0,0 +1,96 @@ +import { getSerdePlugin } from "@aws-sdk/middleware-serde"; +import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http"; +import { Command as $Command } from "@aws-sdk/smithy-client"; +import { + FinalizeHandlerArguments, + Handler, + HandlerExecutionContext, + HttpHandlerOptions as __HttpHandlerOptions, + MetadataBearer as __MetadataBearer, + MiddlewareStack, + SerdeContext as __SerdeContext, +} from "@aws-sdk/types"; + +import { EC2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../EC2Client"; +import { AllocateIpamPoolCidrRequest, AllocateIpamPoolCidrResult } from "../models/models_0"; +import { + deserializeAws_ec2AllocateIpamPoolCidrCommand, + serializeAws_ec2AllocateIpamPoolCidrCommand, +} from "../protocols/Aws_ec2"; + +export interface AllocateIpamPoolCidrCommandInput extends AllocateIpamPoolCidrRequest {} +export interface AllocateIpamPoolCidrCommandOutput extends AllocateIpamPoolCidrResult, __MetadataBearer {} + +/** + *Allocate a CIDR from an IPAM pool. In IPAM, an allocation is a CIDR assignment from an IPAM pool to another resource or IPAM pool. For more information, see Allocate CIDRs in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, AllocateIpamPoolCidrCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, AllocateIpamPoolCidrCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new AllocateIpamPoolCidrCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link AllocateIpamPoolCidrCommandInput} for command's `input` shape. + * @see {@link AllocateIpamPoolCidrCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class AllocateIpamPoolCidrCommand extends $Command< + AllocateIpamPoolCidrCommandInput, + AllocateIpamPoolCidrCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: AllocateIpamPoolCidrCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackCreate an IPAM. Amazon VCP IP Address Manager (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 Create an IPAM in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, CreateIpamCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, CreateIpamCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new CreateIpamCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link CreateIpamCommandInput} for command's `input` shape. + * @see {@link CreateIpamCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class CreateIpamCommand extends $Command< + CreateIpamCommandInput, + CreateIpamCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: CreateIpamCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackCreate an IP address pool for Amazon VPC IP Address Manager (IPAM). 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.
+ *For more information, see Create a top-level pool in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, CreateIpamPoolCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, CreateIpamPoolCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new CreateIpamPoolCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link CreateIpamPoolCommandInput} for command's `input` shape. + * @see {@link CreateIpamPoolCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class CreateIpamPoolCommand extends $Command< + CreateIpamPoolCommandInput, + CreateIpamPoolCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: CreateIpamPoolCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackCreate an IPAM scope. 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 Add a scope in the Amazon VPC IPAM User Guide.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, CreateIpamScopeCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, CreateIpamScopeCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new CreateIpamScopeCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link CreateIpamScopeCommandInput} for command's `input` shape. + * @see {@link CreateIpamScopeCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class CreateIpamScopeCommand extends $Command< + CreateIpamScopeCommandInput, + CreateIpamScopeCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: CreateIpamScopeCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackCreates a Network Access Scope.
+ *Amazon Web Services Network Access Analyzer enables cloud networking and cloud operations teams + * to verify that their networks on Amazon Web Services conform to their network security and governance + * objectives. For more information, see the Amazon Web Services Network Access Analyzer Guide.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, CreateNetworkInsightsAccessScopeCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, CreateNetworkInsightsAccessScopeCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new CreateNetworkInsightsAccessScopeCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link CreateNetworkInsightsAccessScopeCommandInput} for command's `input` shape. + * @see {@link CreateNetworkInsightsAccessScopeCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class CreateNetworkInsightsAccessScopeCommand extends $Command< + CreateNetworkInsightsAccessScopeCommandInput, + CreateNetworkInsightsAccessScopeCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: CreateNetworkInsightsAccessScopeCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackCreates a public IPv4 address pool. A public IPv4 pool is an EC2 IP address pool required for the public IPv4 CIDRs that you own and bring to Amazon Web Services to manage with IPAM. IPv6 addresses you bring to Amazon Web Services, however, use IPAM pools only. To monitor the status of pool creation, use DescribePublicIpv4Pools.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, CreatePublicIpv4PoolCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, CreatePublicIpv4PoolCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new CreatePublicIpv4PoolCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link CreatePublicIpv4PoolCommandInput} for command's `input` shape. + * @see {@link CreatePublicIpv4PoolCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class CreatePublicIpv4PoolCommand extends $Command< + CreatePublicIpv4PoolCommandInput, + CreatePublicIpv4PoolCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: CreatePublicIpv4PoolCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDelete an IPAM. Deleting an IPAM removes all monitored data associated with the IPAM including the historical data for CIDRs.
+ *You cannot delete an IPAM if there are CIDRs provisioned to pools or if there are allocations in the pools within the IPAM. To deprovision pool + * CIDRs, see DeprovisionIpamPoolCidr. To release allocations, see ReleaseIpamPoolAllocation. + *
+ *For more information, see Delete an IPAM in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DeleteIpamCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DeleteIpamCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DeleteIpamCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeleteIpamCommandInput} for command's `input` shape. + * @see {@link DeleteIpamCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DeleteIpamCommand extends $Command< + DeleteIpamCommandInput, + DeleteIpamCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeleteIpamCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDelete an IPAM pool.
+ *You cannot delete an IPAM pool if there are allocations in it or CIDRs provisioned to it. To release + * allocations, see ReleaseIpamPoolAllocation. To deprovision pool + * CIDRs, see DeprovisionIpamPoolCidr.
+ *For more information, see Delete a pool in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DeleteIpamPoolCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DeleteIpamPoolCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DeleteIpamPoolCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeleteIpamPoolCommandInput} for command's `input` shape. + * @see {@link DeleteIpamPoolCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DeleteIpamPoolCommand extends $Command< + DeleteIpamPoolCommandInput, + DeleteIpamPoolCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeleteIpamPoolCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDelete the scope for an IPAM. You cannot delete the default scopes.
+ *For more information, see Delete a scope in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DeleteIpamScopeCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DeleteIpamScopeCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DeleteIpamScopeCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeleteIpamScopeCommandInput} for command's `input` shape. + * @see {@link DeleteIpamScopeCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DeleteIpamScopeCommand extends $Command< + DeleteIpamScopeCommandInput, + DeleteIpamScopeCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeleteIpamScopeCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDeletes the specified Network Access Scope analysis.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DeleteNetworkInsightsAccessScopeAnalysisCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DeleteNetworkInsightsAccessScopeAnalysisCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DeleteNetworkInsightsAccessScopeAnalysisCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeleteNetworkInsightsAccessScopeAnalysisCommandInput} for command's `input` shape. + * @see {@link DeleteNetworkInsightsAccessScopeAnalysisCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DeleteNetworkInsightsAccessScopeAnalysisCommand extends $Command< + DeleteNetworkInsightsAccessScopeAnalysisCommandInput, + DeleteNetworkInsightsAccessScopeAnalysisCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeleteNetworkInsightsAccessScopeAnalysisCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDeletes the specified Network Access Scope.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DeleteNetworkInsightsAccessScopeCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DeleteNetworkInsightsAccessScopeCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DeleteNetworkInsightsAccessScopeCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeleteNetworkInsightsAccessScopeCommandInput} for command's `input` shape. + * @see {@link DeleteNetworkInsightsAccessScopeCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DeleteNetworkInsightsAccessScopeCommand extends $Command< + DeleteNetworkInsightsAccessScopeCommandInput, + DeleteNetworkInsightsAccessScopeCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeleteNetworkInsightsAccessScopeCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDelete a public IPv4 pool. A public IPv4 pool is an EC2 IP address pool required for the public IPv4 CIDRs that you own and bring to Amazon Web Services to manage with IPAM. IPv6 addresses you bring to Amazon Web Services, however, use IPAM pools only.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DeletePublicIpv4PoolCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DeletePublicIpv4PoolCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DeletePublicIpv4PoolCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeletePublicIpv4PoolCommandInput} for command's `input` shape. + * @see {@link DeletePublicIpv4PoolCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DeletePublicIpv4PoolCommand extends $Command< + DeletePublicIpv4PoolCommandInput, + DeletePublicIpv4PoolCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeletePublicIpv4PoolCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDeprovision a CIDR provisioned from an IPAM pool. If you deprovision a CIDR from a pool that has a source pool, the CIDR is recycled back into the source pool. For more information, see Deprovision pool CIDRs in the Amazon VPC IPAM User Guide.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DeprovisionIpamPoolCidrCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DeprovisionIpamPoolCidrCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DeprovisionIpamPoolCidrCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeprovisionIpamPoolCidrCommandInput} for command's `input` shape. + * @see {@link DeprovisionIpamPoolCidrCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DeprovisionIpamPoolCidrCommand extends $Command< + DeprovisionIpamPoolCidrCommandInput, + DeprovisionIpamPoolCidrCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeprovisionIpamPoolCidrCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDeprovision a CIDR from a public IPv4 pool.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DeprovisionPublicIpv4PoolCidrCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DeprovisionPublicIpv4PoolCidrCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DeprovisionPublicIpv4PoolCidrCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DeprovisionPublicIpv4PoolCidrCommandInput} for command's `input` shape. + * @see {@link DeprovisionPublicIpv4PoolCidrCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DeprovisionPublicIpv4PoolCidrCommand extends $Command< + DeprovisionPublicIpv4PoolCidrCommandInput, + DeprovisionPublicIpv4PoolCidrCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DeprovisionPublicIpv4PoolCidrCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackGet information about your IPAM pools.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DescribeIpamPoolsCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DescribeIpamPoolsCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DescribeIpamPoolsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeIpamPoolsCommandInput} for command's `input` shape. + * @see {@link DescribeIpamPoolsCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DescribeIpamPoolsCommand extends $Command< + DescribeIpamPoolsCommandInput, + DescribeIpamPoolsCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeIpamPoolsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackGet information about your IPAM scopes.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DescribeIpamScopesCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DescribeIpamScopesCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DescribeIpamScopesCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeIpamScopesCommandInput} for command's `input` shape. + * @see {@link DescribeIpamScopesCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DescribeIpamScopesCommand extends $Command< + DescribeIpamScopesCommandInput, + DescribeIpamScopesCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeIpamScopesCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackGet information about your IPAM pools.
+ *For more information, see What is IPAM? in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DescribeIpamsCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DescribeIpamsCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DescribeIpamsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeIpamsCommandInput} for command's `input` shape. + * @see {@link DescribeIpamsCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DescribeIpamsCommand extends $Command< + DescribeIpamsCommandInput, + DescribeIpamsCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeIpamsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDescribes the specified Network Access Scope analyses.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DescribeNetworkInsightsAccessScopeAnalysesCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DescribeNetworkInsightsAccessScopeAnalysesCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DescribeNetworkInsightsAccessScopeAnalysesCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeNetworkInsightsAccessScopeAnalysesCommandInput} for command's `input` shape. + * @see {@link DescribeNetworkInsightsAccessScopeAnalysesCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DescribeNetworkInsightsAccessScopeAnalysesCommand extends $Command< + DescribeNetworkInsightsAccessScopeAnalysesCommandInput, + DescribeNetworkInsightsAccessScopeAnalysesCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeNetworkInsightsAccessScopeAnalysesCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDescribes the specified Network Access Scopes.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DescribeNetworkInsightsAccessScopesCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DescribeNetworkInsightsAccessScopesCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DescribeNetworkInsightsAccessScopesCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DescribeNetworkInsightsAccessScopesCommandInput} for command's `input` shape. + * @see {@link DescribeNetworkInsightsAccessScopesCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DescribeNetworkInsightsAccessScopesCommand extends $Command< + DescribeNetworkInsightsAccessScopesCommandInput, + DescribeNetworkInsightsAccessScopesCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DescribeNetworkInsightsAccessScopesCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDisable the IPAM account. For more information, see Enable integration with Organizations in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, DisableIpamOrganizationAdminAccountCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, DisableIpamOrganizationAdminAccountCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new DisableIpamOrganizationAdminAccountCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link DisableIpamOrganizationAdminAccountCommandInput} for command's `input` shape. + * @see {@link DisableIpamOrganizationAdminAccountCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class DisableIpamOrganizationAdminAccountCommand extends $Command< + DisableIpamOrganizationAdminAccountCommandInput, + DisableIpamOrganizationAdminAccountCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: DisableIpamOrganizationAdminAccountCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackEnable an Organizations member account as the IPAM admin account. You cannot select the Organizations management account as the IPAM admin account. For more information, see Enable integration with Organizations in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, EnableIpamOrganizationAdminAccountCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, EnableIpamOrganizationAdminAccountCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new EnableIpamOrganizationAdminAccountCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link EnableIpamOrganizationAdminAccountCommandInput} for command's `input` shape. + * @see {@link EnableIpamOrganizationAdminAccountCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class EnableIpamOrganizationAdminAccountCommand extends $Command< + EnableIpamOrganizationAdminAccountCommandInput, + EnableIpamOrganizationAdminAccountCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: EnableIpamOrganizationAdminAccountCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackRetrieve historical information about a CIDR within an IPAM scope. For more information, see View the history of IP addresses in the Amazon VPC IPAM User Guide.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, GetIpamAddressHistoryCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, GetIpamAddressHistoryCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new GetIpamAddressHistoryCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link GetIpamAddressHistoryCommandInput} for command's `input` shape. + * @see {@link GetIpamAddressHistoryCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class GetIpamAddressHistoryCommand extends $Command< + GetIpamAddressHistoryCommandInput, + GetIpamAddressHistoryCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: GetIpamAddressHistoryCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackGet a list of all the CIDR allocations in an IPAM pool.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, GetIpamPoolAllocationsCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, GetIpamPoolAllocationsCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new GetIpamPoolAllocationsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link GetIpamPoolAllocationsCommandInput} for command's `input` shape. + * @see {@link GetIpamPoolAllocationsCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class GetIpamPoolAllocationsCommand extends $Command< + GetIpamPoolAllocationsCommandInput, + GetIpamPoolAllocationsCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: GetIpamPoolAllocationsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackGet the CIDRs provisioned to an IPAM pool.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, GetIpamPoolCidrsCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, GetIpamPoolCidrsCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new GetIpamPoolCidrsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link GetIpamPoolCidrsCommandInput} for command's `input` shape. + * @see {@link GetIpamPoolCidrsCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class GetIpamPoolCidrsCommand extends $Command< + GetIpamPoolCidrsCommandInput, + GetIpamPoolCidrsCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: GetIpamPoolCidrsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackGet information about the resources in a scope.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, GetIpamResourceCidrsCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, GetIpamResourceCidrsCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new GetIpamResourceCidrsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link GetIpamResourceCidrsCommandInput} for command's `input` shape. + * @see {@link GetIpamResourceCidrsCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class GetIpamResourceCidrsCommand extends $Command< + GetIpamResourceCidrsCommandInput, + GetIpamResourceCidrsCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: GetIpamResourceCidrsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackGets the findings for the specified Network Access Scope analysis.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, GetNetworkInsightsAccessScopeAnalysisFindingsCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, GetNetworkInsightsAccessScopeAnalysisFindingsCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new GetNetworkInsightsAccessScopeAnalysisFindingsCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link GetNetworkInsightsAccessScopeAnalysisFindingsCommandInput} for command's `input` shape. + * @see {@link GetNetworkInsightsAccessScopeAnalysisFindingsCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class GetNetworkInsightsAccessScopeAnalysisFindingsCommand extends $Command< + GetNetworkInsightsAccessScopeAnalysisFindingsCommandInput, + GetNetworkInsightsAccessScopeAnalysisFindingsCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: GetNetworkInsightsAccessScopeAnalysisFindingsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackGets the content for the specified Network Access Scope.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, GetNetworkInsightsAccessScopeContentCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, GetNetworkInsightsAccessScopeContentCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new GetNetworkInsightsAccessScopeContentCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link GetNetworkInsightsAccessScopeContentCommandInput} for command's `input` shape. + * @see {@link GetNetworkInsightsAccessScopeContentCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class GetNetworkInsightsAccessScopeContentCommand extends $Command< + GetNetworkInsightsAccessScopeContentCommandInput, + GetNetworkInsightsAccessScopeContentCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: GetNetworkInsightsAccessScopeContentCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackModify the configurations of an IPAM. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, ModifyIpamCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, ModifyIpamCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new ModifyIpamCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ModifyIpamCommandInput} for command's `input` shape. + * @see {@link ModifyIpamCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class ModifyIpamCommand extends $Command< + ModifyIpamCommandInput, + ModifyIpamCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ModifyIpamCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackModify the configurations of an IPAM pool.
+ *For more information, see Modify a pool in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, ModifyIpamPoolCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, ModifyIpamPoolCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new ModifyIpamPoolCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ModifyIpamPoolCommandInput} for command's `input` shape. + * @see {@link ModifyIpamPoolCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class ModifyIpamPoolCommand extends $Command< + ModifyIpamPoolCommandInput, + ModifyIpamPoolCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ModifyIpamPoolCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackModify a resource CIDR. You can use this action to transfer resource CIDRs between scopes and ignore resource CIDRs that you do not want to manage. If set to false, the resource will not be tracked for overlap, it cannot be auto-imported into a pool, and it will be removed from any pool it has an allocation in.
+ *For more information, see Move resource CIDRs between scopes and Change the monitoring state of resource CIDRs in the Amazon VPC IPAM User Guide.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, ModifyIpamResourceCidrCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, ModifyIpamResourceCidrCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new ModifyIpamResourceCidrCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ModifyIpamResourceCidrCommandInput} for command's `input` shape. + * @see {@link ModifyIpamResourceCidrCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class ModifyIpamResourceCidrCommand extends $Command< + ModifyIpamResourceCidrCommandInput, + ModifyIpamResourceCidrCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ModifyIpamResourceCidrCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackModify an IPAM scope.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, ModifyIpamScopeCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, ModifyIpamScopeCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new ModifyIpamScopeCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ModifyIpamScopeCommandInput} for command's `input` shape. + * @see {@link ModifyIpamScopeCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class ModifyIpamScopeCommand extends $Command< + ModifyIpamScopeCommandInput, + ModifyIpamScopeCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ModifyIpamScopeCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackMove an BYOIP IPv4 CIDR to IPAM from a public IPv4 pool.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, MoveByoipCidrToIpamCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, MoveByoipCidrToIpamCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new MoveByoipCidrToIpamCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link MoveByoipCidrToIpamCommandInput} for command's `input` shape. + * @see {@link MoveByoipCidrToIpamCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class MoveByoipCidrToIpamCommand extends $Command< + MoveByoipCidrToIpamCommandInput, + MoveByoipCidrToIpamCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: MoveByoipCidrToIpamCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackProvision a CIDR to an IPAM pool. You can use thsi action to provision new CIDRs to a top-level pool or to transfer a CIDR from a top-level pool to a pool within it.
+ *For more information, see Provision CIDRs to pools in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, ProvisionIpamPoolCidrCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, ProvisionIpamPoolCidrCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new ProvisionIpamPoolCidrCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ProvisionIpamPoolCidrCommandInput} for command's `input` shape. + * @see {@link ProvisionIpamPoolCidrCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class ProvisionIpamPoolCidrCommand extends $Command< + ProvisionIpamPoolCidrCommandInput, + ProvisionIpamPoolCidrCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ProvisionIpamPoolCidrCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackProvision a CIDR to a public IPv4 pool.
+ *For more information about IPAM, see What is IPAM? in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, ProvisionPublicIpv4PoolCidrCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, ProvisionPublicIpv4PoolCidrCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new ProvisionPublicIpv4PoolCidrCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ProvisionPublicIpv4PoolCidrCommandInput} for command's `input` shape. + * @see {@link ProvisionPublicIpv4PoolCidrCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class ProvisionPublicIpv4PoolCidrCommand extends $Command< + ProvisionPublicIpv4PoolCidrCommandInput, + ProvisionPublicIpv4PoolCidrCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ProvisionPublicIpv4PoolCidrCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackRelease an allocation within an IPAM pool. You can only use this action to release manual allocations. To remove an allocation for a resource without deleting the resource, set its monitored state to false using ModifyIpamResourceCidr. For more information, see Release an allocation in the Amazon VPC IPAM User Guide. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, ReleaseIpamPoolAllocationCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, ReleaseIpamPoolAllocationCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new ReleaseIpamPoolAllocationCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link ReleaseIpamPoolAllocationCommandInput} for command's `input` shape. + * @see {@link ReleaseIpamPoolAllocationCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class ReleaseIpamPoolAllocationCommand extends $Command< + ReleaseIpamPoolAllocationCommandInput, + ReleaseIpamPoolAllocationCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: ReleaseIpamPoolAllocationCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackStarts analyzing the specified Network Access Scope.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { EC2Client, StartNetworkInsightsAccessScopeAnalysisCommand } from "@aws-sdk/client-ec2"; // ES Modules import + * // const { EC2Client, StartNetworkInsightsAccessScopeAnalysisCommand } = require("@aws-sdk/client-ec2"); // CommonJS import + * const client = new EC2Client(config); + * const command = new StartNetworkInsightsAccessScopeAnalysisCommand(input); + * const response = await client.send(command); + * ``` + * + * @see {@link StartNetworkInsightsAccessScopeAnalysisCommandInput} for command's `input` shape. + * @see {@link StartNetworkInsightsAccessScopeAnalysisCommandOutput} for command's `response` shape. + * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. + * + */ +export class StartNetworkInsightsAccessScopeAnalysisCommand extends $Command< + StartNetworkInsightsAccessScopeAnalysisCommandInput, + StartNetworkInsightsAccessScopeAnalysisCommandOutput, + EC2ClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + constructor(readonly input: StartNetworkInsightsAccessScopeAnalysisCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackDescribes a value of an account attribute.
+ *Describes a range of ports.
*/ -export interface AccountAttributeValue { +export interface PortRange { /** - *The value of the attribute.
+ *The first port in the range.
*/ - AttributeValue?: string; + From?: number; + + /** + *The last port in the range.
+ */ + To?: number; } -export namespace AccountAttributeValue { +export namespace PortRange { /** * @internal */ - export const filterSensitiveLog = (obj: AccountAttributeValue): any => ({ + export const filterSensitiveLog = (obj: PortRange): any => ({ ...obj, }); } /** - *Describes an account attribute.
+ *Describes a network access control (ACL) rule.
*/ -export interface AccountAttribute { +export interface AnalysisAclRule { /** - *The name of the account attribute.
+ *The IPv4 address range, in CIDR notation.
*/ - AttributeName?: string; + Cidr?: string; /** - *The values for the account attribute.
+ *Indicates whether the rule is an outbound rule.
*/ - AttributeValues?: AccountAttributeValue[]; + Egress?: boolean; + + /** + *The range of ports.
+ */ + PortRange?: PortRange; + + /** + *The protocol.
+ */ + Protocol?: string; + + /** + *Indicates whether to allow or deny traffic that matches the rule.
+ */ + RuleAction?: string; + + /** + *The rule number.
+ */ + RuleNumber?: number; } -export namespace AccountAttribute { +export namespace AnalysisAclRule { /** * @internal */ - export const filterSensitiveLog = (obj: AccountAttribute): any => ({ + export const filterSensitiveLog = (obj: AnalysisAclRule): any => ({ ...obj, }); } -export type AccountAttributeName = "default-vpc" | "supported-platforms"; - -export enum InstanceHealthStatus { - HEALTHY_STATUS = "healthy", - UNHEALTHY_STATUS = "unhealthy", -} - /** - *Describes a running instance in a Spot Fleet.
+ *Describes a path component.
*/ -export interface ActiveInstance { - /** - *The ID of the instance.
- */ - InstanceId?: string; - +export interface AnalysisComponent { /** - *The instance type.
+ *The ID of the component.
*/ - InstanceType?: string; + Id?: string; /** - *The ID of the Spot Instance request.
+ *The Amazon Resource Name (ARN) of the component.
*/ - SpotInstanceRequestId?: string; + Arn?: string; /** - *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
.
The name of the analysis component.
*/ - InstanceHealth?: InstanceHealthStatus | string; + Name?: string; } -export namespace ActiveInstance { +export namespace AnalysisComponent { /** * @internal */ - export const filterSensitiveLog = (obj: ActiveInstance): any => ({ + export const filterSensitiveLog = (obj: AnalysisComponent): any => ({ ...obj, }); } -export enum ActivityStatus { - ERROR = "error", - FULFILLED = "fulfilled", - PENDING_FULFILLMENT = "pending_fulfillment", - PENDING_TERMINATION = "pending_termination", -} - /** - *An entry for a prefix list.
+ *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.
*/ -export interface AddPrefixListEntry { +export interface AnalysisPacketHeader { /** - *The CIDR block.
+ *The destination addresses.
*/ - Cidr: string | undefined; + DestinationAddresses?: string[]; /** - *A description for the entry.
- *Constraints: Up to 255 characters in length.
+ *The destination port ranges.
*/ - Description?: string; + DestinationPortRanges?: PortRange[]; + + /** + *The protocol.
+ */ + Protocol?: string; + + /** + *The source addresses.
+ */ + SourceAddresses?: string[]; + + /** + *The source port ranges.
+ */ + SourcePortRanges?: PortRange[]; } -export namespace AddPrefixListEntry { +export namespace AnalysisPacketHeader { /** * @internal */ - export const filterSensitiveLog = (obj: AddPrefixListEntry): any => ({ + export const filterSensitiveLog = (obj: AnalysisPacketHeader): any => ({ ...obj, }); } -export type DomainType = "standard" | "vpc"; - /** - *Describes an Elastic IP address, or a carrier IP address.
+ *Describes a route table route.
*/ -export interface Address { +export interface AnalysisRouteTableRoute { /** - *The ID of the instance that the address is associated with (if any).
+ *The destination IPv4 address, in CIDR notation.
*/ - InstanceId?: string; + DestinationCidr?: string; /** - *The Elastic IP address.
+ *The prefix of the Amazon Web Service.
*/ - PublicIp?: string; + DestinationPrefixListId?: string; /** - *The ID representing the allocation of the address for use with EC2-VPC.
+ *The ID of an egress-only internet gateway.
*/ - AllocationId?: string; + EgressOnlyInternetGatewayId?: string; /** - *The ID representing the association of the address with an instance in a VPC.
+ *The ID of the gateway, such as an internet gateway or virtual private gateway.
*/ - AssociationId?: string; + GatewayId?: string; /** - *Indicates whether this Elastic IP address is for use with instances
- * in EC2-Classic (standard
) or instances in a VPC (vpc
).
The ID of the instance, such as a NAT instance.
*/ - Domain?: DomainType | string; + InstanceId?: string; /** - *The ID of the network interface.
+ *The ID of a NAT gateway.
+ */ + NatGatewayId?: string; + + /** + *The ID of a network interface.
*/ NetworkInterfaceId?: string; /** - *The ID of the Amazon Web Services account that owns the network interface.
+ *Describes how the route was created. The following are 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.
The private IP address associated with the Elastic IP address.
+ *The ID of a transit gateway.
*/ - PrivateIpAddress?: string; + TransitGatewayId?: string; /** - *Any tags assigned to the Elastic IP address.
+ *The ID of a VPC peering connection.
*/ - Tags?: Tag[]; + VpcPeeringConnectionId?: string; +} +export namespace AnalysisRouteTableRoute { /** - *The ID of an address pool.
+ * @internal */ - PublicIpv4Pool?: string; + export const filterSensitiveLog = (obj: AnalysisRouteTableRoute): any => ({ + ...obj, + }); +} +/** + *Describes a security group rule.
+ */ +export interface AnalysisSecurityGroupRule { /** - *The name of the unique set of Availability Zones, Local Zones, or Wavelength Zones from - * which Amazon Web Services advertises IP addresses.
+ *The IPv4 address range, in CIDR notation.
*/ - NetworkBorderGroup?: string; + Cidr?: string; /** - *The customer-owned IP address.
+ *The direction. The following are possible values:
+ *egress
+ *ingress
+ *The ID of the customer-owned address pool.
+ *The security group ID.
*/ - CustomerOwnedIpv4Pool?: string; + SecurityGroupId?: string; /** - *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).
+ *The port range.
*/ - CarrierIp?: string; + PortRange?: PortRange; + + /** + *The prefix list ID.
+ */ + PrefixListId?: string; + + /** + *The protocol name.
+ */ + Protocol?: string; } -export namespace Address { +export namespace AnalysisSecurityGroupRule { /** * @internal */ - export const filterSensitiveLog = (obj: Address): any => ({ + export const filterSensitiveLog = (obj: AnalysisSecurityGroupRule): any => ({ ...obj, }); } /** - *The status of an updated pointer (PTR) record for an Elastic IP address.
+ *Describes a path component.
*/ -export interface PtrUpdateStatus { +export interface PathComponent { /** - *The value for the PTR record update.
+ *The sequence number.
*/ - Value?: string; + SequenceNumber?: number; /** - *The status of the PTR record update.
+ *The network ACL rule.
*/ - Status?: string; + AclRule?: AnalysisAclRule; /** - *The reason for the PTR record update.
+ *The resource to which the path component is attached.
*/ - Reason?: string; -} + AttachedTo?: AnalysisComponent; -export namespace PtrUpdateStatus { /** - * @internal + *The component.
*/ - export const filterSensitiveLog = (obj: PtrUpdateStatus): any => ({ - ...obj, - }); -} + Component?: AnalysisComponent; -/** - *The attributes associated with an Elastic IP address.
- */ -export interface AddressAttribute { /** - *The public IP address.
+ *The destination VPC.
*/ - PublicIp?: string; + DestinationVpc?: AnalysisComponent; /** - *[EC2-VPC] The allocation ID.
+ *The outbound header.
*/ - AllocationId?: string; + OutboundHeader?: AnalysisPacketHeader; /** - *The pointer (PTR) record for the IP address.
+ *The inbound header.
*/ - PtrRecord?: string; + InboundHeader?: AnalysisPacketHeader; /** - *The updated PTR record for the IP address.
+ *The route table route.
*/ - PtrRecordUpdate?: PtrUpdateStatus; + RouteTableRoute?: AnalysisRouteTableRoute; + + /** + *The security group rule.
+ */ + SecurityGroupRule?: AnalysisSecurityGroupRule; + + /** + *The source VPC.
+ */ + SourceVpc?: AnalysisComponent; + + /** + *The subnet.
+ */ + Subnet?: AnalysisComponent; + + /** + *The component VPC.
+ */ + Vpc?: AnalysisComponent; } -export namespace AddressAttribute { +export namespace PathComponent { /** * @internal */ - export const filterSensitiveLog = (obj: AddressAttribute): any => ({ + export const filterSensitiveLog = (obj: PathComponent): any => ({ ...obj, }); } -export type AddressAttributeName = "domain-name"; +/** + *Describes a finding for a Network Access Scope.
+ */ +export interface AccessScopeAnalysisFinding { + /** + *The ID of the Network Access Scope analysis.
+ */ + NetworkInsightsAccessScopeAnalysisId?: string; -export interface AdvertiseByoipCidrRequest { /** - *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.
+ *The ID of the Network Access Scope.
*/ - Cidr: string | undefined; + NetworkInsightsAccessScopeId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the finding.
*/ - DryRun?: boolean; + FindingId?: string; + + /** + *The finding components.
+ */ + FindingComponents?: PathComponent[]; } -export namespace AdvertiseByoipCidrRequest { +export namespace AccessScopeAnalysisFinding { /** * @internal */ - export const filterSensitiveLog = (obj: AdvertiseByoipCidrRequest): any => ({ + export const filterSensitiveLog = (obj: AccessScopeAnalysisFinding): any => ({ ...obj, }); } -export type ByoipCidrState = - | "advertised" - | "deprovisioned" - | "failed-deprovision" - | "failed-provision" - | "pending-deprovision" - | "pending-provision" - | "provisioned" - | "provisioned-not-publicly-advertisable"; +export type Protocol = "tcp" | "udp"; /** - *Information about an address range that is provisioned for use with your Amazon Web Services resources - * through bring your own IP addresses (BYOIP).
+ *Describes a packet header statement.
*/ -export interface ByoipCidr { +export interface PacketHeaderStatement { /** - *The address range, in CIDR notation.
+ *The source addresses.
*/ - Cidr?: string; + SourceAddresses?: string[]; /** - *The description of the address range.
+ *The destination addresses.
*/ - Description?: string; + DestinationAddresses?: string[]; /** - *Upon success, contains the ID of the address pool. Otherwise, contains an error message.
+ *The source ports.
*/ - StatusMessage?: string; + SourcePorts?: string[]; /** - *The state of the address pool.
+ *The destination ports.
*/ - State?: ByoipCidrState | string; -} + DestinationPorts?: string[]; -export namespace ByoipCidr { /** - * @internal + *The source prefix lists.
*/ - export const filterSensitiveLog = (obj: ByoipCidr): any => ({ - ...obj, - }); -} + SourcePrefixLists?: string[]; -export interface AdvertiseByoipCidrResult { /** - *Information about the address range.
+ *The destination prefix lists.
*/ - ByoipCidr?: ByoipCidr; + DestinationPrefixLists?: string[]; + + /** + *The protocols.
+ */ + Protocols?: (Protocol | string)[]; } -export namespace AdvertiseByoipCidrResult { +export namespace PacketHeaderStatement { /** * @internal */ - export const filterSensitiveLog = (obj: AdvertiseByoipCidrResult): any => ({ + export const filterSensitiveLog = (obj: PacketHeaderStatement): any => ({ ...obj, }); } -export type Affinity = "default" | "host"; - -export type ResourceType = - | "capacity-reservation" - | "carrier-gateway" - | "client-vpn-endpoint" - | "customer-gateway" - | "dedicated-host" - | "dhcp-options" - | "egress-only-internet-gateway" - | "elastic-gpu" - | "elastic-ip" - | "export-image-task" - | "export-instance-task" - | "fleet" - | "fpga-image" - | "host-reservation" - | "image" - | "import-image-task" - | "import-snapshot-task" - | "instance" - | "instance-event-window" - | "internet-gateway" - | "ipv4pool-ec2" - | "ipv6pool-ec2" - | "key-pair" - | "launch-template" - | "local-gateway" - | "local-gateway-route-table" - | "local-gateway-route-table-virtual-interface-group-association" - | "local-gateway-route-table-vpc-association" - | "local-gateway-virtual-interface" - | "local-gateway-virtual-interface-group" - | "natgateway" - | "network-acl" - | "network-insights-analysis" - | "network-insights-path" - | "network-interface" - | "placement-group" - | "prefix-list" - | "replace-root-volume-task" - | "reserved-instances" - | "route-table" - | "security-group" - | "security-group-rule" - | "snapshot" - | "spot-fleet-request" - | "spot-instances-request" - | "subnet" - | "traffic-mirror-filter" - | "traffic-mirror-session" - | "traffic-mirror-target" - | "transit-gateway" - | "transit-gateway-attachment" - | "transit-gateway-connect-peer" - | "transit-gateway-multicast-domain" - | "transit-gateway-route-table" - | "volume" - | "vpc" - | "vpc-endpoint" - | "vpc-endpoint-service" - | "vpc-flow-log" - | "vpc-peering-connection" - | "vpn-connection" - | "vpn-gateway"; - /** - *The tags to apply to a resource when the resource is being created.
+ *Describes a resource statement.
*/ -export interface TagSpecification { +export interface ResourceStatement { /** - *The type of resource to tag on creation.
+ *The resources.
*/ - ResourceType?: ResourceType | string; + Resources?: string[]; /** - *The tags to apply to the resource.
+ *The resource types.
*/ - Tags?: Tag[]; + ResourceTypes?: string[]; } -export namespace TagSpecification { +export namespace ResourceStatement { /** * @internal */ - export const filterSensitiveLog = (obj: TagSpecification): any => ({ + export const filterSensitiveLog = (obj: ResourceStatement): any => ({ ...obj, }); } -export interface AllocateAddressRequest { +/** + *Describes a path statement.
+ */ +export interface PathStatement { /** - *Indicates whether the Elastic IP address is for use with instances in a VPC or instances in EC2-Classic.
- *Default: If the Region supports EC2-Classic, the default is standard
. Otherwise, the default
- * is vpc
.
The packet header statement.
*/ - Domain?: DomainType | string; + PacketHeaderStatement?: PacketHeaderStatement; /** - *[EC2-VPC] The Elastic IP address to recover or an IPv4 address from an address pool.
+ *The resource statement.
*/ - Address?: string; + ResourceStatement?: ResourceStatement; +} +export namespace PathStatement { /** - *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.
Describes a through resource statement.
+ */ +export interface ThroughResourcesStatement { /** - *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.
The resource statement.
*/ - NetworkBorderGroup?: string; + ResourceStatement?: ResourceStatement; +} +export namespace ThroughResourcesStatement { /** - *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.
+ * @internal */ - CustomerOwnedIpv4Pool?: string; + export const filterSensitiveLog = (obj: ThroughResourcesStatement): any => ({ + ...obj, + }); +} +/** + *Describes a path.
+ */ +export interface AccessScopePath { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The source.
*/ - DryRun?: boolean; + Source?: PathStatement; /** - *The tags to assign to the Elastic IP address.
+ *The destination.
*/ - TagSpecifications?: TagSpecification[]; + Destination?: PathStatement; + + /** + *The through resources.
+ */ + ThroughResources?: ThroughResourcesStatement[]; } -export namespace AllocateAddressRequest { +export namespace AccessScopePath { /** * @internal */ - export const filterSensitiveLog = (obj: AllocateAddressRequest): any => ({ + export const filterSensitiveLog = (obj: AccessScopePath): any => ({ ...obj, }); } -export interface AllocateAddressResult { +/** + *Describes a packet header statement.
+ */ +export interface PacketHeaderStatementRequest { /** - *The Elastic IP address.
+ *The source addresses.
*/ - PublicIp?: string; + SourceAddresses?: string[]; /** - *[EC2-VPC] The ID that Amazon Web Services assigns to represent the allocation of the Elastic IP address for use with instances in a VPC.
+ *The destination addresses.
*/ - AllocationId?: string; + DestinationAddresses?: string[]; /** - *The ID of an address pool.
+ *The source ports.
*/ - PublicIpv4Pool?: string; + SourcePorts?: string[]; /** - *The set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises - * IP addresses.
+ *The destination ports.
*/ - NetworkBorderGroup?: string; + DestinationPorts?: string[]; /** - *Indicates whether the Elastic IP address is for use with instances in a VPC (vpc
) or
- * instances in EC2-Classic (standard
).
The source prefix lists.
*/ - Domain?: DomainType | string; + SourcePrefixLists?: string[]; /** - *The customer-owned IP address.
+ *The destination prefix lists.
*/ - CustomerOwnedIp?: string; + DestinationPrefixLists?: string[]; /** - *The ID of the customer-owned address pool.
+ *The protocols.
*/ - CustomerOwnedIpv4Pool?: string; + Protocols?: (Protocol | string)[]; +} +export namespace PacketHeaderStatementRequest { /** - *The carrier IP address. This option is only available for network interfaces which reside - * in a subnet in a Wavelength Zone (for example an EC2 instance).
+ * @internal */ - CarrierIp?: string; + export const filterSensitiveLog = (obj: PacketHeaderStatementRequest): any => ({ + ...obj, + }); } -export namespace AllocateAddressResult { +/** + *Describes a resource statement.
+ */ +export interface ResourceStatementRequest { + /** + *The resources.
+ */ + Resources?: string[]; + + /** + *The resource types.
+ */ + ResourceTypes?: string[]; +} + +export namespace ResourceStatementRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AllocateAddressResult): any => ({ + export const filterSensitiveLog = (obj: ResourceStatementRequest): any => ({ ...obj, }); } -export type AutoPlacement = "off" | "on"; - -export type HostRecovery = "off" | "on"; - -export interface AllocateHostsRequest { +/** + *Describes a path statement.
+ */ +export interface PathStatementRequest { /** - *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
- *
The packet header statement.
*/ - AutoPlacement?: AutoPlacement | string; + PacketHeaderStatement?: PacketHeaderStatementRequest; /** - *The Availability Zone in which to allocate the Dedicated Host.
+ *The resource statement.
*/ - AvailabilityZone: string | undefined; + ResourceStatement?: ResourceStatementRequest; +} +export namespace PathStatementRequest { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
+ * @internal */ - ClientToken?: string; + export const filterSensitiveLog = (obj: PathStatementRequest): any => ({ + ...obj, + }); +} +/** + *Describes a through resource statement.
+ */ +export interface ThroughResourcesStatementRequest { /** - *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.
+ *The resource statement.
*/ - InstanceType?: string; + ResourceStatement?: ResourceStatementRequest; +} +export namespace ThroughResourcesStatementRequest { /** - *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.
+ * @internal */ - InstanceFamily?: string; + export const filterSensitiveLog = (obj: ThroughResourcesStatementRequest): any => ({ + ...obj, + }); +} +/** + *Describes a path.
+ */ +export interface AccessScopePathRequest { /** - *The number of Dedicated Hosts to allocate to your account with these parameters.
+ *The source.
*/ - Quantity: number | undefined; + Source?: PathStatementRequest; /** - *The tags to apply to the Dedicated Host during creation.
+ *The destination.
*/ - TagSpecifications?: TagSpecification[]; + Destination?: PathStatementRequest; /** - *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
- *
The through resources.
*/ - HostRecovery?: HostRecovery | string; + ThroughResources?: ThroughResourcesStatementRequest[]; } -export namespace AllocateHostsRequest { +export namespace AccessScopePathRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AllocateHostsRequest): any => ({ + export const filterSensitiveLog = (obj: AccessScopePathRequest): any => ({ ...obj, }); } /** - *Contains the output of AllocateHosts.
+ *Describes a value of an account attribute.
*/ -export interface AllocateHostsResult { +export interface AccountAttributeValue { /** - *The ID of the allocated Dedicated Host. This is used to launch an instance onto a - * specific host.
+ *The value of the attribute.
*/ - HostIds?: string[]; + AttributeValue?: string; } -export namespace AllocateHostsResult { +export namespace AccountAttributeValue { /** * @internal */ - export const filterSensitiveLog = (obj: AllocateHostsResult): any => ({ + export const filterSensitiveLog = (obj: AccountAttributeValue): any => ({ ...obj, }); } -export type AllocationState = - | "available" - | "pending" - | "permanent-failure" - | "released" - | "released-permanent-failure" - | "under-assessment"; +/** + *Describes an account attribute.
+ */ +export interface AccountAttribute { + /** + *The name of the account attribute.
+ */ + AttributeName?: string; -export enum AllocationStrategy { - CAPACITY_OPTIMIZED = "capacityOptimized", - CAPACITY_OPTIMIZED_PRIORITIZED = "capacityOptimizedPrioritized", - DIVERSIFIED = "diversified", - LOWEST_PRICE = "lowestPrice", -} - -export enum PrincipalType { - Account = "Account", - All = "All", - OrganizationUnit = "OrganizationUnit", - Role = "Role", - Service = "Service", - User = "User", -} - -/** - *Describes a principal.
- */ -export interface AllowedPrincipal { /** - *The type of principal.
- */ - PrincipalType?: PrincipalType | string; - - /** - *The Amazon Resource Name (ARN) of the principal.
+ *The values for the account attribute.
*/ - Principal?: string; + AttributeValues?: AccountAttributeValue[]; } -export namespace AllowedPrincipal { +export namespace AccountAttribute { /** * @internal */ - export const filterSensitiveLog = (obj: AllowedPrincipal): any => ({ + export const filterSensitiveLog = (obj: AccountAttribute): any => ({ ...obj, }); } -export type AllowsMultipleInstanceTypes = "off" | "on"; - -/** - *Describes an potential intermediate component of a feasible path.
- */ -export interface AlternatePathHint { - /** - *The ID of the component.
- */ - ComponentId?: string; - - /** - *The Amazon Resource Name (ARN) of the component.
- */ - ComponentArn?: string; -} +export type AccountAttributeName = "default-vpc" | "supported-platforms"; -export namespace AlternatePathHint { - /** - * @internal - */ - export const filterSensitiveLog = (obj: AlternatePathHint): any => ({ - ...obj, - }); +export enum InstanceHealthStatus { + HEALTHY_STATUS = "healthy", + UNHEALTHY_STATUS = "unhealthy", } -export interface ApplySecurityGroupsToClientVpnTargetNetworkRequest { +/** + *Describes a running instance in a Spot Fleet.
+ */ +export interface ActiveInstance { /** - *The ID of the Client VPN endpoint.
+ *The ID of the instance.
*/ - ClientVpnEndpointId: string | undefined; + InstanceId?: string; /** - *The ID of the VPC in which the associated target network is located.
+ *The instance type.
*/ - VpcId: string | undefined; + InstanceType?: string; /** - *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.
+ *The ID of the Spot Instance request.
*/ - SecurityGroupIds: string[] | undefined; + SpotInstanceRequestId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
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
.
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. + *
+ */ +export interface AddIpamOperatingRegion { /** - *The IDs of the applied security groups.
+ *The name of the operating Region.
*/ - SecurityGroupIds?: string[]; + RegionName?: string; } -export namespace ApplySecurityGroupsToClientVpnTargetNetworkResult { +export namespace AddIpamOperatingRegion { /** * @internal */ - export const filterSensitiveLog = (obj: ApplySecurityGroupsToClientVpnTargetNetworkResult): any => ({ + export const filterSensitiveLog = (obj: AddIpamOperatingRegion): any => ({ ...obj, }); } -export interface AssignIpv6AddressesRequest { +/** + *An entry for a prefix list.
+ */ +export interface AddPrefixListEntry { /** - *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.
+ *The CIDR block.
*/ - Ipv6AddressCount?: number; + Cidr: string | undefined; /** - *One or more specific IPv6 addresses to be assigned to the network interface. You can't use this option if you're specifying a number of IPv6 addresses.
+ *A description for the entry.
+ *Constraints: Up to 255 characters in length.
*/ - Ipv6Addresses?: string[]; + Description?: string; +} +export namespace AddPrefixListEntry { /** - *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.
Describes an Elastic IP address, or a carrier IP address.
+ */ +export interface Address { /** - *One or more IPv6 prefixes assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount
option.
The ID of the instance that the address is associated with (if any).
*/ - Ipv6Prefixes?: string[]; + InstanceId?: string; /** - *The ID of the network interface.
+ *The Elastic IP address.
*/ - NetworkInterfaceId: string | undefined; -} + PublicIp?: string; -export namespace AssignIpv6AddressesRequest { /** - * @internal + *The ID representing the allocation of the address for use with EC2-VPC.
*/ - export const filterSensitiveLog = (obj: AssignIpv6AddressesRequest): any => ({ - ...obj, - }); -} + AllocationId?: string; -export interface AssignIpv6AddressesResult { /** - *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.
+ *The ID representing the association of the address with an instance in a VPC.
*/ - AssignedIpv6Addresses?: string[]; + AssociationId?: string; /** - *The IPv6 prefixes that are assigned to the network interface.
+ *Indicates whether this Elastic IP address is for use with instances
+ * in EC2-Classic (standard
) or instances in a VPC (vpc
).
The ID of the network interface.
*/ NetworkInterfaceId?: string; -} -export namespace AssignIpv6AddressesResult { /** - * @internal + *The ID of the Amazon Web Services account that owns the network interface.
*/ - export const filterSensitiveLog = (obj: AssignIpv6AddressesResult): any => ({ - ...obj, - }); -} + NetworkInterfaceOwnerId?: string; -/** - *Contains the parameters for AssignPrivateIpAddresses.
- */ -export interface AssignPrivateIpAddressesRequest { /** - *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.
+ *The private IP address associated with the Elastic IP address.
*/ - AllowReassignment?: boolean; + PrivateIpAddress?: string; /** - *The ID of the network interface.
+ *Any tags assigned to the Elastic IP address.
*/ - NetworkInterfaceId: string | undefined; + Tags?: Tag[]; /** - *One or more 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.
+ *The ID of an address pool.
*/ - PrivateIpAddresses?: string[]; + PublicIpv4Pool?: string; /** - *The number of secondary IP addresses to assign to the network interface. You can't specify this parameter when also specifying private IP addresses.
+ *The name of the unique set of Availability Zones, Local Zones, or Wavelength Zones from + * which Amazon Web Services advertises IP addresses.
*/ - SecondaryPrivateIpAddressCount?: number; + NetworkBorderGroup?: string; /** - *One or more IPv4 prefixes assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount
option.
The customer-owned IP address.
*/ - Ipv4Prefixes?: string[]; + CustomerOwnedIp?: string; /** - *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.
The ID of the customer-owned address pool.
*/ - Ipv4PrefixCount?: number; + CustomerOwnedIpv4Pool?: string; + + /** + *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).
+ */ + CarrierIp?: string; } -export namespace AssignPrivateIpAddressesRequest { +export namespace Address { /** * @internal */ - export const filterSensitiveLog = (obj: AssignPrivateIpAddressesRequest): any => ({ + export const filterSensitiveLog = (obj: Address): any => ({ ...obj, }); } /** - *Describes an IPv4 prefix.
+ *The status of an updated pointer (PTR) record for an Elastic IP address.
*/ -export interface Ipv4PrefixSpecification { +export interface PtrUpdateStatus { /** - *The IPv4 prefix. For information, see - * Assigning prefixes to Amazon EC2 network interfaces in the - * Amazon Elastic Compute Cloud User Guide.
+ *The value for the PTR record update.
*/ - Ipv4Prefix?: string; -} + Value?: string; -export namespace Ipv4PrefixSpecification { /** - * @internal + *The status of the PTR record update.
*/ - export const filterSensitiveLog = (obj: Ipv4PrefixSpecification): any => ({ - ...obj, - }); -} + Status?: string; -/** - *Describes the private IP addresses assigned to a network interface.
- */ -export interface AssignedPrivateIpAddress { /** - *The private IP address assigned to the network interface.
+ *The reason for the PTR record update.
*/ - PrivateIpAddress?: string; + Reason?: string; } -export namespace AssignedPrivateIpAddress { +export namespace PtrUpdateStatus { /** * @internal */ - export const filterSensitiveLog = (obj: AssignedPrivateIpAddress): any => ({ + export const filterSensitiveLog = (obj: PtrUpdateStatus): any => ({ ...obj, }); } -export interface AssignPrivateIpAddressesResult { +/** + *The attributes associated with an Elastic IP address.
+ */ +export interface AddressAttribute { /** - *The ID of the network interface.
+ *The public IP address.
*/ - NetworkInterfaceId?: string; + PublicIp?: string; /** - *The private IP addresses assigned to the network interface.
+ *[EC2-VPC] The allocation ID.
*/ - AssignedPrivateIpAddresses?: AssignedPrivateIpAddress[]; + AllocationId?: string; /** - *The IPv4 prefixes that are assigned to the network interface.
+ *The pointer (PTR) record for the IP address.
*/ - AssignedIpv4Prefixes?: Ipv4PrefixSpecification[]; + PtrRecord?: string; + + /** + *The updated PTR record for the IP address.
+ */ + PtrRecordUpdate?: PtrUpdateStatus; } -export namespace AssignPrivateIpAddressesResult { +export namespace AddressAttribute { /** * @internal */ - export const filterSensitiveLog = (obj: AssignPrivateIpAddressesResult): any => ({ + export const filterSensitiveLog = (obj: AddressAttribute): any => ({ ...obj, }); } -export interface AssociateAddressRequest { - /** - *[EC2-VPC] The allocation ID. This is required for EC2-VPC.
- */ - AllocationId?: string; - - /** - *The ID of the instance. The instance must have exactly one attached network interface. - * For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both. - * For EC2-Classic, you must specify an instance ID and the instance must be in the running - * state.
- */ - InstanceId?: string; +export type AddressAttributeName = "domain-name"; - /** - *[EC2-Classic] The Elastic IP address to associate with the instance. This is required for - * EC2-Classic.
- */ - PublicIp?: string; +export enum AddressFamily { + ipv4 = "ipv4", + ipv6 = "ipv6", +} +export interface AdvertiseByoipCidrRequest { /** - *[EC2-VPC] For a VPC in an EC2-Classic account, specify true to allow an Elastic IP address that is already associated with an instance or network interface to be reassociated with the specified instance or network interface. Otherwise, the operation fails. In a VPC in an EC2-VPC-only account, reassociation is automatic, therefore you can specify false to ensure the operation fails if the Elastic IP address is already associated with another resource.
+ *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.
*/ - AllowReassociation?: boolean; + Cidr: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -1978,138 +1963,209 @@ export interface AssociateAddressRequest {
* Otherwise, it is UnauthorizedOperation
.
[EC2-VPC] The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID.
- *For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both.
- */ - NetworkInterfaceId?: string; - - /** - *[EC2-VPC] 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.
- */ - PrivateIpAddress?: string; } -export namespace AssociateAddressRequest { +export namespace AdvertiseByoipCidrRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateAddressRequest): any => ({ + export const filterSensitiveLog = (obj: AdvertiseByoipCidrRequest): any => ({ ...obj, }); } -export interface AssociateAddressResult { +export type ByoipCidrState = + | "advertised" + | "deprovisioned" + | "failed-deprovision" + | "failed-provision" + | "pending-deprovision" + | "pending-provision" + | "provisioned" + | "provisioned-not-publicly-advertisable"; + +/** + *Information about an address range that is provisioned for use with your Amazon Web Services resources + * through bring your own IP addresses (BYOIP).
+ */ +export interface ByoipCidr { /** - *[EC2-VPC] The ID that represents the association of the Elastic IP address with an instance.
+ *The address range, in CIDR notation.
*/ - AssociationId?: string; -} + Cidr?: string; -export namespace AssociateAddressResult { /** - * @internal + *The description of the address range.
*/ - export const filterSensitiveLog = (obj: AssociateAddressResult): any => ({ - ...obj, - }); -} + Description?: string; -export interface AssociateClientVpnTargetNetworkRequest { /** - *The ID of the Client VPN endpoint.
+ *Upon success, contains the ID of the address pool. Otherwise, contains an error message.
*/ - ClientVpnEndpointId: string | undefined; + StatusMessage?: string; /** - *The ID of the subnet to associate with the Client VPN endpoint.
+ *The state of the address pool.
*/ - SubnetId: string | undefined; + State?: ByoipCidrState | string; +} +export namespace ByoipCidr { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ * @internal */ - ClientToken?: string; + export const filterSensitiveLog = (obj: ByoipCidr): any => ({ + ...obj, + }); +} +export interface AdvertiseByoipCidrResult { /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Information about the address range.
*/ - DryRun?: boolean; + ByoipCidr?: ByoipCidr; } -export namespace AssociateClientVpnTargetNetworkRequest { +export namespace AdvertiseByoipCidrResult { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateClientVpnTargetNetworkRequest): any => ({ + export const filterSensitiveLog = (obj: AdvertiseByoipCidrResult): any => ({ ...obj, }); } -export type AssociationStatusCode = - | "associated" - | "associating" - | "association-failed" - | "disassociated" - | "disassociating"; +export type Affinity = "default" | "host"; + +export type ResourceType = + | "capacity-reservation" + | "carrier-gateway" + | "client-vpn-endpoint" + | "customer-gateway" + | "dedicated-host" + | "dhcp-options" + | "egress-only-internet-gateway" + | "elastic-gpu" + | "elastic-ip" + | "export-image-task" + | "export-instance-task" + | "fleet" + | "fpga-image" + | "host-reservation" + | "image" + | "import-image-task" + | "import-snapshot-task" + | "instance" + | "instance-event-window" + | "internet-gateway" + | "ipam" + | "ipam-pool" + | "ipam-scope" + | "ipv4pool-ec2" + | "ipv6pool-ec2" + | "key-pair" + | "launch-template" + | "local-gateway" + | "local-gateway-route-table" + | "local-gateway-route-table-virtual-interface-group-association" + | "local-gateway-route-table-vpc-association" + | "local-gateway-virtual-interface" + | "local-gateway-virtual-interface-group" + | "natgateway" + | "network-acl" + | "network-insights-access-scope" + | "network-insights-access-scope-analysis" + | "network-insights-analysis" + | "network-insights-path" + | "network-interface" + | "placement-group" + | "prefix-list" + | "replace-root-volume-task" + | "reserved-instances" + | "route-table" + | "security-group" + | "security-group-rule" + | "snapshot" + | "spot-fleet-request" + | "spot-instances-request" + | "subnet" + | "traffic-mirror-filter" + | "traffic-mirror-session" + | "traffic-mirror-target" + | "transit-gateway" + | "transit-gateway-attachment" + | "transit-gateway-connect-peer" + | "transit-gateway-multicast-domain" + | "transit-gateway-route-table" + | "volume" + | "vpc" + | "vpc-endpoint" + | "vpc-endpoint-service" + | "vpc-flow-log" + | "vpc-peering-connection" + | "vpn-connection" + | "vpn-gateway"; /** - *Describes the state of a target network association.
+ *The tags to apply to a resource when the resource is being created.
*/ -export interface AssociationStatus { +export interface TagSpecification { /** - *The state of the target network association.
+ *The type of resource to tag on creation.
*/ - Code?: AssociationStatusCode | string; + ResourceType?: ResourceType | string; /** - *A message about the status of the target network association, if applicable.
+ *The tags to apply to the resource.
*/ - Message?: string; + Tags?: Tag[]; } -export namespace AssociationStatus { +export namespace TagSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: AssociationStatus): any => ({ + export const filterSensitiveLog = (obj: TagSpecification): any => ({ ...obj, }); } -export interface AssociateClientVpnTargetNetworkResult { +export interface AllocateAddressRequest { /** - *The unique ID of the target network association.
+ *Indicates whether the Elastic IP address is for use with instances in a VPC or instances in EC2-Classic.
+ *Default: If the Region supports EC2-Classic, the default is standard
. Otherwise, the default
+ * is vpc
.
The current state of the target network association.
+ *[EC2-VPC] The Elastic IP address to recover or an IPv4 address from an address pool.
*/ - Status?: AssociationStatus; -} + Address?: string; -export namespace AssociateClientVpnTargetNetworkResult { /** - * @internal + *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.
The ID of the DHCP options set, or default
to associate
- * no DHCP options with the VPC.
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.
The ID of the VPC.
+ *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.
*/ - VpcId: string | undefined; + CustomerOwnedIpv4Pool?: string; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -2117,615 +2173,647 @@ export interface AssociateDhcpOptionsRequest {
* Otherwise, it is UnauthorizedOperation
.
The tags to assign to the Elastic IP address.
+ */ + TagSpecifications?: TagSpecification[]; } -export namespace AssociateDhcpOptionsRequest { +export namespace AllocateAddressRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateDhcpOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: AllocateAddressRequest): any => ({ ...obj, }); } -export interface AssociateEnclaveCertificateIamRoleRequest { +export interface AllocateAddressResult { /** - *The ARN of the ACM certificate with which to associate the IAM role.
+ *The Elastic IP address.
*/ - CertificateArn?: string; + PublicIp?: string; /** - *The ARN of the IAM role to associate with the ACM certificate. You can associate up to 16 IAM roles with an ACM - * certificate.
+ *[EC2-VPC] The ID that Amazon Web Services assigns to represent the allocation of the Elastic IP address for use with instances in a VPC.
*/ - RoleArn?: string; + AllocationId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The ID of an address pool.
*/ - DryRun?: boolean; -} + PublicIpv4Pool?: string; -export namespace AssociateEnclaveCertificateIamRoleRequest { /** - * @internal + *The set of Availability Zones, Local Zones, or Wavelength Zones from which Amazon Web Services advertises + * IP addresses.
*/ - export const filterSensitiveLog = (obj: AssociateEnclaveCertificateIamRoleRequest): any => ({ - ...obj, - }); -} + NetworkBorderGroup?: string; -export interface AssociateEnclaveCertificateIamRoleResult { /** - *The name of the Amazon S3 bucket to which the certificate was uploaded.
+ *Indicates whether the Elastic IP address is for use with instances in a VPC (vpc
) or
+ * instances in EC2-Classic (standard
).
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
.
The customer-owned IP address.
*/ - CertificateS3ObjectKey?: string; + CustomerOwnedIp?: string; /** - *The ID of the KMS key used to encrypt the private key of the certificate.
+ *The ID of the customer-owned address pool.
*/ - EncryptionKmsKeyId?: string; + CustomerOwnedIpv4Pool?: string; + + /** + *The carrier IP address. This option is only available for network interfaces which reside + * in a subnet in a Wavelength Zone (for example an EC2 instance).
+ */ + CarrierIp?: string; } -export namespace AssociateEnclaveCertificateIamRoleResult { +export namespace AllocateAddressResult { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateEnclaveCertificateIamRoleResult): any => ({ + export const filterSensitiveLog = (obj: AllocateAddressResult): any => ({ ...obj, }); } -/** - *Describes an IAM instance profile.
- */ -export interface IamInstanceProfileSpecification { +export type AutoPlacement = "off" | "on"; + +export type HostRecovery = "off" | "on"; + +export interface AllocateHostsRequest { /** - *The Amazon Resource Name (ARN) of the instance profile.
+ *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
+ *
The name of the instance profile.
+ *The Availability Zone in which to allocate the Dedicated Host.
*/ - Name?: string; -} + AvailabilityZone: string | undefined; -export namespace IamInstanceProfileSpecification { /** - * @internal + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
*/ - export const filterSensitiveLog = (obj: IamInstanceProfileSpecification): any => ({ - ...obj, - }); -} + ClientToken?: string; -export interface AssociateIamInstanceProfileRequest { /** - *The IAM instance profile.
+ *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.
*/ - IamInstanceProfile: IamInstanceProfileSpecification | undefined; + InstanceType?: string; /** - *The ID of the instance.
+ *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.
*/ - InstanceId: string | undefined; + InstanceFamily?: string; + + /** + *The number of Dedicated Hosts to allocate to your account with these parameters.
+ */ + Quantity: number | undefined; + + /** + *The tags to apply to the Dedicated Host during creation.
+ */ + TagSpecifications?: TagSpecification[]; + + /** + *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
+ *
Describes an IAM instance profile.
+ *Contains the output of AllocateHosts.
*/ -export interface IamInstanceProfile { - /** - *The Amazon Resource Name (ARN) of the instance profile.
- */ - Arn?: string; - +export interface AllocateHostsResult { /** - *The ID of the instance profile.
+ *The ID of the allocated Dedicated Host. This is used to launch an instance onto a + * specific host.
*/ - Id?: string; + HostIds?: string[]; } -export namespace IamInstanceProfile { +export namespace AllocateHostsResult { /** * @internal */ - export const filterSensitiveLog = (obj: IamInstanceProfile): any => ({ + export const filterSensitiveLog = (obj: AllocateHostsResult): any => ({ ...obj, }); } -export enum IamInstanceProfileAssociationState { - ASSOCIATED = "associated", - ASSOCIATING = "associating", - DISASSOCIATED = "disassociated", - DISASSOCIATING = "disassociating", -} +export interface AllocateIpamPoolCidrRequest { + /** + *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
.
Describes an association between an IAM instance profile and an instance.
- */ -export interface IamInstanceProfileAssociation { /** - *The ID of the association.
+ *The ID of the IPAM pool from which you would like to allocate a CIDR.
*/ - AssociationId?: string; + IpamPoolId: string | undefined; /** - *The ID of the instance.
+ *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.
*/ - InstanceId?: string; + Cidr?: string; /** - *The IAM instance profile.
+ *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.
*/ - IamInstanceProfile?: IamInstanceProfile; + NetmaskLength?: number; /** - *The state of the association.
+ *A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
*/ - State?: IamInstanceProfileAssociationState | string; + ClientToken?: string; /** - *The time the IAM instance profile was associated with the instance.
+ *A description for the allocation.
*/ - Timestamp?: Date; -} + Description?: string; -export namespace IamInstanceProfileAssociation { /** - * @internal + *A preview of the next available CIDR in a pool.
*/ - export const filterSensitiveLog = (obj: IamInstanceProfileAssociation): any => ({ - ...obj, - }); -} + PreviewNextCidr?: boolean; -export interface AssociateIamInstanceProfileResult { /** - *Information about the IAM instance profile association.
+ *Exclude a particular CIDR range from being returned by the pool.
*/ - IamInstanceProfileAssociation?: IamInstanceProfileAssociation; + DisallowedCidrs?: string[]; } -export namespace AssociateIamInstanceProfileResult { +export namespace AllocateIpamPoolCidrRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateIamInstanceProfileResult): any => ({ + export const filterSensitiveLog = (obj: AllocateIpamPoolCidrRequest): any => ({ ...obj, }); } +export enum IpamPoolAllocationResourceType { + custom = "custom", + ec2_public_ipv4_pool = "ec2-public-ipv4-pool", + ipam_pool = "ipam-pool", + vpc = "vpc", +} + /** - *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.
+ *In IPAM, an allocation is a CIDR assignment from an IPAM pool to another resource or IPAM pool.
*/ -export interface InstanceEventWindowAssociationRequest { +export interface IpamPoolAllocation { /** - *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.
+ *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
.
The instance tags to associate with the event window. Any instances associated with the - * tags will be associated with the event window.
+ *The ID of an allocation.
*/ - InstanceTags?: Tag[]; + IpamPoolAllocationId?: string; /** - *The IDs of the Dedicated Hosts to associate with the event window.
+ *A description of the pool allocation.
*/ - DedicatedHostIds?: string[]; -} + Description?: string; -export namespace InstanceEventWindowAssociationRequest { /** - * @internal + *The ID of the resource.
*/ - export const filterSensitiveLog = (obj: InstanceEventWindowAssociationRequest): any => ({ - ...obj, - }); -} + ResourceId?: string; -export interface AssociateInstanceEventWindowRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The type of the resource.
*/ - DryRun?: boolean; + ResourceType?: IpamPoolAllocationResourceType | string; /** - *The ID of the event window.
+ *The Amazon Web Services Region of the resource.
*/ - InstanceEventWindowId: string | undefined; + ResourceRegion?: string; /** - *One or more targets associated with the specified event window.
+ *The owner of the resource.
*/ - AssociationTarget: InstanceEventWindowAssociationRequest | undefined; + ResourceOwner?: string; } -export namespace AssociateInstanceEventWindowRequest { +export namespace IpamPoolAllocation { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateInstanceEventWindowRequest): any => ({ + export const filterSensitiveLog = (obj: IpamPoolAllocation): any => ({ ...obj, }); } -/** - *One or more targets associated with the event window.
- */ -export interface InstanceEventWindowAssociationTarget { - /** - *The IDs of the instances associated with the event window.
- */ - InstanceIds?: string[]; - - /** - *The instance tags associated with the event window. Any instances associated with the tags - * will be associated with the event window.
- */ - Tags?: Tag[]; - +export interface AllocateIpamPoolCidrResult { /** - *The IDs of the Dedicated Hosts associated with the event window.
+ *Information about the allocation created.
*/ - DedicatedHostIds?: string[]; + IpamPoolAllocation?: IpamPoolAllocation; } -export namespace InstanceEventWindowAssociationTarget { +export namespace AllocateIpamPoolCidrResult { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceEventWindowAssociationTarget): any => ({ + export const filterSensitiveLog = (obj: AllocateIpamPoolCidrResult): any => ({ ...obj, }); } -export enum InstanceEventWindowState { - active = "active", - creating = "creating", - deleted = "deleted", - deleting = "deleting", -} - -export enum WeekDay { - friday = "friday", - monday = "monday", - saturday = "saturday", - sunday = "sunday", - thursday = "thursday", - tuesday = "tuesday", - wednesday = "wednesday", +export type AllocationState = + | "available" + | "pending" + | "permanent-failure" + | "released" + | "released-permanent-failure" + | "under-assessment"; + +export enum AllocationStrategy { + CAPACITY_OPTIMIZED = "capacityOptimized", + CAPACITY_OPTIMIZED_PRIORITIZED = "capacityOptimizedPrioritized", + DIVERSIFIED = "diversified", + LOWEST_PRICE = "lowestPrice", +} + +export enum PrincipalType { + Account = "Account", + All = "All", + OrganizationUnit = "OrganizationUnit", + Role = "Role", + Service = "Service", + User = "User", } /** - *The start day and time and the end day and time of the time range, in UTC.
+ *Describes a principal.
*/ -export interface InstanceEventWindowTimeRange { - /** - *The day on which the time range begins.
- */ - StartWeekDay?: WeekDay | string; - - /** - *The hour when the time range begins.
- */ - StartHour?: number; - +export interface AllowedPrincipal { /** - *The day on which the time range ends.
+ *The type of principal.
*/ - EndWeekDay?: WeekDay | string; + PrincipalType?: PrincipalType | string; /** - *The hour when the time range ends.
+ *The Amazon Resource Name (ARN) of the principal.
*/ - EndHour?: number; + Principal?: string; } -export namespace InstanceEventWindowTimeRange { +export namespace AllowedPrincipal { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceEventWindowTimeRange): any => ({ + export const filterSensitiveLog = (obj: AllowedPrincipal): any => ({ ...obj, }); } +export type AllowsMultipleInstanceTypes = "off" | "on"; + /** - *The event window.
+ *Describes an potential intermediate component of a feasible path.
*/ -export interface InstanceEventWindow { +export interface AlternatePathHint { /** - *The ID of the event window.
+ *The ID of the component.
*/ - InstanceEventWindowId?: string; + ComponentId?: string; /** - *One or more time ranges defined for the event window.
+ *The Amazon Resource Name (ARN) of the component.
*/ - TimeRanges?: InstanceEventWindowTimeRange[]; + ComponentArn?: string; +} +export namespace AlternatePathHint { /** - *The name of the event window.
+ * @internal */ - Name?: string; + export const filterSensitiveLog = (obj: AlternatePathHint): any => ({ + ...obj, + }); +} +export interface ApplySecurityGroupsToClientVpnTargetNetworkRequest { /** - *The cron expression defined for the event window.
+ *The ID of the Client VPN endpoint.
*/ - CronExpression?: string; + ClientVpnEndpointId: string | undefined; /** - *One or more targets associated with the event window.
+ *The ID of the VPC in which the associated target network is located.
*/ - AssociationTarget?: InstanceEventWindowAssociationTarget; + VpcId: string | undefined; /** - *The current state of the event window.
+ *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.
*/ - State?: InstanceEventWindowState | string; + SecurityGroupIds: string[] | undefined; /** - *The instance tags associated with the event window.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Information about the event window.
+ *The IDs of the applied security groups.
*/ - InstanceEventWindow?: InstanceEventWindow; + SecurityGroupIds?: string[]; } -export namespace AssociateInstanceEventWindowResult { +export namespace ApplySecurityGroupsToClientVpnTargetNetworkResult { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateInstanceEventWindowResult): any => ({ + export const filterSensitiveLog = (obj: ApplySecurityGroupsToClientVpnTargetNetworkResult): any => ({ ...obj, }); } -export interface AssociateRouteTableRequest { +export interface AssignIpv6AddressesRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
*/ - DryRun?: boolean; + Ipv6AddressCount?: number; /** - *The ID of the route table.
+ *One or more specific IPv6 addresses to be assigned to the network interface. You can't use this option if you're specifying a number of IPv6 addresses.
*/ - RouteTableId: string | undefined; + Ipv6Addresses?: string[]; /** - *The ID of the subnet.
+ *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.
The ID of the internet gateway or virtual private gateway.
+ *One or more IPv6 prefixes assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount
option.
The ID of the network interface.
+ */ + NetworkInterfaceId: string | undefined; } -export namespace AssociateRouteTableRequest { +export namespace AssignIpv6AddressesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateRouteTableRequest): any => ({ + export const filterSensitiveLog = (obj: AssignIpv6AddressesRequest): any => ({ ...obj, }); } -export type RouteTableAssociationStateCode = - | "associated" - | "associating" - | "disassociated" - | "disassociating" - | "failed"; +export interface AssignIpv6AddressesResult { + /** + *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.
+ */ + AssignedIpv6Addresses?: string[]; -/** - *Describes the state of an association between a route table and a subnet or gateway.
- */ -export interface RouteTableAssociationState { /** - *The state of the association.
+ *The IPv6 prefixes that are assigned to the network interface.
*/ - State?: RouteTableAssociationStateCode | string; + AssignedIpv6Prefixes?: string[]; /** - *The status message, if applicable.
+ *The ID of the network interface.
*/ - StatusMessage?: string; + NetworkInterfaceId?: string; } -export namespace RouteTableAssociationState { +export namespace AssignIpv6AddressesResult { /** * @internal */ - export const filterSensitiveLog = (obj: RouteTableAssociationState): any => ({ + export const filterSensitiveLog = (obj: AssignIpv6AddressesResult): any => ({ ...obj, }); } -export interface AssociateRouteTableResult { +/** + *Contains the parameters for AssignPrivateIpAddresses.
+ */ +export interface AssignPrivateIpAddressesRequest { /** - *The route table association ID. This ID is required for disassociating the route - * table.
+ *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.
*/ - AssociationId?: string; + AllowReassignment?: boolean; /** - *The state of the association.
+ *The ID of the network interface.
*/ - AssociationState?: RouteTableAssociationState; -} + NetworkInterfaceId: string | undefined; -export namespace AssociateRouteTableResult { /** - * @internal + *One or more 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.
*/ - export const filterSensitiveLog = (obj: AssociateRouteTableResult): any => ({ - ...obj, - }); -} + PrivateIpAddresses?: string[]; -export interface AssociateSubnetCidrBlockRequest { /** - *The IPv6 CIDR block for your subnet. The subnet must have a /64 prefix - * length.
+ *The number of secondary IP addresses to assign to the network interface. You can't specify this parameter when also specifying private IP addresses.
*/ - Ipv6CidrBlock: string | undefined; + SecondaryPrivateIpAddressCount?: number; /** - *The ID of your subnet.
+ *One or more IPv4 prefixes assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount
option.
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.
Describes the state of a CIDR block.
+ *Describes an IPv4 prefix.
*/ -export interface SubnetCidrBlockState { - /** - *The state of a CIDR block.
- */ - State?: SubnetCidrBlockStateCode | string; - +export interface Ipv4PrefixSpecification { /** - *A message about the status of the CIDR block, if applicable.
+ *The IPv4 prefix. For information, see + * Assigning prefixes to Amazon EC2 network interfaces in the + * Amazon Elastic Compute Cloud User Guide.
*/ - StatusMessage?: string; + Ipv4Prefix?: string; } -export namespace SubnetCidrBlockState { +export namespace Ipv4PrefixSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: SubnetCidrBlockState): any => ({ + export const filterSensitiveLog = (obj: Ipv4PrefixSpecification): any => ({ ...obj, }); } /** - *Describes an association between a subnet and an IPv6 CIDR block.
+ *Describes the private IP addresses assigned to a network interface.
*/ -export interface SubnetIpv6CidrBlockAssociation { +export interface AssignedPrivateIpAddress { /** - *The ID of the association.
+ *The private IP address assigned to the network interface.
*/ - AssociationId?: string; + PrivateIpAddress?: string; +} +export namespace AssignedPrivateIpAddress { /** - *The IPv6 CIDR block.
+ * @internal */ - Ipv6CidrBlock?: string; + export const filterSensitiveLog = (obj: AssignedPrivateIpAddress): any => ({ + ...obj, + }); +} +export interface AssignPrivateIpAddressesResult { /** - *The state of the CIDR block.
- */ - Ipv6CidrBlockState?: SubnetCidrBlockState; -} - -export namespace SubnetIpv6CidrBlockAssociation { - /** - * @internal + *The ID of the network interface.
*/ - export const filterSensitiveLog = (obj: SubnetIpv6CidrBlockAssociation): any => ({ - ...obj, - }); -} + NetworkInterfaceId?: string; -export interface AssociateSubnetCidrBlockResult { /** - *Information about the IPv6 association.
+ *The private IP addresses assigned to the network interface.
*/ - Ipv6CidrBlockAssociation?: SubnetIpv6CidrBlockAssociation; + AssignedPrivateIpAddresses?: AssignedPrivateIpAddress[]; /** - *The ID of the subnet.
+ *The IPv4 prefixes that are assigned to the network interface.
*/ - SubnetId?: string; + AssignedIpv4Prefixes?: Ipv4PrefixSpecification[]; } -export namespace AssociateSubnetCidrBlockResult { +export namespace AssignPrivateIpAddressesResult { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateSubnetCidrBlockResult): any => ({ + export const filterSensitiveLog = (obj: AssignPrivateIpAddressesResult): any => ({ ...obj, }); } -export interface AssociateTransitGatewayMulticastDomainRequest { +export interface AssociateAddressRequest { /** - *The ID of the transit gateway multicast domain.
+ *[EC2-VPC] The allocation ID. This is required for EC2-VPC.
*/ - TransitGatewayMulticastDomainId?: string; + AllocationId?: string; /** - *The ID of the transit gateway attachment to associate with the transit gateway multicast domain.
+ *The ID of the instance. The instance must have exactly one attached network interface. + * For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both. + * For EC2-Classic, you must specify an instance ID and the instance must be in the running + * state.
*/ - TransitGatewayAttachmentId?: string; + InstanceId?: string; /** - *The IDs of the subnets to associate with the transit gateway multicast domain.
+ *[EC2-Classic] The Elastic IP address to associate with the instance. This is required for + * EC2-Classic.
*/ - SubnetIds?: string[]; + PublicIp?: string; + + /** + *[EC2-VPC] For a VPC in an EC2-Classic account, specify true to allow an Elastic IP address that is already associated with an instance or network interface to be reassociated with the specified instance or network interface. Otherwise, the operation fails. In a VPC in an EC2-VPC-only account, reassociation is automatic, therefore you can specify false to ensure the operation fails if the Elastic IP address is already associated with another resource.
+ */ + AllowReassociation?: boolean; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -2733,145 +2821,138 @@ export interface AssociateTransitGatewayMulticastDomainRequest {
* Otherwise, it is UnauthorizedOperation
.
[EC2-VPC] The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID.
+ *For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both.
*/ - export const filterSensitiveLog = (obj: AssociateTransitGatewayMulticastDomainRequest): any => ({ - ...obj, - }); -} + NetworkInterfaceId?: string; -export interface AssociateTransitGatewayMulticastDomainResult { /** - *Information about the transit gateway multicast domain associations.
+ *[EC2-VPC] 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.
*/ - Associations?: TransitGatewayMulticastDomainAssociations; + PrivateIpAddress?: string; } -export namespace AssociateTransitGatewayMulticastDomainResult { +export namespace AssociateAddressRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateTransitGatewayMulticastDomainResult): any => ({ + export const filterSensitiveLog = (obj: AssociateAddressRequest): any => ({ ...obj, }); } -export interface AssociateTransitGatewayRouteTableRequest { - /** - *The ID of the transit gateway route table.
- */ - TransitGatewayRouteTableId: string | undefined; - - /** - *The ID of the attachment.
- */ - TransitGatewayAttachmentId: string | undefined; - +export interface AssociateAddressResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
[EC2-VPC] The ID that represents the association of the Elastic IP address with an instance.
*/ - DryRun?: boolean; + AssociationId?: string; } -export namespace AssociateTransitGatewayRouteTableRequest { +export namespace AssociateAddressResult { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateTransitGatewayRouteTableRequest): any => ({ + export const filterSensitiveLog = (obj: AssociateAddressResult): any => ({ ...obj, }); } -export type TransitGatewayAssociationState = "associated" | "associating" | "disassociated" | "disassociating"; - -/** - *Describes an association between a resource attachment and a transit gateway route table.
- */ -export interface TransitGatewayAssociation { - /** - *The ID of the transit gateway route table.
- */ - TransitGatewayRouteTableId?: string; - +export interface AssociateClientVpnTargetNetworkRequest { /** - *The ID of the attachment.
+ *The ID of the Client VPN endpoint.
*/ - TransitGatewayAttachmentId?: string; + ClientVpnEndpointId: string | undefined; /** - *The ID of the resource.
+ *The ID of the subnet to associate with the Client VPN endpoint.
*/ - ResourceId?: string; + SubnetId: string | undefined; /** - *The resource type. Note that the tgw-peering
resource type has been deprecated.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
*/ - ResourceType?: TransitGatewayAttachmentResourceType | string; + ClientToken?: string; /** - *The state of the association.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Describes the state of a target network association.
+ */ +export interface AssociationStatus { /** - *The ID of the association.
+ *The state of the target network association.
*/ - Association?: TransitGatewayAssociation; + Code?: AssociationStatusCode | string; + + /** + *A message about the status of the target network association, if applicable.
+ */ + Message?: string; } -export namespace AssociateTransitGatewayRouteTableResult { +export namespace AssociationStatus { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateTransitGatewayRouteTableResult): any => ({ + export const filterSensitiveLog = (obj: AssociationStatus): any => ({ ...obj, }); } -export interface AssociateTrunkInterfaceRequest { +export interface AssociateClientVpnTargetNetworkResult { /** - *The ID of the branch network interface.
+ *The unique ID of the target network association.
*/ - BranchInterfaceId: string | undefined; + AssociationId?: string; /** - *The ID of the trunk network interface.
+ *The current state of the target network association.
*/ - TrunkInterfaceId: string | undefined; + Status?: AssociationStatus; +} +export namespace AssociateClientVpnTargetNetworkResult { /** - *The ID of the VLAN. This applies to the VLAN protocol.
+ * @internal */ - VlanId?: number; + export const filterSensitiveLog = (obj: AssociateClientVpnTargetNetworkResult): any => ({ + ...obj, + }); +} +export interface AssociateDhcpOptionsRequest { /** - *The application key. This applies to the GRE protocol.
+ *The ID of the DHCP options set, or default
to associate
+ * no DHCP options with the VPC.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. For more information, see How to Ensure - * Idempotency.
+ *The ID of the VPC.
*/ - ClientToken?: string; + VpcId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -2881,4072 +2962,4210 @@ export interface AssociateTrunkInterfaceRequest {
DryRun?: boolean;
}
-export namespace AssociateTrunkInterfaceRequest {
+export namespace AssociateDhcpOptionsRequest {
/**
* @internal
*/
- export const filterSensitiveLog = (obj: AssociateTrunkInterfaceRequest): any => ({
+ export const filterSensitiveLog = (obj: AssociateDhcpOptionsRequest): any => ({
...obj,
});
}
-export enum InterfaceProtocolType {
- GRE = "GRE",
- VLAN = "VLAN",
-}
-
-/**
- * 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.
- */ -export interface TrunkInterfaceAssociation { +export interface AssociateEnclaveCertificateIamRoleRequest { /** - *The ID of the association.
+ *The ARN of the ACM certificate with which to associate the IAM role.
*/ - AssociationId?: string; + CertificateArn?: string; /** - *The ID of the branch network interface.
+ *The ARN of the IAM role to associate with the ACM certificate. You can associate up to 16 IAM roles with an ACM + * certificate.
*/ - BranchInterfaceId?: string; + RoleArn?: string; /** - *The ID of the trunk network interface.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The interface protocol. Valid values are VLAN
and GRE
.
The ID of the VLAN when you use the VLAN protocol.
+ *The name of the Amazon S3 bucket to which the certificate was uploaded.
*/ - VlanId?: number; + CertificateS3BucketName?: string; /** - *The application key when you use the GRE protocol.
+ *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
.
The tags for the trunk interface association.
+ *The ID of the KMS key used to encrypt the private key of the certificate.
*/ - Tags?: Tag[]; + EncryptionKmsKeyId?: string; } -export namespace TrunkInterfaceAssociation { +export namespace AssociateEnclaveCertificateIamRoleResult { /** * @internal */ - export const filterSensitiveLog = (obj: TrunkInterfaceAssociation): any => ({ + export const filterSensitiveLog = (obj: AssociateEnclaveCertificateIamRoleResult): any => ({ ...obj, }); } -export interface AssociateTrunkInterfaceResult { +/** + *Describes an IAM instance profile.
+ */ +export interface IamInstanceProfileSpecification { /** - *Information about the association between the trunk network interface and branch network interface.
+ *The Amazon Resource Name (ARN) of the instance profile.
*/ - InterfaceAssociation?: TrunkInterfaceAssociation; + Arn?: string; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. For more information, see How to Ensure - * Idempotency.
+ *The name of the instance profile.
*/ - ClientToken?: string; + Name?: string; } -export namespace AssociateTrunkInterfaceResult { +export namespace IamInstanceProfileSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateTrunkInterfaceResult): any => ({ + export const filterSensitiveLog = (obj: IamInstanceProfileSpecification): any => ({ ...obj, }); } -export interface AssociateVpcCidrBlockRequest { - /** - *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.
- */ - AmazonProvidedIpv6CidrBlock?: boolean; - - /** - *An IPv4 CIDR block to associate with the VPC.
- */ - CidrBlock?: string; - - /** - *The ID of the VPC.
- */ - VpcId: string | undefined; - - /** - *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.
- */ - Ipv6CidrBlockNetworkBorderGroup?: string; - +export interface AssociateIamInstanceProfileRequest { /** - *The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.
+ *The IAM instance profile.
*/ - Ipv6Pool?: string; + IamInstanceProfile: IamInstanceProfileSpecification | undefined; /** - *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.
+ *The ID of the instance.
*/ - Ipv6CidrBlock?: string; + InstanceId: string | undefined; } -export namespace AssociateVpcCidrBlockRequest { +export namespace AssociateIamInstanceProfileRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateVpcCidrBlockRequest): any => ({ + export const filterSensitiveLog = (obj: AssociateIamInstanceProfileRequest): any => ({ ...obj, }); } -export type VpcCidrBlockStateCode = - | "associated" - | "associating" - | "disassociated" - | "disassociating" - | "failed" - | "failing"; - /** - *Describes the state of a CIDR block.
+ *Describes an IAM instance profile.
*/ -export interface VpcCidrBlockState { +export interface IamInstanceProfile { /** - *The state of the CIDR block.
+ *The Amazon Resource Name (ARN) of the instance profile.
*/ - State?: VpcCidrBlockStateCode | string; + Arn?: string; /** - *A message about the status of the CIDR block, if applicable.
+ *The ID of the instance profile.
*/ - StatusMessage?: string; + Id?: string; } -export namespace VpcCidrBlockState { +export namespace IamInstanceProfile { /** * @internal */ - export const filterSensitiveLog = (obj: VpcCidrBlockState): any => ({ + export const filterSensitiveLog = (obj: IamInstanceProfile): any => ({ ...obj, }); } +export enum IamInstanceProfileAssociationState { + ASSOCIATED = "associated", + ASSOCIATING = "associating", + DISASSOCIATED = "disassociated", + DISASSOCIATING = "disassociating", +} + /** - *Describes an IPv4 CIDR block associated with a VPC.
+ *Describes an association between an IAM instance profile and an instance.
*/ -export interface VpcCidrBlockAssociation { +export interface IamInstanceProfileAssociation { /** - *The association ID for the IPv4 CIDR block.
+ *The ID of the association.
*/ AssociationId?: string; /** - *The IPv4 CIDR block.
+ *The ID of the instance.
*/ - CidrBlock?: string; + InstanceId?: string; /** - *Information about the state of the CIDR block.
+ *The IAM instance profile.
*/ - CidrBlockState?: VpcCidrBlockState; + IamInstanceProfile?: IamInstanceProfile; + + /** + *The state of the association.
+ */ + State?: IamInstanceProfileAssociationState | string; + + /** + *The time the IAM instance profile was associated with the instance.
+ */ + Timestamp?: Date; } -export namespace VpcCidrBlockAssociation { +export namespace IamInstanceProfileAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: VpcCidrBlockAssociation): any => ({ + export const filterSensitiveLog = (obj: IamInstanceProfileAssociation): any => ({ ...obj, }); } -/** - *Describes an IPv6 CIDR block associated with a VPC.
- */ -export interface VpcIpv6CidrBlockAssociation { +export interface AssociateIamInstanceProfileResult { /** - *The association ID for the IPv6 CIDR block.
+ *Information about the IAM instance profile association.
*/ - AssociationId?: string; + IamInstanceProfileAssociation?: IamInstanceProfileAssociation; +} +export namespace AssociateIamInstanceProfileResult { /** - *The IPv6 CIDR block.
+ * @internal */ - Ipv6CidrBlock?: string; + export const filterSensitiveLog = (obj: AssociateIamInstanceProfileResult): any => ({ + ...obj, + }); +} +/** + *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.
+ */ +export interface InstanceEventWindowAssociationRequest { /** - *Information about the state of the CIDR block.
+ *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.
*/ - Ipv6CidrBlockState?: VpcCidrBlockState; + InstanceIds?: string[]; /** - *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
.
The instance tags to associate with the event window. Any instances associated with the + * tags will be associated with the event window.
*/ - NetworkBorderGroup?: string; + InstanceTags?: Tag[]; /** - *The ID of the IPv6 address pool from which the IPv6 CIDR block is allocated.
+ *The IDs of the Dedicated Hosts to associate with the event window.
*/ - Ipv6Pool?: string; + DedicatedHostIds?: string[]; } -export namespace VpcIpv6CidrBlockAssociation { +export namespace InstanceEventWindowAssociationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: VpcIpv6CidrBlockAssociation): any => ({ + export const filterSensitiveLog = (obj: InstanceEventWindowAssociationRequest): any => ({ ...obj, }); } -export interface AssociateVpcCidrBlockResult { +export interface AssociateInstanceEventWindowRequest { /** - *Information about the IPv6 CIDR block association.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the IPv4 CIDR block association.
+ *The ID of the event window.
*/ - CidrBlockAssociation?: VpcCidrBlockAssociation; + InstanceEventWindowId: string | undefined; /** - *The ID of the VPC.
+ *One or more targets associated with the specified event window.
*/ - VpcId?: string; + AssociationTarget: InstanceEventWindowAssociationRequest | undefined; } -export namespace AssociateVpcCidrBlockResult { +export namespace AssociateInstanceEventWindowRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AssociateVpcCidrBlockResult): any => ({ + export const filterSensitiveLog = (obj: AssociateInstanceEventWindowRequest): any => ({ ...obj, }); } -export interface AttachClassicLinkVpcRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more targets associated with the event window.
+ */ +export interface InstanceEventWindowAssociationTarget { /** - *The ID of one or more of the VPC's security groups. You cannot specify security groups from a different VPC.
+ *The IDs of the instances associated with the event window.
*/ - Groups: string[] | undefined; + InstanceIds?: string[]; /** - *The ID of an EC2-Classic instance to link to the ClassicLink-enabled VPC.
+ *The instance tags associated with the event window. Any instances associated with the tags + * will be associated with the event window.
*/ - InstanceId: string | undefined; + Tags?: Tag[]; /** - *The ID of a ClassicLink-enabled VPC.
+ *The IDs of the Dedicated Hosts associated with the event window.
*/ - VpcId: string | undefined; + DedicatedHostIds?: string[]; } -export namespace AttachClassicLinkVpcRequest { +export namespace InstanceEventWindowAssociationTarget { /** * @internal */ - export const filterSensitiveLog = (obj: AttachClassicLinkVpcRequest): any => ({ + export const filterSensitiveLog = (obj: InstanceEventWindowAssociationTarget): any => ({ ...obj, }); } -export interface AttachClassicLinkVpcResult { - /** - *Returns true
if the request succeeds; otherwise, it returns an error.
The start day and time and the end day and time of the time range, in UTC.
+ */ +export interface InstanceEventWindowTimeRange { /** - * @internal + *The day on which the time range begins.
*/ - export const filterSensitiveLog = (obj: AttachClassicLinkVpcResult): any => ({ - ...obj, - }); -} + StartWeekDay?: WeekDay | string; -export interface AttachInternetGatewayRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The hour when the time range begins.
*/ - DryRun?: boolean; + StartHour?: number; /** - *The ID of the internet gateway.
+ *The day on which the time range ends.
*/ - InternetGatewayId: string | undefined; + EndWeekDay?: WeekDay | string; /** - *The ID of the VPC.
+ *The hour when the time range ends.
*/ - VpcId: string | undefined; + EndHour?: number; } -export namespace AttachInternetGatewayRequest { +export namespace InstanceEventWindowTimeRange { /** * @internal */ - export const filterSensitiveLog = (obj: AttachInternetGatewayRequest): any => ({ + export const filterSensitiveLog = (obj: InstanceEventWindowTimeRange): any => ({ ...obj, }); } /** - *Contains the parameters for AttachNetworkInterface.
+ *The event window.
*/ -export interface AttachNetworkInterfaceRequest { +export interface InstanceEventWindow { /** - *The index of the device for the network interface attachment.
+ *The ID of the event window.
*/ - DeviceIndex: number | undefined; + InstanceEventWindowId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more time ranges defined for the event window.
*/ - DryRun?: boolean; + TimeRanges?: InstanceEventWindowTimeRange[]; /** - *The ID of the instance.
+ *The name of the event window.
*/ - InstanceId: string | undefined; + Name?: string; /** - *The ID of the network interface.
+ *The cron expression defined for the event window.
*/ - NetworkInterfaceId: string | undefined; + CronExpression?: string; /** - *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.
+ *One or more targets associated with the event window.
*/ - NetworkCardIndex?: number; + AssociationTarget?: InstanceEventWindowAssociationTarget; + + /** + *The current state of the event window.
+ */ + State?: InstanceEventWindowState | string; + + /** + *The instance tags associated with the event window.
+ */ + Tags?: Tag[]; } -export namespace AttachNetworkInterfaceRequest { +export namespace InstanceEventWindow { /** * @internal */ - export const filterSensitiveLog = (obj: AttachNetworkInterfaceRequest): any => ({ + export const filterSensitiveLog = (obj: InstanceEventWindow): any => ({ ...obj, }); } -/** - *Contains the output of AttachNetworkInterface.
- */ -export interface AttachNetworkInterfaceResult { - /** - *The ID of the network interface attachment.
- */ - AttachmentId?: string; - +export interface AssociateInstanceEventWindowResult { /** - *The index of the network card.
+ *Information about the event window.
*/ - NetworkCardIndex?: number; + InstanceEventWindow?: InstanceEventWindow; } -export namespace AttachNetworkInterfaceResult { +export namespace AssociateInstanceEventWindowResult { /** * @internal */ - export const filterSensitiveLog = (obj: AttachNetworkInterfaceResult): any => ({ + export const filterSensitiveLog = (obj: AssociateInstanceEventWindowResult): any => ({ ...obj, }); } -export interface AttachVolumeRequest { +export interface AssociateRouteTableRequest { /** - *The device name (for example, /dev/sdh
or xvdh
).
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the instance.
+ *The ID of the route table.
*/ - InstanceId: string | undefined; + RouteTableId: string | undefined; /** - *The ID of the EBS volume. The volume and instance must be within the same Availability - * Zone.
+ *The ID of the subnet.
*/ - VolumeId: string | undefined; + SubnetId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the internet gateway or virtual private gateway.
*/ - DryRun?: boolean; + GatewayId?: string; } -export namespace AttachVolumeRequest { +export namespace AssociateRouteTableRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AttachVolumeRequest): any => ({ + export const filterSensitiveLog = (obj: AssociateRouteTableRequest): any => ({ ...obj, }); } -export type VolumeAttachmentState = "attached" | "attaching" | "busy" | "detached" | "detaching"; +export type RouteTableAssociationStateCode = + | "associated" + | "associating" + | "disassociated" + | "disassociating" + | "failed"; /** - *Describes volume attachment details.
+ *Describes the state of an association between a route table and a subnet or gateway.
*/ -export interface VolumeAttachment { - /** - *The time stamp when the attachment initiated.
- */ - AttachTime?: Date; - +export interface RouteTableAssociationState { /** - *The device name.
+ *The state of the association.
*/ - Device?: string; + State?: RouteTableAssociationStateCode | string; /** - *The ID of the instance.
+ *The status message, if applicable.
*/ - InstanceId?: string; + StatusMessage?: string; +} +export namespace RouteTableAssociationState { /** - *The attachment state of the volume.
+ * @internal */ - State?: VolumeAttachmentState | string; + export const filterSensitiveLog = (obj: RouteTableAssociationState): any => ({ + ...obj, + }); +} +export interface AssociateRouteTableResult { /** - *The ID of the volume.
+ *The route table association ID. This ID is required for disassociating the route + * table.
*/ - VolumeId?: string; + AssociationId?: string; /** - *Indicates whether the EBS volume is deleted on instance termination.
+ *The state of the association.
*/ - DeleteOnTermination?: boolean; + AssociationState?: RouteTableAssociationState; } -export namespace VolumeAttachment { +export namespace AssociateRouteTableResult { /** * @internal */ - export const filterSensitiveLog = (obj: VolumeAttachment): any => ({ + export const filterSensitiveLog = (obj: AssociateRouteTableResult): any => ({ ...obj, }); } -/** - *Contains the parameters for AttachVpnGateway.
- */ -export interface AttachVpnGatewayRequest { - /** - *The ID of the VPC.
- */ - VpcId: string | undefined; - +export interface AssociateSubnetCidrBlockRequest { /** - *The ID of the virtual private gateway.
+ *The IPv6 CIDR block for your subnet. The subnet must have a /64 prefix + * length.
*/ - VpnGatewayId: string | undefined; + Ipv6CidrBlock: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The ID of your subnet.
*/ - DryRun?: boolean; + SubnetId: string | undefined; } -export namespace AttachVpnGatewayRequest { +export namespace AssociateSubnetCidrBlockRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AttachVpnGatewayRequest): any => ({ + export const filterSensitiveLog = (obj: AssociateSubnetCidrBlockRequest): any => ({ ...obj, }); } -export type AttachmentStatus = "attached" | "attaching" | "detached" | "detaching"; +export type SubnetCidrBlockStateCode = + | "associated" + | "associating" + | "disassociated" + | "disassociating" + | "failed" + | "failing"; /** - *Describes an attachment between a virtual private gateway and a VPC.
+ *Describes the state of a CIDR block.
*/ -export interface VpcAttachment { +export interface SubnetCidrBlockState { /** - *The current state of the attachment.
+ *The state of a CIDR block.
*/ - State?: AttachmentStatus | string; + State?: SubnetCidrBlockStateCode | string; /** - *The ID of the VPC.
+ *A message about the status of the CIDR block, if applicable.
*/ - VpcId?: string; + StatusMessage?: string; } -export namespace VpcAttachment { +export namespace SubnetCidrBlockState { /** * @internal */ - export const filterSensitiveLog = (obj: VpcAttachment): any => ({ + export const filterSensitiveLog = (obj: SubnetCidrBlockState): any => ({ ...obj, }); } /** - *Contains the output of AttachVpnGateway.
+ *Describes an association between a subnet and an IPv6 CIDR block.
*/ -export interface AttachVpnGatewayResult { +export interface SubnetIpv6CidrBlockAssociation { /** - *Information about the attachment.
+ *The ID of the association.
*/ - VpcAttachment?: VpcAttachment; + AssociationId?: string; + + /** + *The IPv6 CIDR block.
+ */ + Ipv6CidrBlock?: string; + + /** + *The state of the CIDR block.
+ */ + Ipv6CidrBlockState?: SubnetCidrBlockState; } -export namespace AttachVpnGatewayResult { +export namespace SubnetIpv6CidrBlockAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: AttachVpnGatewayResult): any => ({ + export const filterSensitiveLog = (obj: SubnetIpv6CidrBlockAssociation): any => ({ ...obj, }); } -export interface AuthorizeClientVpnIngressRequest { +export interface AssociateSubnetCidrBlockResult { /** - *The ID of the Client VPN endpoint.
+ *Information about the IPv6 association.
*/ - ClientVpnEndpointId: string | undefined; + Ipv6CidrBlockAssociation?: SubnetIpv6CidrBlockAssociation; /** - *The IPv4 address range, in CIDR notation, of the network for which access is being authorized.
+ *The ID of the subnet.
*/ - TargetNetworkCidr: string | undefined; + SubnetId?: string; +} +export namespace AssociateSubnetCidrBlockResult { /** - *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.
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.
The ID of the transit gateway multicast domain.
*/ - AuthorizeAllGroups?: boolean; + TransitGatewayMulticastDomainId?: string; /** - *A brief description of the authorization rule.
+ *The ID of the transit gateway attachment to associate with the transit gateway multicast domain.
*/ - Description?: string; + TransitGatewayAttachmentId?: string; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ *The IDs of the subnets to associate with the transit gateway multicast domain.
*/ - ClientToken?: string; + SubnetIds?: string[]; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes the state of an authorization rule.
- */ -export interface ClientVpnAuthorizationRuleStatus { - /** - *The state of the authorization rule.
- */ - Code?: ClientVpnAuthorizationRuleStatusCode | string; - +export interface AssociateTransitGatewayMulticastDomainResult { /** - *A message about the status of the authorization rule, if applicable.
+ *Information about the transit gateway multicast domain associations.
*/ - Message?: string; + Associations?: TransitGatewayMulticastDomainAssociations; } -export namespace ClientVpnAuthorizationRuleStatus { +export namespace AssociateTransitGatewayMulticastDomainResult { /** * @internal */ - export const filterSensitiveLog = (obj: ClientVpnAuthorizationRuleStatus): any => ({ + export const filterSensitiveLog = (obj: AssociateTransitGatewayMulticastDomainResult): any => ({ ...obj, }); } -export interface AuthorizeClientVpnIngressResult { +export interface AssociateTransitGatewayRouteTableRequest { /** - *The current state of the authorization rule.
+ *The ID of the transit gateway route table.
*/ - Status?: ClientVpnAuthorizationRuleStatus; + TransitGatewayRouteTableId: string | undefined; + + /** + *The ID of the attachment.
+ */ + TransitGatewayAttachmentId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes an IPv4 range.
+ *Describes an association between a resource attachment and a transit gateway route table.
*/ -export interface IpRange { +export interface TransitGatewayAssociation { /** - *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.
+ *The ID of the transit gateway route table.
*/ - CidrIp?: string; + TransitGatewayRouteTableId?: string; /** - *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 ._-:/()#,@[]+=&;{}!$*
+ *The ID of the attachment.
*/ - Description?: string; -} + TransitGatewayAttachmentId?: string; -export namespace IpRange { /** - * @internal + *The ID of the resource.
*/ - export const filterSensitiveLog = (obj: IpRange): any => ({ - ...obj, - }); -} + ResourceId?: string; -/** - *[EC2-VPC only] Describes an IPv6 range.
- */ -export interface Ipv6Range { /** - *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.
+ *The resource type. Note that the tgw-peering
resource type has been deprecated.
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 ._-:/()#,@[]+=&;{}!$*
+ *The state of the association.
*/ - Description?: string; + State?: TransitGatewayAssociationState | string; } -export namespace Ipv6Range { +export namespace TransitGatewayAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: Ipv6Range): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayAssociation): any => ({ ...obj, }); } -/** - *Describes a prefix list ID.
- */ -export interface PrefixListId { - /** - *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 ._-:/()#,@[]+=;{}!$*
- */ - Description?: string; - +export interface AssociateTransitGatewayRouteTableResult { /** - *The ID of the prefix.
+ *The ID of the association.
*/ - PrefixListId?: string; + Association?: TransitGatewayAssociation; } -export namespace PrefixListId { +export namespace AssociateTransitGatewayRouteTableResult { /** * @internal */ - export const filterSensitiveLog = (obj: PrefixListId): any => ({ + export const filterSensitiveLog = (obj: AssociateTransitGatewayRouteTableResult): any => ({ ...obj, }); } -/** - *Describes a security group and Amazon Web Services account ID pair.
- */ -export interface UserIdGroupPair { - /** - *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 ._-:/()#,@[]+=;{}!$*
- */ - Description?: string; - +export interface AssociateTrunkInterfaceRequest { /** - *The ID of the security group.
+ *The ID of the branch network interface.
*/ - GroupId?: string; + BranchInterfaceId: string | undefined; /** - *The name of the security group. In a request, use this parameter for a security group - * in EC2-Classic or a default VPC only. 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.
+ *The ID of the trunk network interface.
*/ - GroupName?: string; + TrunkInterfaceId: string | undefined; /** - *The status of a VPC peering connection, if applicable.
+ *The ID of the VLAN. This applies to the VLAN protocol.
*/ - PeeringStatus?: string; + VlanId?: number; /** - *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.
- *[EC2-Classic] Required when adding or removing rules that reference a security group - * in another Amazon Web Services account.
+ *The application key. This applies to the GRE protocol.
*/ - UserId?: string; + GreKey?: number; /** - *The ID of the VPC for the referenced security group, if applicable.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. For more information, see How to Ensure + * Idempotency.
*/ - VpcId?: string; + ClientToken?: string; /** - *The ID of the VPC peering connection, if applicable.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a set of permissions for a security group rule.
+ *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.
*/ -export interface IpPermission { +export interface TrunkInterfaceAssociation { /** - *The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number.
- * A value of -1
indicates all ICMP/ICMPv6 types. If you specify all
- * ICMP/ICMPv6 types, you must specify all codes.
The ID of the association.
*/ - FromPort?: number; + AssociationId?: string; /** - *The IP protocol name (tcp
, udp
, icmp
, icmpv6
)
- * or number (see Protocol Numbers).
[VPC only] 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.
The ID of the branch network interface.
*/ - IpProtocol?: string; + BranchInterfaceId?: string; /** - *The IPv4 ranges.
+ *The ID of the trunk network interface.
*/ - IpRanges?: IpRange[]; + TrunkInterfaceId?: string; /** - *[VPC only] The IPv6 ranges.
+ *The interface protocol. Valid values are VLAN
and GRE
.
[VPC only] The prefix list IDs.
+ *The ID of the VLAN when you use the VLAN protocol.
*/ - PrefixListIds?: PrefixListId[]; + VlanId?: number; /** - *The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value
- * of -1
indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types,
- * you must specify all codes.
The application key when you use the GRE protocol.
*/ - ToPort?: number; + GreKey?: number; /** - *The security group and Amazon Web Services account ID pairs.
+ *The tags for the trunk interface association.
*/ - UserIdGroupPairs?: UserIdGroupPair[]; + Tags?: Tag[]; } -export namespace IpPermission { +export namespace TrunkInterfaceAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: IpPermission): any => ({ + export const filterSensitiveLog = (obj: TrunkInterfaceAssociation): any => ({ ...obj, }); } -export interface AuthorizeSecurityGroupEgressRequest { +export interface AssociateTrunkInterfaceResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the association between the trunk network interface and branch network interface.
*/ - DryRun?: boolean; + InterfaceAssociation?: TrunkInterfaceAssociation; /** - *The ID of the security group.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. For more information, see How to Ensure + * Idempotency.
*/ - GroupId: string | undefined; + ClientToken?: string; +} +export namespace AssociateTrunkInterfaceResult { /** - *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.
+ * @internal */ - IpPermissions?: IpPermission[]; + export const filterSensitiveLog = (obj: AssociateTrunkInterfaceResult): any => ({ + ...obj, + }); +} +export interface AssociateVpcCidrBlockRequest { /** - *The tags applied to the security group rule.
+ *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.
*/ - TagSpecifications?: TagSpecification[]; + AmazonProvidedIpv6CidrBlock?: boolean; /** - *Not supported. Use a set of IP permissions to specify the CIDR.
+ *An IPv4 CIDR block to associate with the VPC.
*/ - CidrIp?: string; + CidrBlock?: string; /** - *Not supported. Use a set of IP permissions to specify the port.
+ *The ID of the VPC.
*/ - FromPort?: number; + VpcId: string | undefined; /** - *Not supported. Use a set of IP permissions to specify the protocol name or - * number.
+ *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.
*/ - IpProtocol?: string; + Ipv6CidrBlockNetworkBorderGroup?: string; /** - *Not supported. Use a set of IP permissions to specify the port.
+ *The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.
*/ - ToPort?: number; + Ipv6Pool?: string; /** - *Not supported. Use a set of IP permissions to specify a - * destination security group.
+ *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.
*/ - SourceSecurityGroupName?: string; + Ipv6CidrBlock?: string; /** - *Not supported. Use a set of IP permissions to specify a - * destination security group.
+ *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.
*/ - SourceSecurityGroupOwnerId?: string; -} + Ipv4IpamPoolId?: string; -export namespace AuthorizeSecurityGroupEgressRequest { /** - * @internal + *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. + *
*/ - export const filterSensitiveLog = (obj: AuthorizeSecurityGroupEgressRequest): any => ({ - ...obj, - }); -} + Ipv4NetmaskLength?: number; -/** - *Describes the security group that is referenced in the security group rule.
- */ -export interface ReferencedSecurityGroup { /** - *The ID of the security group.
+ *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.
*/ - GroupId?: string; + Ipv6IpamPoolId?: string; /** - *The status of a VPC peering connection, if applicable.
+ *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.
*/ - PeeringStatus?: string; + Ipv6NetmaskLength?: number; +} +export namespace AssociateVpcCidrBlockRequest { /** - *The Amazon Web Services account ID.
+ * @internal */ - UserId?: string; + export const filterSensitiveLog = (obj: AssociateVpcCidrBlockRequest): any => ({ + ...obj, + }); +} + +export type VpcCidrBlockStateCode = + | "associated" + | "associating" + | "disassociated" + | "disassociating" + | "failed" + | "failing"; +/** + *Describes the state of a CIDR block.
+ */ +export interface VpcCidrBlockState { /** - *The ID of the VPC.
+ *The state of the CIDR block.
*/ - VpcId?: string; + State?: VpcCidrBlockStateCode | string; /** - *The ID of the VPC peering connection.
+ *A message about the status of the CIDR block, if applicable.
*/ - VpcPeeringConnectionId?: string; + StatusMessage?: string; } -export namespace ReferencedSecurityGroup { +export namespace VpcCidrBlockState { /** * @internal */ - export const filterSensitiveLog = (obj: ReferencedSecurityGroup): any => ({ + export const filterSensitiveLog = (obj: VpcCidrBlockState): any => ({ ...obj, }); } /** - *Describes a security group rule.
+ *Describes an IPv4 CIDR block associated with a VPC.
*/ -export interface SecurityGroupRule { +export interface VpcCidrBlockAssociation { /** - *The ID of the security group rule.
+ *The association ID for the IPv4 CIDR block.
*/ - SecurityGroupRuleId?: string; + AssociationId?: string; /** - *The ID of the security group.
+ *The IPv4 CIDR block.
*/ - GroupId?: string; + CidrBlock?: string; /** - *The ID of the Amazon Web Services account that owns the security group.
+ *Information about the state of the CIDR block.
*/ - GroupOwnerId?: string; + CidrBlockState?: VpcCidrBlockState; +} +export namespace VpcCidrBlockAssociation { /** - *Indicates whether the security group rule is an outbound rule.
+ * @internal */ - IsEgress?: boolean; + export const filterSensitiveLog = (obj: VpcCidrBlockAssociation): any => ({ + ...obj, + }); +} +/** + *Describes an IPv6 CIDR block associated with a VPC.
+ */ +export interface VpcIpv6CidrBlockAssociation { /** - *The IP protocol name (tcp
, udp
, icmp
,
- * icmpv6
) or number (see Protocol Numbers).
Use -1
to specify all protocols.
The association ID for the IPv6 CIDR block.
*/ - IpProtocol?: string; + AssociationId?: string; /** - *The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type. A value - * of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must - * specify all codes.
+ *The IPv6 CIDR block.
*/ - FromPort?: number; + Ipv6CidrBlock?: string; /** - *The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1
indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
Information about the state of the CIDR block.
*/ - ToPort?: number; + Ipv6CidrBlockState?: VpcCidrBlockState; /** - *The IPv4 CIDR range.
+ *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
.
The IPv6 CIDR range.
+ *The ID of the IPv6 address pool from which the IPv6 CIDR block is allocated.
*/ - CidrIpv6?: string; + Ipv6Pool?: string; +} +export namespace VpcIpv6CidrBlockAssociation { /** - *The ID of the prefix list.
+ * @internal */ - PrefixListId?: string; + export const filterSensitiveLog = (obj: VpcIpv6CidrBlockAssociation): any => ({ + ...obj, + }); +} +export interface AssociateVpcCidrBlockResult { /** - *Describes the security group that is referenced in the rule.
+ *Information about the IPv6 CIDR block association.
*/ - ReferencedGroupInfo?: ReferencedSecurityGroup; + Ipv6CidrBlockAssociation?: VpcIpv6CidrBlockAssociation; /** - *The security group rule description.
+ *Information about the IPv4 CIDR block association.
*/ - Description?: string; + CidrBlockAssociation?: VpcCidrBlockAssociation; /** - *The tags applied to the security group rule.
+ *The ID of the VPC.
*/ - Tags?: Tag[]; + VpcId?: string; } -export namespace SecurityGroupRule { +export namespace AssociateVpcCidrBlockResult { /** * @internal */ - export const filterSensitiveLog = (obj: SecurityGroupRule): any => ({ + export const filterSensitiveLog = (obj: AssociateVpcCidrBlockResult): any => ({ ...obj, }); } -export interface AuthorizeSecurityGroupEgressResult { +export interface AttachClassicLinkVpcRequest { /** - *Returns true
if the request succeeds; otherwise, returns an error.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the outbound (egress) security group rules that were added.
+ *The ID of one or more of the VPC's security groups. You cannot specify security groups from a different VPC.
*/ - SecurityGroupRules?: SecurityGroupRule[]; + Groups: string[] | undefined; + + /** + *The ID of an EC2-Classic instance to link to the ClassicLink-enabled VPC.
+ */ + InstanceId: string | undefined; + + /** + *The ID of a ClassicLink-enabled VPC.
+ */ + VpcId: string | undefined; } -export namespace AuthorizeSecurityGroupEgressResult { +export namespace AttachClassicLinkVpcRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AuthorizeSecurityGroupEgressResult): any => ({ + export const filterSensitiveLog = (obj: AttachClassicLinkVpcRequest): any => ({ ...obj, }); } -export interface AuthorizeSecurityGroupIngressRequest { +export interface AttachClassicLinkVpcResult { /** - *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.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
The start of port range for the TCP and UDP protocols, or an ICMP type number.
- * For the ICMP type number, use -1
to specify all types. If you
- * specify all ICMP types, you must specify all codes.
Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.
+ * @internal */ - FromPort?: number; + export const filterSensitiveLog = (obj: AttachClassicLinkVpcResult): any => ({ + ...obj, + }); +} +export interface AttachInternetGatewayRequest { /** - *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.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
[EC2-Classic, default VPC] The name of the security group. You must specify either the - * security group ID or the security group name in the request.
+ *The ID of the internet gateway.
*/ - GroupName?: string; + InternetGatewayId: string | undefined; /** - *The sets of IP permissions.
+ *The ID of the VPC.
*/ - IpPermissions?: IpPermission[]; + VpcId: string | undefined; +} +export namespace AttachInternetGatewayRequest { /** - *The IP protocol name (tcp
, udp
, icmp
) or number
- * (see Protocol Numbers). To specify icmpv6
, use a set of IP permissions.
[VPC only] 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.
+ * @internal */ - IpProtocol?: string; + export const filterSensitiveLog = (obj: AttachInternetGatewayRequest): any => ({ + ...obj, + }); +} +/** + *Contains the parameters for AttachNetworkInterface.
+ */ +export interface AttachNetworkInterfaceRequest { /** - *[EC2-Classic, 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. For - * EC2-VPC, the source security group must be in the same VPC.
+ *The index of the device for the network interface attachment.
*/ - SourceSecurityGroupName?: string; + DeviceIndex: number | undefined; /** - *[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.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The end of port range for the TCP and UDP protocols, or an ICMP code number.
- * For the ICMP code number, use -1
to specify all codes. If you
- * specify all ICMP types, you must specify all codes.
Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.
+ *The ID of the instance.
*/ - ToPort?: number; + InstanceId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the network interface.
*/ - DryRun?: boolean; + NetworkInterfaceId: string | undefined; /** - *[VPC Only] The tags applied to the security group rule.
+ *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.
*/ - TagSpecifications?: TagSpecification[]; + NetworkCardIndex?: number; } -export namespace AuthorizeSecurityGroupIngressRequest { +export namespace AttachNetworkInterfaceRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AuthorizeSecurityGroupIngressRequest): any => ({ + export const filterSensitiveLog = (obj: AttachNetworkInterfaceRequest): any => ({ ...obj, }); } -export interface AuthorizeSecurityGroupIngressResult { +/** + *Contains the output of AttachNetworkInterface.
+ */ +export interface AttachNetworkInterfaceResult { /** - *Returns true
if the request succeeds; otherwise, returns an error.
The ID of the network interface attachment.
*/ - Return?: boolean; + AttachmentId?: string; /** - *Information about the inbound (ingress) security group rules that were added.
+ *The index of the network card.
*/ - SecurityGroupRules?: SecurityGroupRule[]; + NetworkCardIndex?: number; } -export namespace AuthorizeSecurityGroupIngressResult { +export namespace AttachNetworkInterfaceResult { /** * @internal */ - export const filterSensitiveLog = (obj: AuthorizeSecurityGroupIngressResult): any => ({ + export const filterSensitiveLog = (obj: AttachNetworkInterfaceResult): any => ({ ...obj, }); } -/** - *Describes the storage parameters for Amazon S3 and Amazon S3 buckets for an instance store-backed AMI.
- */ -export interface S3Storage { - /** - *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 Managing Amazon Web Services Access Keys.
- */ - AWSAccessKeyId?: string; - +export interface AttachVolumeRequest { /** - *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.
+ *The device name (for example, /dev/sdh
or xvdh
).
The beginning of the file name of the AMI.
+ *The ID of the instance.
*/ - Prefix?: string; + InstanceId: string | undefined; /** - *An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your behalf.
+ *The ID of the EBS volume. The volume and instance must be within the same Availability + * Zone.
*/ - UploadPolicy?: Uint8Array; + VolumeId: string | undefined; /** - *The signature of the JSON document.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes the storage location for an instance store-backed AMI.
+ *Describes volume attachment details.
*/ -export interface Storage { +export interface VolumeAttachment { /** - *An Amazon S3 storage location.
+ *The time stamp when the attachment initiated.
*/ - S3?: S3Storage; + AttachTime?: Date; + + /** + *The device name.
+ */ + Device?: string; + + /** + *The ID of the instance.
+ */ + InstanceId?: string; + + /** + *The attachment state of the volume.
+ */ + State?: VolumeAttachmentState | string; + + /** + *The ID of the volume.
+ */ + VolumeId?: string; + + /** + *Indicates whether the EBS volume is deleted on instance termination.
+ */ + DeleteOnTermination?: boolean; } -export namespace Storage { +export namespace VolumeAttachment { /** * @internal */ - export const filterSensitiveLog = (obj: Storage): any => ({ + export const filterSensitiveLog = (obj: VolumeAttachment): any => ({ ...obj, }); } /** - *Contains the parameters for BundleInstance.
+ *Contains the parameters for AttachVpnGateway.
*/ -export interface BundleInstanceRequest { +export interface AttachVpnGatewayRequest { /** - *The ID of the instance to bundle.
- *Type: String
- *Default: None
- *Required: Yes
+ *The ID of the VPC.
*/ - InstanceId: string | undefined; + VpcId: string | undefined; /** - *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.
+ *The ID of the virtual private gateway.
*/ - Storage: Storage | undefined; + VpnGatewayId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
Describes an error for BundleInstance.
+ *Describes an attachment between a virtual private gateway and a VPC.
*/ -export interface BundleTaskError { +export interface VpcAttachment { /** - *The error code.
+ *The current state of the attachment.
*/ - Code?: string; + State?: AttachmentStatus | string; /** - *The error message.
+ *The ID of the VPC.
*/ - Message?: string; + VpcId?: string; } -export namespace BundleTaskError { +export namespace VpcAttachment { /** * @internal */ - export const filterSensitiveLog = (obj: BundleTaskError): any => ({ + export const filterSensitiveLog = (obj: VpcAttachment): any => ({ ...obj, }); } -export type BundleTaskState = - | "bundling" - | "cancelling" - | "complete" - | "failed" - | "pending" - | "storing" - | "waiting-for-shutdown"; - /** - *Describes a bundle task.
+ *Contains the output of AttachVpnGateway.
*/ -export interface BundleTask { - /** - *The ID of the bundle task.
- */ - BundleId?: string; - +export interface AttachVpnGatewayResult { /** - *If the task fails, a description of the error.
+ *Information about the attachment.
*/ - BundleTaskError?: BundleTaskError; + VpcAttachment?: VpcAttachment; +} +export namespace AttachVpnGatewayResult { /** - *The ID of the instance associated with this bundle task.
+ * @internal */ - InstanceId?: string; + export const filterSensitiveLog = (obj: AttachVpnGatewayResult): any => ({ + ...obj, + }); +} +export interface AuthorizeClientVpnIngressRequest { /** - *The level of task completion, as a percent (for example, 20%).
+ *The ID of the Client VPN endpoint.
*/ - Progress?: string; + ClientVpnEndpointId: string | undefined; /** - *The time this task started.
+ *The IPv4 address range, in CIDR notation, of the network for which access is being authorized.
*/ - StartTime?: Date; + TargetNetworkCidr: string | undefined; /** - *The state of the task.
+ *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.
The Amazon S3 storage locations.
+ *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.
The time of the most recent update for the task.
+ *A brief description of the authorization rule.
*/ - UpdateTime?: Date; -} + Description?: string; -export namespace BundleTask { /** - * @internal + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
*/ - export const filterSensitiveLog = (obj: BundleTask): any => ({ - ...obj, - }); -} + ClientToken?: string; -/** - *Contains the output of BundleInstance.
- */ -export interface BundleInstanceResult { /** - *Information about the bundle task.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Contains the parameters for CancelBundleTask.
+ *Describes the state of an authorization rule.
*/ -export interface CancelBundleTaskRequest { +export interface ClientVpnAuthorizationRuleStatus { /** - *The ID of the bundle task.
+ *The state of the authorization rule.
*/ - BundleId: string | undefined; + Code?: ClientVpnAuthorizationRuleStatusCode | string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
A message about the status of the authorization rule, if applicable.
*/ - DryRun?: boolean; + Message?: string; } -export namespace CancelBundleTaskRequest { +export namespace ClientVpnAuthorizationRuleStatus { /** * @internal */ - export const filterSensitiveLog = (obj: CancelBundleTaskRequest): any => ({ + export const filterSensitiveLog = (obj: ClientVpnAuthorizationRuleStatus): any => ({ ...obj, }); } -/** - *Contains the output of CancelBundleTask.
- */ -export interface CancelBundleTaskResult { +export interface AuthorizeClientVpnIngressResult { /** - *Information about the bundle task.
+ *The current state of the authorization rule.
*/ - BundleTask?: BundleTask; + Status?: ClientVpnAuthorizationRuleStatus; } -export namespace CancelBundleTaskResult { +export namespace AuthorizeClientVpnIngressResult { /** * @internal */ - export const filterSensitiveLog = (obj: CancelBundleTaskResult): any => ({ + export const filterSensitiveLog = (obj: AuthorizeClientVpnIngressResult): any => ({ ...obj, }); } -export interface CancelCapacityReservationRequest { +/** + *Describes an IPv4 range.
+ */ +export interface IpRange { /** - *The ID of the Capacity Reservation to be cancelled.
+ *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.
*/ - CapacityReservationId: string | undefined; + CidrIp?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
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 ._-:/()#,@[]+=&;{}!$*
*/ - DryRun?: boolean; + Description?: string; } -export namespace CancelCapacityReservationRequest { +export namespace IpRange { /** * @internal */ - export const filterSensitiveLog = (obj: CancelCapacityReservationRequest): any => ({ + export const filterSensitiveLog = (obj: IpRange): any => ({ ...obj, }); } -export interface CancelCapacityReservationResult { - /** - *Returns true
if the request succeeds; otherwise, it returns an error.
[EC2-VPC only] Describes an IPv6 range.
+ */ +export interface Ipv6Range { /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
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.
*/ - DryRun?: boolean; + CidrIpv6?: string; /** - *The IDs of the Capacity Reservation Fleets to cancel.
+ *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 ._-:/()#,@[]+=&;{}!$*
*/ - CapacityReservationFleetIds: string[] | undefined; + Description?: string; } -export namespace CancelCapacityReservationFleetsRequest { +export namespace Ipv6Range { /** * @internal */ - export const filterSensitiveLog = (obj: CancelCapacityReservationFleetsRequest): any => ({ + export const filterSensitiveLog = (obj: Ipv6Range): any => ({ ...obj, }); } /** - *Describes a Capacity Reservation Fleet cancellation error.
+ *Describes a prefix list ID.
*/ -export interface CancelCapacityReservationFleetError { +export interface PrefixListId { /** - *The error code.
+ *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 ._-:/()#,@[]+=;{}!$*
*/ - Code?: string; + Description?: string; /** - *The error message.
+ *The ID of the prefix.
*/ - Message?: string; + PrefixListId?: string; } -export namespace CancelCapacityReservationFleetError { +export namespace PrefixListId { /** * @internal */ - export const filterSensitiveLog = (obj: CancelCapacityReservationFleetError): any => ({ + export const filterSensitiveLog = (obj: PrefixListId): any => ({ ...obj, }); } /** - *Describes a Capacity Reservation Fleet that could not be cancelled.
+ *Describes a security group and Amazon Web Services account ID pair.
*/ -export interface FailedCapacityReservationFleetCancellationResult { +export interface UserIdGroupPair { /** - *The ID of the Capacity Reservation Fleet that could not be cancelled.
+ *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 ._-:/()#,@[]+=;{}!$*
*/ - CapacityReservationFleetId?: string; + Description?: string; /** - *Information about the Capacity Reservation Fleet cancellation error.
+ *The ID of the security group.
*/ - CancelCapacityReservationFleetError?: CancelCapacityReservationFleetError; -} + GroupId?: string; -export namespace FailedCapacityReservationFleetCancellationResult { /** - * @internal + *The name of the security group. In a request, use this parameter for a security group + * in EC2-Classic or a default VPC only. 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.
*/ - export const filterSensitiveLog = (obj: FailedCapacityReservationFleetCancellationResult): any => ({ - ...obj, - }); -} + GroupName?: string; -export enum CapacityReservationFleetState { - ACTIVE = "active", - CANCELLED = "cancelled", - CANCELLING = "cancelling", - EXPIRED = "expired", - EXPIRING = "expiring", - FAILED = "failed", - MODIFYING = "modifying", - PARTIALLY_FULFILLED = "partially_fulfilled", - SUBMITTED = "submitted", -} + /** + *The status of a VPC peering connection, if applicable.
+ */ + PeeringStatus?: string; -/** - *Describes a Capacity Reservation Fleet that was successfully cancelled.
- */ -export interface CapacityReservationFleetCancellationState { /** - *The current state of the Capacity Reservation Fleet.
+ *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.
+ *[EC2-Classic] Required when adding or removing rules that reference a security group + * in another Amazon Web Services account.
*/ - CurrentFleetState?: CapacityReservationFleetState | string; + UserId?: string; /** - *The previous state of the Capacity Reservation Fleet.
+ *The ID of the VPC for the referenced security group, if applicable.
*/ - PreviousFleetState?: CapacityReservationFleetState | string; + VpcId?: string; /** - *The ID of the Capacity Reservation Fleet that was successfully cancelled.
+ *The ID of the VPC peering connection, if applicable.
*/ - CapacityReservationFleetId?: string; + VpcPeeringConnectionId?: string; } -export namespace CapacityReservationFleetCancellationState { +export namespace UserIdGroupPair { /** * @internal */ - export const filterSensitiveLog = (obj: CapacityReservationFleetCancellationState): any => ({ + export const filterSensitiveLog = (obj: UserIdGroupPair): any => ({ ...obj, }); } -export interface CancelCapacityReservationFleetsResult { +/** + *Describes a set of permissions for a security group rule.
+ */ +export interface IpPermission { /** - *Information about the Capacity Reservation Fleets that were successfully cancelled.
+ *The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number.
+ * A value of -1
indicates all ICMP/ICMPv6 types. If you specify all
+ * ICMP/ICMPv6 types, you must specify all codes.
Information about the Capacity Reservation Fleets that could not be cancelled.
+ *The IP protocol name (tcp
, udp
, icmp
, icmpv6
)
+ * or number (see Protocol Numbers).
[VPC only] 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.
The IPv4 ranges.
*/ - export const filterSensitiveLog = (obj: CancelCapacityReservationFleetsResult): any => ({ - ...obj, - }); -} + IpRanges?: IpRange[]; -export interface CancelConversionRequest { /** - *The ID of the conversion task.
+ *[VPC only] The IPv6 ranges.
*/ - ConversionTaskId: string | undefined; + Ipv6Ranges?: Ipv6Range[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
[VPC only] The prefix list IDs.
*/ - DryRun?: boolean; + PrefixListIds?: PrefixListId[]; /** - *The reason for canceling the conversion task.
+ *The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value
+ * of -1
indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types,
+ * you must specify all codes.
The security group and Amazon Web Services account ID pairs.
+ */ + UserIdGroupPairs?: UserIdGroupPair[]; } -export namespace CancelConversionRequest { +export namespace IpPermission { /** * @internal */ - export const filterSensitiveLog = (obj: CancelConversionRequest): any => ({ + export const filterSensitiveLog = (obj: IpPermission): any => ({ ...obj, }); } -export interface CancelExportTaskRequest { +export interface AuthorizeSecurityGroupEgressRequest { /** - *The ID of the export task. This is the ID returned by CreateInstanceExportTask
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the security group.
*/ - export const filterSensitiveLog = (obj: CancelExportTaskRequest): any => ({ - ...obj, - }); -} + GroupId: string | undefined; -export interface CancelImportTaskRequest { /** - *The reason for canceling the task.
+ *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.
*/ - CancelReason?: string; + IpPermissions?: IpPermission[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The tags applied to the security group rule.
*/ - DryRun?: boolean; + TagSpecifications?: TagSpecification[]; /** - *The ID of the import image or import snapshot task to be canceled.
+ *Not supported. Use a set of IP permissions to specify the CIDR.
*/ - ImportTaskId?: string; -} + CidrIp?: string; -export namespace CancelImportTaskRequest { /** - * @internal + *Not supported. Use a set of IP permissions to specify the port.
*/ - export const filterSensitiveLog = (obj: CancelImportTaskRequest): any => ({ - ...obj, - }); -} + FromPort?: number; -export interface CancelImportTaskResult { /** - *The ID of the task being canceled.
+ *Not supported. Use a set of IP permissions to specify the protocol name or + * number.
*/ - ImportTaskId?: string; + IpProtocol?: string; /** - *The current state of the task being canceled.
+ *Not supported. Use a set of IP permissions to specify the port.
*/ - PreviousState?: string; + ToPort?: number; /** - *The current state of the task being canceled.
+ *Not supported. Use a set of IP permissions to specify a + * destination security group.
*/ - State?: string; + SourceSecurityGroupName?: string; + + /** + *Not supported. Use a set of IP permissions to specify a + * destination security group.
+ */ + SourceSecurityGroupOwnerId?: string; } -export namespace CancelImportTaskResult { +export namespace AuthorizeSecurityGroupEgressRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CancelImportTaskResult): any => ({ + export const filterSensitiveLog = (obj: AuthorizeSecurityGroupEgressRequest): any => ({ ...obj, }); } /** - *Contains the parameters for CancelReservedInstancesListing.
+ *Describes the security group that is referenced in the security group rule.
*/ -export interface CancelReservedInstancesListingRequest { +export interface ReferencedSecurityGroup { /** - *The ID of the Reserved Instance listing.
+ *The ID of the security group.
*/ - ReservedInstancesListingId: string | undefined; -} + GroupId?: string; -export namespace CancelReservedInstancesListingRequest { /** - * @internal + *The status of a VPC peering connection, if applicable.
*/ - export const filterSensitiveLog = (obj: CancelReservedInstancesListingRequest): any => ({ - ...obj, - }); -} + PeeringStatus?: string; -export type ListingState = "available" | "cancelled" | "pending" | "sold"; + /** + *The Amazon Web Services account ID.
+ */ + UserId?: string; -/** - *Describes a Reserved Instance listing state.
- */ -export interface InstanceCount { /** - *The number of listed Reserved Instances in the state specified by the state
.
The ID of the VPC.
*/ - InstanceCount?: number; + VpcId?: string; /** - *The states of the listed Reserved Instances.
+ *The ID of the VPC peering connection.
*/ - State?: ListingState | string; + VpcPeeringConnectionId?: string; } -export namespace InstanceCount { +export namespace ReferencedSecurityGroup { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceCount): any => ({ + export const filterSensitiveLog = (obj: ReferencedSecurityGroup): any => ({ ...obj, }); } -export type CurrencyCodeValues = "USD"; - /** - *Describes the price for a Reserved Instance.
+ *Describes a security group rule.
*/ -export interface PriceSchedule { - /** - *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.
- */ - Active?: boolean; - +export interface SecurityGroupRule { /** - *The currency for transacting the Reserved Instance resale.
- * At this time, the only supported currency is USD
.
The ID of the security group rule.
*/ - CurrencyCode?: CurrencyCodeValues | string; + SecurityGroupRuleId?: string; /** - *The fixed price for the term.
+ *The ID of the security group.
*/ - Price?: number; + GroupId?: string; /** - *The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.
+ *The ID of the Amazon Web Services account that owns the security group.
*/ - Term?: number; -} + GroupOwnerId?: string; -export namespace PriceSchedule { /** - * @internal + *Indicates whether the security group rule is an outbound rule.
*/ - export const filterSensitiveLog = (obj: PriceSchedule): any => ({ - ...obj, - }); -} - -export type ListingStatus = "active" | "cancelled" | "closed" | "pending"; + IsEgress?: boolean; -/** - *Describes a Reserved Instance listing.
- */ -export interface ReservedInstancesListing { /** - *A unique, case-sensitive key supplied by the client to ensure that the request is - * idempotent. For more information, see Ensuring Idempotency.
+ *The IP protocol name (tcp
, udp
, icmp
,
+ * icmpv6
) or number (see Protocol Numbers).
Use -1
to specify all protocols.
The time the listing was created.
+ *The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type. A value + * of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must + * specify all codes.
*/ - CreateDate?: Date; + FromPort?: number; /** - *The number of instances in this state.
+ *The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1
indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
The price of the Reserved Instance listing.
+ *The IPv4 CIDR range.
*/ - PriceSchedules?: PriceSchedule[]; + CidrIpv4?: string; /** - *The ID of the Reserved Instance.
+ *The IPv6 CIDR range.
*/ - ReservedInstancesId?: string; + CidrIpv6?: string; /** - *The ID of the Reserved Instance listing.
+ *The ID of the prefix list.
*/ - ReservedInstancesListingId?: string; + PrefixListId?: string; /** - *The status of the Reserved Instance listing.
+ *Describes the security group that is referenced in the rule.
*/ - Status?: ListingStatus | string; + ReferencedGroupInfo?: ReferencedSecurityGroup; /** - *The reason for the current status of the Reserved Instance listing. The response can be blank.
+ *The security group rule description.
*/ - StatusMessage?: string; + Description?: string; /** - *Any tags assigned to the resource.
+ *The tags applied to the security group rule.
*/ Tags?: Tag[]; - - /** - *The last modified timestamp of the listing.
- */ - UpdateDate?: Date; } -export namespace ReservedInstancesListing { +export namespace SecurityGroupRule { /** * @internal */ - export const filterSensitiveLog = (obj: ReservedInstancesListing): any => ({ + export const filterSensitiveLog = (obj: SecurityGroupRule): any => ({ ...obj, }); } -/** - *Contains the output of CancelReservedInstancesListing.
- */ -export interface CancelReservedInstancesListingResult { +export interface AuthorizeSecurityGroupEgressResult { /** - *The Reserved Instance listing.
+ *Returns true
if the request succeeds; otherwise, returns an error.
Information about the outbound (egress) security group rules that were added.
+ */ + SecurityGroupRules?: SecurityGroupRule[]; } -export namespace CancelReservedInstancesListingResult { +export namespace AuthorizeSecurityGroupEgressResult { /** * @internal */ - export const filterSensitiveLog = (obj: CancelReservedInstancesListingResult): any => ({ + export const filterSensitiveLog = (obj: AuthorizeSecurityGroupEgressResult): any => ({ ...obj, }); } -/** - *Contains the parameters for CancelSpotFleetRequests.
- */ -export interface CancelSpotFleetRequestsRequest { +export interface AuthorizeSecurityGroupIngressRequest { /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
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.
*/ - DryRun?: boolean; + CidrIp?: string; /** - *The IDs of the Spot Fleet requests.
+ *The start of port range for the TCP and UDP protocols, or an ICMP type number.
+ * For the ICMP type number, use -1
to specify all types. If you
+ * specify all ICMP types, you must specify all codes.
Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.
*/ - SpotFleetRequestIds: string[] | undefined; + FromPort?: number; /** - *Indicates whether to terminate instances for a Spot Fleet request if it is canceled - * successfully.
+ *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.
*/ - TerminateInstances: boolean | undefined; -} + GroupId?: string; -export namespace CancelSpotFleetRequestsRequest { /** - * @internal + *[EC2-Classic, default VPC] The name of the security group. You must specify either the + * security group ID or the security group name in the request.
*/ - export const filterSensitiveLog = (obj: CancelSpotFleetRequestsRequest): any => ({ - ...obj, - }); -} - -export enum BatchState { - ACTIVE = "active", - CANCELLED = "cancelled", - CANCELLED_RUNNING = "cancelled_running", - CANCELLED_TERMINATING_INSTANCES = "cancelled_terminating", - FAILED = "failed", - MODIFYING = "modifying", - SUBMITTED = "submitted", -} + GroupName?: string; -/** - *Describes a Spot Fleet request that was successfully canceled.
- */ -export interface CancelSpotFleetRequestsSuccessItem { /** - *The current state of the Spot Fleet request.
+ *The sets of IP permissions.
*/ - CurrentSpotFleetRequestState?: BatchState | string; + IpPermissions?: IpPermission[]; /** - *The previous state of the Spot Fleet request.
+ *The IP protocol name (tcp
, udp
, icmp
) or number
+ * (see Protocol Numbers). To specify icmpv6
, use a set of IP permissions.
[VPC only] 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.
*/ - PreviousSpotFleetRequestState?: BatchState | string; + IpProtocol?: string; /** - *The ID of the Spot Fleet request.
+ *[EC2-Classic, 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. For + * EC2-VPC, the source security group must be in the same VPC.
*/ - SpotFleetRequestId?: string; -} + SourceSecurityGroupName?: string; -export namespace CancelSpotFleetRequestsSuccessItem { /** - * @internal + *[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.
*/ - export const filterSensitiveLog = (obj: CancelSpotFleetRequestsSuccessItem): any => ({ - ...obj, - }); -} + SourceSecurityGroupOwnerId?: string; -export enum CancelBatchErrorCode { - FLEET_REQUEST_ID_DOES_NOT_EXIST = "fleetRequestIdDoesNotExist", - FLEET_REQUEST_ID_MALFORMED = "fleetRequestIdMalformed", - FLEET_REQUEST_NOT_IN_CANCELLABLE_STATE = "fleetRequestNotInCancellableState", - UNEXPECTED_ERROR = "unexpectedError", -} + /** + *The end of port range for the TCP and UDP protocols, or an ICMP code number.
+ * For the ICMP code number, use -1
to specify all codes. If you
+ * specify all ICMP types, you must specify all codes.
Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.
+ */ + ToPort?: number; -/** - *Describes a Spot Fleet error.
- */ -export interface CancelSpotFleetRequestsError { /** - *The error code.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The description for the error code.
+ *[VPC Only] The tags applied to the security group rule.
*/ - Message?: string; + TagSpecifications?: TagSpecification[]; } -export namespace CancelSpotFleetRequestsError { +export namespace AuthorizeSecurityGroupIngressRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CancelSpotFleetRequestsError): any => ({ + export const filterSensitiveLog = (obj: AuthorizeSecurityGroupIngressRequest): any => ({ ...obj, }); } -/** - *Describes a Spot Fleet request that was not successfully canceled.
- */ -export interface CancelSpotFleetRequestsErrorItem { +export interface AuthorizeSecurityGroupIngressResult { /** - *The error.
+ *Returns true
if the request succeeds; otherwise, returns an error.
The ID of the Spot Fleet request.
+ *Information about the inbound (ingress) security group rules that were added.
*/ - SpotFleetRequestId?: string; + SecurityGroupRules?: SecurityGroupRule[]; } -export namespace CancelSpotFleetRequestsErrorItem { +export namespace AuthorizeSecurityGroupIngressResult { /** * @internal */ - export const filterSensitiveLog = (obj: CancelSpotFleetRequestsErrorItem): any => ({ + export const filterSensitiveLog = (obj: AuthorizeSecurityGroupIngressResult): any => ({ ...obj, }); } /** - *Contains the output of CancelSpotFleetRequests.
+ *Describes the storage parameters for Amazon S3 and Amazon S3 buckets for an instance store-backed AMI.
*/ -export interface CancelSpotFleetRequestsResponse { +export interface S3Storage { /** - *Information about the Spot Fleet requests that are successfully canceled.
+ *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 Managing Amazon Web Services Access Keys.
*/ - SuccessfulFleetRequests?: CancelSpotFleetRequestsSuccessItem[]; + AWSAccessKeyId?: string; /** - *Information about the Spot Fleet requests that are not successfully canceled.
+ *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.
*/ - UnsuccessfulFleetRequests?: CancelSpotFleetRequestsErrorItem[]; -} + Bucket?: string; -export namespace CancelSpotFleetRequestsResponse { /** - * @internal + *The beginning of the file name of the AMI.
*/ - export const filterSensitiveLog = (obj: CancelSpotFleetRequestsResponse): any => ({ - ...obj, - }); -} + Prefix?: string; -/** - *Contains the parameters for CancelSpotInstanceRequests.
- */ -export interface CancelSpotInstanceRequestsRequest { /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your behalf.
*/ - DryRun?: boolean; + UploadPolicy?: Uint8Array; /** - *One or more Spot Instance request IDs.
+ *The signature of the JSON document.
*/ - SpotInstanceRequestIds: string[] | undefined; + UploadPolicySignature?: string; } -export namespace CancelSpotInstanceRequestsRequest { +export namespace S3Storage { /** * @internal */ - export const filterSensitiveLog = (obj: CancelSpotInstanceRequestsRequest): any => ({ + export const filterSensitiveLog = (obj: S3Storage): any => ({ ...obj, }); } -export type CancelSpotInstanceRequestState = "active" | "cancelled" | "closed" | "completed" | "open"; - /** - *Describes a request to cancel a Spot Instance.
+ *Describes the storage location for an instance store-backed AMI.
*/ -export interface CancelledSpotInstanceRequest { - /** - *The ID of the Spot Instance request.
- */ - SpotInstanceRequestId?: string; - +export interface Storage { /** - *The state of the Spot Instance request.
+ *An Amazon S3 storage location.
*/ - State?: CancelSpotInstanceRequestState | string; + S3?: S3Storage; } -export namespace CancelledSpotInstanceRequest { +export namespace Storage { /** * @internal */ - export const filterSensitiveLog = (obj: CancelledSpotInstanceRequest): any => ({ + export const filterSensitiveLog = (obj: Storage): any => ({ ...obj, }); } /** - *Contains the output of CancelSpotInstanceRequests.
+ *Contains the parameters for BundleInstance.
*/ -export interface CancelSpotInstanceRequestsResult { - /** - *One or more Spot Instance requests.
- */ - CancelledSpotInstanceRequests?: CancelledSpotInstanceRequest[]; -} - -export namespace CancelSpotInstanceRequestsResult { - /** - * @internal - */ - export const filterSensitiveLog = (obj: CancelSpotInstanceRequestsResult): any => ({ - ...obj, - }); -} - -export interface ConfirmProductInstanceRequest { +export interface BundleInstanceRequest { /** - *The ID of the instance.
+ *The ID of the instance to bundle.
+ *Type: String
+ *Default: None
+ *Required: Yes
*/ InstanceId: string | undefined; /** - *The product code. This must be a product code that you own.
+ *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.
*/ - ProductCode: string | undefined; + Storage: Storage | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
*/
DryRun?: boolean;
}
-export namespace ConfirmProductInstanceRequest {
+export namespace BundleInstanceRequest {
/**
* @internal
*/
- export const filterSensitiveLog = (obj: ConfirmProductInstanceRequest): any => ({
+ export const filterSensitiveLog = (obj: BundleInstanceRequest): any => ({
...obj,
});
}
-export interface ConfirmProductInstanceResult {
+/**
+ * Describes an error for BundleInstance.
+ */ +export interface BundleTaskError { /** - *The Amazon Web Services account ID of the instance owner. This is only present if the product code is - * attached to the instance.
+ *The error code.
*/ - OwnerId?: string; + Code?: string; /** - *The return value of the request. Returns true
if the specified product
- * code is owned by the requester and associated with the specified instance.
The error message.
*/ - Return?: boolean; + Message?: string; } -export namespace ConfirmProductInstanceResult { +export namespace BundleTaskError { /** * @internal */ - export const filterSensitiveLog = (obj: ConfirmProductInstanceResult): any => ({ + export const filterSensitiveLog = (obj: BundleTaskError): any => ({ ...obj, }); } -export interface CopyFpgaImageRequest { +export type BundleTaskState = + | "bundling" + | "cancelling" + | "complete" + | "failed" + | "pending" + | "storing" + | "waiting-for-shutdown"; + +/** + *Describes a bundle task.
+ */ +export interface BundleTask { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the bundle task.
*/ - DryRun?: boolean; + BundleId?: string; /** - *The ID of the source AFI.
+ *If the task fails, a description of the error.
*/ - SourceFpgaImageId: string | undefined; + BundleTaskError?: BundleTaskError; /** - *The description for the new AFI.
+ *The ID of the instance associated with this bundle task.
*/ - Description?: string; + InstanceId?: string; /** - *The name for the new AFI. The default is the name of the source AFI.
+ *The level of task completion, as a percent (for example, 20%).
*/ - Name?: string; + Progress?: string; /** - *The Region that contains the source AFI.
+ *The time this task started.
*/ - SourceRegion: string | undefined; + StartTime?: Date; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. - * For more information, see Ensuring idempotency.
+ *The state of the task.
*/ - ClientToken?: string; + State?: BundleTaskState | string; + + /** + *The Amazon S3 storage locations.
+ */ + Storage?: Storage; + + /** + *The time of the most recent update for the task.
+ */ + UpdateTime?: Date; } -export namespace CopyFpgaImageRequest { +export namespace BundleTask { /** * @internal */ - export const filterSensitiveLog = (obj: CopyFpgaImageRequest): any => ({ + export const filterSensitiveLog = (obj: BundleTask): any => ({ ...obj, }); } -export interface CopyFpgaImageResult { +/** + *Contains the output of BundleInstance.
+ */ +export interface BundleInstanceResult { /** - *The ID of the new AFI.
+ *Information about the bundle task.
*/ - FpgaImageId?: string; + BundleTask?: BundleTask; } -export namespace CopyFpgaImageResult { +export namespace BundleInstanceResult { /** * @internal */ - export const filterSensitiveLog = (obj: CopyFpgaImageResult): any => ({ + export const filterSensitiveLog = (obj: BundleInstanceResult): any => ({ ...obj, }); } /** - *Contains the parameters for CopyImage.
+ *Contains the parameters for CancelBundleTask.
*/ -export interface CopyImageRequest { +export interface CancelBundleTaskRequest { /** - *Unique, case-sensitive identifier you provide to ensure - * idempotency of the request. For more information, see Ensuring idempotency - * in the Amazon EC2 API Reference.
+ *The ID of the bundle task.
*/ - ClientToken?: string; + BundleId: string | undefined; /** - *A description for the new AMI in the destination Region.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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 Elastic Compute Cloud User Guide.
Contains the output of CancelBundleTask.
+ */ +export interface CancelBundleTaskResult { /** - *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.
+ *Information about the bundle task.
*/ - KmsKeyId?: string; + BundleTask?: BundleTask; +} +export namespace CancelBundleTaskResult { /** - *The name of the new AMI in the destination Region.
+ * @internal */ - Name: string | undefined; + export const filterSensitiveLog = (obj: CancelBundleTaskResult): any => ({ + ...obj, + }); +} +export interface CancelCapacityReservationRequest { /** - *The ID of the AMI to copy.
+ *The ID of the Capacity Reservation to be cancelled.
*/ - SourceImageId: string | undefined; + CapacityReservationId: string | undefined; /** - *The name of the Region that contains the AMI to copy.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
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 - * Copying AMIs from an Amazon Web Services Region to an Outpost in the - * Amazon Elastic Compute Cloud User Guide.
+ * @internal */ - DestinationOutpostArn?: string; + export const filterSensitiveLog = (obj: CancelCapacityReservationRequest): any => ({ + ...obj, + }); +} +export interface CancelCapacityReservationResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Returns true
if the request succeeds; otherwise, it returns an error.
Contains the output of CopyImage.
- */ -export interface CopyImageResult { +export interface CancelCapacityReservationFleetsRequest { /** - *The ID of the new AMI.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The IDs of the Capacity Reservation Fleets to cancel.
+ */ + CapacityReservationFleetIds: string[] | undefined; } -export namespace CopyImageResult { +export namespace CancelCapacityReservationFleetsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CopyImageResult): any => ({ + export const filterSensitiveLog = (obj: CancelCapacityReservationFleetsRequest): any => ({ ...obj, }); } -export interface CopySnapshotRequest { +/** + *Describes a Capacity Reservation Fleet cancellation error.
+ */ +export interface CancelCapacityReservationFleetError { /** - *A description for the EBS snapshot.
+ *The error code.
*/ - Description?: string; + Code?: string; /** - *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.
+ *The error message.
*/ - DestinationOutpostArn?: string; + Message?: string; +} +export namespace CancelCapacityReservationFleetError { /** - *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.
Describes a Capacity Reservation Fleet that could not be cancelled.
+ */ +export interface FailedCapacityReservationFleetCancellationResult { /** - *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.
+ *The ID of the Capacity Reservation Fleet that could not be cancelled.
*/ - Encrypted?: boolean; + CapacityReservationFleetId?: string; /** - *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.
+ *Information about the Capacity Reservation Fleet cancellation error.
*/ - KmsKeyId?: string; + CancelCapacityReservationFleetError?: CancelCapacityReservationFleetError; +} +export namespace FailedCapacityReservationFleetCancellationResult { /** - *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.
The ID of the Region that contains the snapshot to be copied.
- */ - SourceRegion: string | undefined; +export enum CapacityReservationFleetState { + ACTIVE = "active", + CANCELLED = "cancelled", + CANCELLING = "cancelling", + EXPIRED = "expired", + EXPIRING = "expiring", + FAILED = "failed", + MODIFYING = "modifying", + PARTIALLY_FULFILLED = "partially_fulfilled", + SUBMITTED = "submitted", +} +/** + *Describes a Capacity Reservation Fleet that was successfully cancelled.
+ */ +export interface CapacityReservationFleetCancellationState { /** - *The ID of the EBS snapshot to copy.
+ *The current state of the Capacity Reservation Fleet.
*/ - SourceSnapshotId: string | undefined; + CurrentFleetState?: CapacityReservationFleetState | string; /** - *The tags to apply to the new snapshot.
+ *The previous state of the Capacity Reservation Fleet.
*/ - TagSpecifications?: TagSpecification[]; + PreviousFleetState?: CapacityReservationFleetState | string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the Capacity Reservation Fleet that was successfully cancelled.
*/ - DryRun?: boolean; + CapacityReservationFleetId?: string; } -export namespace CopySnapshotRequest { +export namespace CapacityReservationFleetCancellationState { /** * @internal */ - export const filterSensitiveLog = (obj: CopySnapshotRequest): any => ({ + export const filterSensitiveLog = (obj: CapacityReservationFleetCancellationState): any => ({ ...obj, }); } -export interface CopySnapshotResult { +export interface CancelCapacityReservationFleetsResult { /** - *The ID of the new snapshot.
+ *Information about the Capacity Reservation Fleets that were successfully cancelled.
*/ - SnapshotId?: string; + SuccessfulFleetCancellations?: CapacityReservationFleetCancellationState[]; /** - *Any tags applied to the new snapshot.
+ *Information about the Capacity Reservation Fleets that could not be cancelled.
*/ - Tags?: Tag[]; + FailedFleetCancellations?: FailedCapacityReservationFleetCancellationResult[]; } -export namespace CopySnapshotResult { +export namespace CancelCapacityReservationFleetsResult { /** * @internal */ - export const filterSensitiveLog = (obj: CopySnapshotResult): any => ({ + export const filterSensitiveLog = (obj: CancelCapacityReservationFleetsResult): any => ({ ...obj, }); } -export type EndDateType = "limited" | "unlimited"; - -export type InstanceMatchCriteria = "open" | "targeted"; - -export enum CapacityReservationInstancePlatform { - LINUX_UNIX = "Linux/UNIX", - LINUX_WITH_SQL_SERVER_ENTERPRISE = "Linux with SQL Server Enterprise", - LINUX_WITH_SQL_SERVER_STANDARD = "Linux with SQL Server Standard", - LINUX_WITH_SQL_SERVER_WEB = "Linux with SQL Server Web", - RED_HAT_ENTERPRISE_LINUX = "Red Hat Enterprise Linux", - SUSE_LINUX = "SUSE Linux", - WINDOWS = "Windows", - WINDOWS_WITH_SQL_SERVER = "Windows with SQL Server", - WINDOWS_WITH_SQL_SERVER_ENTERPRISE = "Windows with SQL Server Enterprise", - WINDOWS_WITH_SQL_SERVER_STANDARD = "Windows with SQL Server Standard", - WINDOWS_WITH_SQL_SERVER_WEB = "Windows with SQL Server Web", -} - -export type CapacityReservationTenancy = "dedicated" | "default"; - -export interface CreateCapacityReservationRequest { +export interface CancelConversionRequest { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.
+ *The ID of the conversion task.
*/ - ClientToken?: string; + ConversionTaskId: string | undefined; /** - *The instance type for which to reserve capacity. For more information, see Instance types in the Amazon EC2 User Guide.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The type of operating system for which to reserve capacity.
+ *The reason for canceling the conversion task.
*/ - InstancePlatform: CapacityReservationInstancePlatform | string | undefined; + ReasonMessage?: string; +} +export namespace CancelConversionRequest { /** - *The Availability Zone in which to create the Capacity Reservation.
+ * @internal */ - AvailabilityZone?: string; + export const filterSensitiveLog = (obj: CancelConversionRequest): any => ({ + ...obj, + }); +} +export interface CancelExportTaskRequest { /** - *The ID of the Availability Zone in which to create the Capacity Reservation.
+ *The ID of the export task. This is the ID returned by CreateInstanceExportTask
.
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.
The number of instances for which to reserve capacity.
- *Valid range: 1 - 1000
+ *The reason for canceling the task.
*/ - InstanceCount: number | undefined; + CancelReason?: string; /** - *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.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Indicates whether the Capacity Reservation supports instances with temporary, block-level - * storage.
+ *The ID of the import image or import snapshot task to be canceled.
*/ - EphemeralStorage?: boolean; + ImportTaskId?: string; +} +export namespace CancelImportTaskRequest { /** - *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.
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
.
The ID of the task being canceled.
*/ - EndDateType?: EndDateType | string; + ImportTaskId?: string; /** - *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
- *
The current state of the task being canceled.
*/ - InstanceMatchCriteria?: InstanceMatchCriteria | string; + PreviousState?: string; /** - *The tags to apply to the Capacity Reservation during launch.
+ *The current state of the task being canceled.
*/ - TagSpecifications?: TagSpecification[]; + State?: string; +} +export namespace CancelImportTaskResult { /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Contains the parameters for CancelReservedInstancesListing.
+ */ +export interface CancelReservedInstancesListingRequest { /** - *The Amazon Resource Name (ARN) of the Outpost on which to create the Capacity Reservation.
+ *The ID of the Reserved Instance listing.
*/ - OutpostArn?: string; + ReservedInstancesListingId: string | undefined; } -export namespace CreateCapacityReservationRequest { +export namespace CancelReservedInstancesListingRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateCapacityReservationRequest): any => ({ + export const filterSensitiveLog = (obj: CancelReservedInstancesListingRequest): any => ({ ...obj, }); } -export type CapacityReservationState = "active" | "cancelled" | "expired" | "failed" | "pending"; +export type ListingState = "available" | "cancelled" | "pending" | "sold"; /** - *Describes a Capacity Reservation.
+ *Describes a Reserved Instance listing state.
*/ -export interface CapacityReservation { +export interface InstanceCount { /** - *The ID of the Capacity Reservation.
+ *The number of listed Reserved Instances in the state specified by the state
.
The ID of the Amazon Web Services account that owns the Capacity Reservation.
+ *The states of the listed Reserved Instances.
*/ - OwnerId?: string; + State?: ListingState | string; +} +export namespace InstanceCount { /** - *The Amazon Resource Name (ARN) of the Capacity Reservation.
+ * @internal */ - CapacityReservationArn?: string; + export const filterSensitiveLog = (obj: InstanceCount): any => ({ + ...obj, + }); +} + +export type CurrencyCodeValues = "USD"; +/** + *Describes the price for a Reserved Instance.
+ */ +export interface PriceSchedule { /** - *The Availability Zone ID of the Capacity Reservation.
+ *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.
*/ - AvailabilityZoneId?: string; + Active?: boolean; /** - *The type of instance for which the Capacity Reservation reserves capacity.
+ *The currency for transacting the Reserved Instance resale.
+ * At this time, the only supported currency is USD
.
The type of operating system for which the Capacity Reservation reserves capacity.
+ *The fixed price for the term.
*/ - InstancePlatform?: CapacityReservationInstancePlatform | string; + Price?: number; /** - *The Availability Zone in which the capacity is reserved.
+ *The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.
*/ - AvailabilityZone?: string; + Term?: number; +} +export namespace PriceSchedule { /** - *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.
Describes a Reserved Instance listing.
+ */ +export interface ReservedInstancesListing { /** - *The total number of instances for which the Capacity Reservation reserves capacity.
+ *A unique, case-sensitive key supplied by the client to ensure that the request is + * idempotent. For more information, see Ensuring Idempotency.
*/ - TotalInstanceCount?: number; + ClientToken?: string; /** - *The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.
+ *The time the listing was created.
*/ - AvailableInstanceCount?: number; + CreateDate?: Date; /** - *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.
+ *The number of instances in this state.
*/ - EbsOptimized?: boolean; + InstanceCounts?: InstanceCount[]; /** - *Indicates whether the Capacity Reservation supports instances with temporary, block-level - * storage.
+ *The price of the Reserved Instance listing.
*/ - EphemeralStorage?: boolean; + PriceSchedules?: PriceSchedule[]; /** - *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.
The ID of the Reserved Instance.
*/ - State?: CapacityReservationState | string; + ReservedInstancesId?: string; /** - *The date and time at which the Capacity Reservation was started.
+ *The ID of the Reserved Instance listing.
*/ - StartDate?: Date; + ReservedInstancesListingId?: string; /** - *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 status of the Reserved Instance listing.
*/ - EndDate?: Date; + Status?: ListingStatus | string; /** - *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.
The reason for the current status of the Reserved Instance listing. The response can be blank.
*/ - EndDateType?: EndDateType | string; + StatusMessage?: string; /** - *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.
Any tags assigned to the resource.
*/ - InstanceMatchCriteria?: InstanceMatchCriteria | string; + Tags?: Tag[]; /** - *The date and time at which the Capacity Reservation was created.
+ *The last modified timestamp of the listing.
*/ - CreateDate?: Date; + UpdateDate?: Date; +} +export namespace ReservedInstancesListing { /** - *Any tags assigned to the Capacity Reservation.
+ * @internal */ - Tags?: Tag[]; + export const filterSensitiveLog = (obj: ReservedInstancesListing): any => ({ + ...obj, + }); +} +/** + *Contains the output of CancelReservedInstancesListing.
+ */ +export interface CancelReservedInstancesListingResult { /** - *The Amazon Resource Name (ARN) of the Outpost on which the Capacity - * Reservation was created.
+ *The Reserved Instance listing.
*/ - OutpostArn?: string; + ReservedInstancesListings?: ReservedInstancesListing[]; +} +export namespace CancelReservedInstancesListingResult { /** - *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.
+ * @internal */ - CapacityReservationFleetId?: string; + export const filterSensitiveLog = (obj: CancelReservedInstancesListingResult): any => ({ + ...obj, + }); } -export namespace CapacityReservation { +/** + *Contains the parameters for CancelSpotFleetRequests.
+ */ +export interface CancelSpotFleetRequestsRequest { + /** + *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The IDs of the Spot Fleet requests.
+ */ + SpotFleetRequestIds: string[] | undefined; + + /** + *Indicates whether to terminate instances for a Spot Fleet request if it is canceled + * successfully.
+ */ + TerminateInstances: boolean | undefined; +} + +export namespace CancelSpotFleetRequestsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CapacityReservation): any => ({ + export const filterSensitiveLog = (obj: CancelSpotFleetRequestsRequest): any => ({ ...obj, }); } -export interface CreateCapacityReservationResult { +export enum BatchState { + ACTIVE = "active", + CANCELLED = "cancelled", + CANCELLED_RUNNING = "cancelled_running", + CANCELLED_TERMINATING_INSTANCES = "cancelled_terminating", + FAILED = "failed", + MODIFYING = "modifying", + SUBMITTED = "submitted", +} + +/** + *Describes a Spot Fleet request that was successfully canceled.
+ */ +export interface CancelSpotFleetRequestsSuccessItem { /** - *Information about the Capacity Reservation.
+ *The current state of the Spot Fleet request.
*/ - CapacityReservation?: CapacityReservation; + CurrentSpotFleetRequestState?: BatchState | string; + + /** + *The previous state of the Spot Fleet request.
+ */ + PreviousSpotFleetRequestState?: BatchState | string; + + /** + *The ID of the Spot Fleet request.
+ */ + SpotFleetRequestId?: string; } -export namespace CreateCapacityReservationResult { +export namespace CancelSpotFleetRequestsSuccessItem { /** * @internal */ - export const filterSensitiveLog = (obj: CreateCapacityReservationResult): any => ({ + export const filterSensitiveLog = (obj: CancelSpotFleetRequestsSuccessItem): any => ({ ...obj, }); } -export enum FleetInstanceMatchCriteria { - open = "open", +export enum CancelBatchErrorCode { + FLEET_REQUEST_ID_DOES_NOT_EXIST = "fleetRequestIdDoesNotExist", + FLEET_REQUEST_ID_MALFORMED = "fleetRequestIdMalformed", + FLEET_REQUEST_NOT_IN_CANCELLABLE_STATE = "fleetRequestNotInCancellableState", + UNEXPECTED_ERROR = "unexpectedError", } -export type _InstanceType = - | "a1.2xlarge" - | "a1.4xlarge" - | "a1.large" - | "a1.medium" - | "a1.metal" - | "a1.xlarge" - | "c1.medium" - | "c1.xlarge" - | "c3.2xlarge" - | "c3.4xlarge" - | "c3.8xlarge" - | "c3.large" - | "c3.xlarge" - | "c4.2xlarge" - | "c4.4xlarge" - | "c4.8xlarge" - | "c4.large" - | "c4.xlarge" - | "c5.12xlarge" - | "c5.18xlarge" - | "c5.24xlarge" - | "c5.2xlarge" - | "c5.4xlarge" - | "c5.9xlarge" - | "c5.large" - | "c5.metal" - | "c5.xlarge" - | "c5a.12xlarge" - | "c5a.16xlarge" - | "c5a.24xlarge" - | "c5a.2xlarge" - | "c5a.4xlarge" - | "c5a.8xlarge" - | "c5a.large" - | "c5a.xlarge" - | "c5ad.12xlarge" - | "c5ad.16xlarge" - | "c5ad.24xlarge" - | "c5ad.2xlarge" - | "c5ad.4xlarge" - | "c5ad.8xlarge" - | "c5ad.large" - | "c5ad.xlarge" - | "c5d.12xlarge" - | "c5d.18xlarge" - | "c5d.24xlarge" - | "c5d.2xlarge" - | "c5d.4xlarge" - | "c5d.9xlarge" - | "c5d.large" - | "c5d.metal" - | "c5d.xlarge" - | "c5n.18xlarge" - | "c5n.2xlarge" - | "c5n.4xlarge" - | "c5n.9xlarge" - | "c5n.large" - | "c5n.metal" - | "c5n.xlarge" - | "c6g.12xlarge" - | "c6g.16xlarge" - | "c6g.2xlarge" - | "c6g.4xlarge" - | "c6g.8xlarge" - | "c6g.large" - | "c6g.medium" - | "c6g.metal" - | "c6g.xlarge" - | "c6gd.12xlarge" - | "c6gd.16xlarge" - | "c6gd.2xlarge" - | "c6gd.4xlarge" - | "c6gd.8xlarge" - | "c6gd.large" - | "c6gd.medium" - | "c6gd.metal" - | "c6gd.xlarge" - | "c6gn.12xlarge" - | "c6gn.16xlarge" - | "c6gn.2xlarge" - | "c6gn.4xlarge" - | "c6gn.8xlarge" - | "c6gn.large" - | "c6gn.medium" - | "c6gn.xlarge" - | "c6i.12xlarge" - | "c6i.16xlarge" - | "c6i.24xlarge" - | "c6i.2xlarge" - | "c6i.32xlarge" - | "c6i.4xlarge" - | "c6i.8xlarge" - | "c6i.large" - | "c6i.xlarge" - | "cc1.4xlarge" - | "cc2.8xlarge" - | "cg1.4xlarge" - | "cr1.8xlarge" - | "d2.2xlarge" - | "d2.4xlarge" - | "d2.8xlarge" - | "d2.xlarge" - | "d3.2xlarge" - | "d3.4xlarge" - | "d3.8xlarge" - | "d3.xlarge" - | "d3en.12xlarge" - | "d3en.2xlarge" - | "d3en.4xlarge" - | "d3en.6xlarge" - | "d3en.8xlarge" - | "d3en.xlarge" - | "dl1.24xlarge" - | "f1.16xlarge" - | "f1.2xlarge" - | "f1.4xlarge" - | "g2.2xlarge" - | "g2.8xlarge" - | "g3.16xlarge" - | "g3.4xlarge" - | "g3.8xlarge" - | "g3s.xlarge" - | "g4ad.16xlarge" - | "g4ad.2xlarge" - | "g4ad.4xlarge" - | "g4ad.8xlarge" - | "g4ad.xlarge" - | "g4dn.12xlarge" - | "g4dn.16xlarge" - | "g4dn.2xlarge" - | "g4dn.4xlarge" - | "g4dn.8xlarge" - | "g4dn.metal" - | "g4dn.xlarge" - | "g5.12xlarge" - | "g5.16xlarge" - | "g5.24xlarge" - | "g5.2xlarge" - | "g5.48xlarge" - | "g5.4xlarge" - | "g5.8xlarge" - | "g5.xlarge" - | "g5g.16xlarge" - | "g5g.2xlarge" - | "g5g.4xlarge" - | "g5g.8xlarge" - | "g5g.metal" - | "g5g.xlarge" - | "h1.16xlarge" - | "h1.2xlarge" - | "h1.4xlarge" - | "h1.8xlarge" - | "hi1.4xlarge" - | "hs1.8xlarge" - | "i2.2xlarge" - | "i2.4xlarge" - | "i2.8xlarge" - | "i2.xlarge" - | "i3.16xlarge" - | "i3.2xlarge" - | "i3.4xlarge" - | "i3.8xlarge" - | "i3.large" - | "i3.metal" - | "i3.xlarge" - | "i3en.12xlarge" - | "i3en.24xlarge" - | "i3en.2xlarge" - | "i3en.3xlarge" - | "i3en.6xlarge" - | "i3en.large" - | "i3en.metal" - | "i3en.xlarge" - | "im4gn.16xlarge" - | "im4gn.2xlarge" - | "im4gn.4xlarge" - | "im4gn.8xlarge" - | "im4gn.large" - | "im4gn.xlarge" - | "inf1.24xlarge" - | "inf1.2xlarge" - | "inf1.6xlarge" - | "inf1.xlarge" - | "is4gen.2xlarge" - | "is4gen.4xlarge" - | "is4gen.8xlarge" - | "is4gen.large" - | "is4gen.medium" - | "is4gen.xlarge" - | "m1.large" - | "m1.medium" - | "m1.small" - | "m1.xlarge" - | "m2.2xlarge" - | "m2.4xlarge" - | "m2.xlarge" - | "m3.2xlarge" - | "m3.large" - | "m3.medium" - | "m3.xlarge" - | "m4.10xlarge" - | "m4.16xlarge" - | "m4.2xlarge" - | "m4.4xlarge" - | "m4.large" - | "m4.xlarge" - | "m5.12xlarge" - | "m5.16xlarge" - | "m5.24xlarge" - | "m5.2xlarge" - | "m5.4xlarge" - | "m5.8xlarge" - | "m5.large" - | "m5.metal" - | "m5.xlarge" - | "m5a.12xlarge" - | "m5a.16xlarge" - | "m5a.24xlarge" - | "m5a.2xlarge" - | "m5a.4xlarge" - | "m5a.8xlarge" - | "m5a.large" - | "m5a.xlarge" - | "m5ad.12xlarge" - | "m5ad.16xlarge" - | "m5ad.24xlarge" - | "m5ad.2xlarge" - | "m5ad.4xlarge" - | "m5ad.8xlarge" - | "m5ad.large" - | "m5ad.xlarge" - | "m5d.12xlarge" - | "m5d.16xlarge" - | "m5d.24xlarge" - | "m5d.2xlarge" - | "m5d.4xlarge" - | "m5d.8xlarge" - | "m5d.large" - | "m5d.metal" - | "m5d.xlarge" - | "m5dn.12xlarge" - | "m5dn.16xlarge" - | "m5dn.24xlarge" - | "m5dn.2xlarge" - | "m5dn.4xlarge" - | "m5dn.8xlarge" - | "m5dn.large" - | "m5dn.metal" - | "m5dn.xlarge" - | "m5n.12xlarge" - | "m5n.16xlarge" - | "m5n.24xlarge" - | "m5n.2xlarge" - | "m5n.4xlarge" - | "m5n.8xlarge" - | "m5n.large" - | "m5n.metal" - | "m5n.xlarge" - | "m5zn.12xlarge" - | "m5zn.2xlarge" - | "m5zn.3xlarge" - | "m5zn.6xlarge" - | "m5zn.large" - | "m5zn.metal" - | "m5zn.xlarge" - | "m6a.12xlarge" - | "m6a.16xlarge" - | "m6a.24xlarge" - | "m6a.2xlarge" - | "m6a.32xlarge" - | "m6a.48xlarge" - | "m6a.4xlarge" - | "m6a.8xlarge" - | "m6a.large" - | "m6a.xlarge" - | "m6g.12xlarge" - | "m6g.16xlarge" - | "m6g.2xlarge" - | "m6g.4xlarge" - | "m6g.8xlarge" - | "m6g.large" - | "m6g.medium" - | "m6g.metal" - | "m6g.xlarge" - | "m6gd.12xlarge" - | "m6gd.16xlarge" - | "m6gd.2xlarge" - | "m6gd.4xlarge" - | "m6gd.8xlarge" - | "m6gd.large" - | "m6gd.medium" - | "m6gd.metal" - | "m6gd.xlarge" - | "m6i.12xlarge" - | "m6i.16xlarge" - | "m6i.24xlarge" - | "m6i.2xlarge" - | "m6i.32xlarge" - | "m6i.4xlarge" - | "m6i.8xlarge" - | "m6i.large" - | "m6i.xlarge" - | "mac1.metal" - | "p2.16xlarge" - | "p2.8xlarge" - | "p2.xlarge" - | "p3.16xlarge" - | "p3.2xlarge" - | "p3.8xlarge" - | "p3dn.24xlarge" - | "p4d.24xlarge" - | "r3.2xlarge" - | "r3.4xlarge" - | "r3.8xlarge" - | "r3.large" - | "r3.xlarge" - | "r4.16xlarge" - | "r4.2xlarge" - | "r4.4xlarge" - | "r4.8xlarge" - | "r4.large" - | "r4.xlarge" - | "r5.12xlarge" - | "r5.16xlarge" - | "r5.24xlarge" - | "r5.2xlarge" - | "r5.4xlarge" - | "r5.8xlarge" - | "r5.large" - | "r5.metal" - | "r5.xlarge" - | "r5a.12xlarge" - | "r5a.16xlarge" - | "r5a.24xlarge" - | "r5a.2xlarge" - | "r5a.4xlarge" - | "r5a.8xlarge" - | "r5a.large" - | "r5a.xlarge" - | "r5ad.12xlarge" - | "r5ad.16xlarge" - | "r5ad.24xlarge" - | "r5ad.2xlarge" - | "r5ad.4xlarge" - | "r5ad.8xlarge" - | "r5ad.large" - | "r5ad.xlarge" - | "r5b.12xlarge" - | "r5b.16xlarge" - | "r5b.24xlarge" - | "r5b.2xlarge" - | "r5b.4xlarge" - | "r5b.8xlarge" - | "r5b.large" - | "r5b.metal" - | "r5b.xlarge" - | "r5d.12xlarge" - | "r5d.16xlarge" - | "r5d.24xlarge" - | "r5d.2xlarge" - | "r5d.4xlarge" - | "r5d.8xlarge" - | "r5d.large" - | "r5d.metal" - | "r5d.xlarge" - | "r5dn.12xlarge" - | "r5dn.16xlarge" - | "r5dn.24xlarge" - | "r5dn.2xlarge" - | "r5dn.4xlarge" - | "r5dn.8xlarge" - | "r5dn.large" - | "r5dn.metal" - | "r5dn.xlarge" - | "r5n.12xlarge" - | "r5n.16xlarge" - | "r5n.24xlarge" - | "r5n.2xlarge" - | "r5n.4xlarge" - | "r5n.8xlarge" - | "r5n.large" - | "r5n.metal" - | "r5n.xlarge" - | "r6g.12xlarge" - | "r6g.16xlarge" - | "r6g.2xlarge" - | "r6g.4xlarge" - | "r6g.8xlarge" - | "r6g.large" - | "r6g.medium" - | "r6g.metal" - | "r6g.xlarge" - | "r6gd.12xlarge" - | "r6gd.16xlarge" - | "r6gd.2xlarge" - | "r6gd.4xlarge" - | "r6gd.8xlarge" - | "r6gd.large" - | "r6gd.medium" - | "r6gd.metal" - | "r6gd.xlarge" - | "t1.micro" - | "t2.2xlarge" - | "t2.large" - | "t2.medium" - | "t2.micro" - | "t2.nano" - | "t2.small" - | "t2.xlarge" - | "t3.2xlarge" - | "t3.large" - | "t3.medium" - | "t3.micro" - | "t3.nano" - | "t3.small" - | "t3.xlarge" - | "t3a.2xlarge" - | "t3a.large" - | "t3a.medium" - | "t3a.micro" - | "t3a.nano" - | "t3a.small" - | "t3a.xlarge" - | "t4g.2xlarge" - | "t4g.large" - | "t4g.medium" - | "t4g.micro" - | "t4g.nano" - | "t4g.small" - | "t4g.xlarge" - | "u-12tb1.112xlarge" - | "u-12tb1.metal" - | "u-18tb1.metal" - | "u-24tb1.metal" - | "u-6tb1.112xlarge" - | "u-6tb1.56xlarge" - | "u-6tb1.metal" - | "u-9tb1.112xlarge" - | "u-9tb1.metal" - | "vt1.24xlarge" - | "vt1.3xlarge" - | "vt1.6xlarge" - | "x1.16xlarge" - | "x1.32xlarge" - | "x1e.16xlarge" - | "x1e.2xlarge" - | "x1e.32xlarge" - | "x1e.4xlarge" - | "x1e.8xlarge" - | "x1e.xlarge" - | "x2gd.12xlarge" - | "x2gd.16xlarge" - | "x2gd.2xlarge" - | "x2gd.4xlarge" - | "x2gd.8xlarge" - | "x2gd.large" - | "x2gd.medium" - | "x2gd.metal" - | "x2gd.xlarge" - | "z1d.12xlarge" - | "z1d.2xlarge" - | "z1d.3xlarge" - | "z1d.6xlarge" - | "z1d.large" - | "z1d.metal" - | "z1d.xlarge"; +/** + *Describes a Spot Fleet error.
+ */ +export interface CancelSpotFleetRequestsError { + /** + *The error code.
+ */ + Code?: CancelBatchErrorCode | string; + + /** + *The description for the error code.
+ */ + Message?: string; +} + +export namespace CancelSpotFleetRequestsError { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CancelSpotFleetRequestsError): any => ({ + ...obj, + }); +} /** - *Information about an instance type to use in a Capacity Reservation Fleet.
+ *Describes a Spot Fleet request that was not successfully canceled.
*/ -export interface ReservationFleetInstanceSpecification { +export interface CancelSpotFleetRequestsErrorItem { /** - *The instance type for which the Capacity Reservation Fleet reserves capacity.
+ *The error.
*/ - InstanceType?: _InstanceType | string; + Error?: CancelSpotFleetRequestsError; /** - *The type of operating system for which the Capacity Reservation Fleet reserves capacity.
+ *The ID of the Spot Fleet request.
*/ - InstancePlatform?: CapacityReservationInstancePlatform | string; + SpotFleetRequestId?: string; +} +export namespace CancelSpotFleetRequestsErrorItem { /** - *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.
+ * @internal */ - Weight?: number; + export const filterSensitiveLog = (obj: CancelSpotFleetRequestsErrorItem): any => ({ + ...obj, + }); +} +/** + *Contains the output of CancelSpotFleetRequests.
+ */ +export interface CancelSpotFleetRequestsResponse { /** - *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.
+ *Information about the Spot Fleet requests that are successfully canceled.
*/ - AvailabilityZone?: string; + SuccessfulFleetRequests?: CancelSpotFleetRequestsSuccessItem[]; /** - *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.
+ *Information about the Spot Fleet requests that are not successfully canceled.
*/ - AvailabilityZoneId?: string; + UnsuccessfulFleetRequests?: CancelSpotFleetRequestsErrorItem[]; +} +export namespace CancelSpotFleetRequestsResponse { /** - *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.
+ * @internal */ - EbsOptimized?: boolean; + export const filterSensitiveLog = (obj: CancelSpotFleetRequestsResponse): any => ({ + ...obj, + }); +} +/** + *Contains the parameters for CancelSpotInstanceRequests.
+ */ +export interface CancelSpotInstanceRequestsRequest { /** - *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.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
One or more Spot Instance request IDs.
+ */ + SpotInstanceRequestIds: string[] | undefined; } -export namespace ReservationFleetInstanceSpecification { +export namespace CancelSpotInstanceRequestsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ReservationFleetInstanceSpecification): any => ({ + export const filterSensitiveLog = (obj: CancelSpotInstanceRequestsRequest): any => ({ ...obj, }); } -export enum FleetCapacityReservationTenancy { - default = "default", +export type CancelSpotInstanceRequestState = "active" | "cancelled" | "closed" | "completed" | "open"; + +/** + *Describes a request to cancel a Spot Instance.
+ */ +export interface CancelledSpotInstanceRequest { + /** + *The ID of the Spot Instance request.
+ */ + SpotInstanceRequestId?: string; + + /** + *The state of the Spot Instance request.
+ */ + State?: CancelSpotInstanceRequestState | string; } -export interface CreateCapacityReservationFleetRequest { +export namespace CancelledSpotInstanceRequest { /** - *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
- *
Contains the output of CancelSpotInstanceRequests.
+ */ +export interface CancelSpotInstanceRequestsResult { + /** + *One or more Spot Instance requests.
+ */ + CancelledSpotInstanceRequests?: CancelledSpotInstanceRequest[]; +} + +export namespace CancelSpotInstanceRequestsResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CancelSpotInstanceRequestsResult): any => ({ + ...obj, + }); +} + +export interface ConfirmProductInstanceRequest { + /** + *The ID of the instance.
+ */ + InstanceId: string | undefined; + + /** + *The product code. This must be a product code that you own.
+ */ + ProductCode: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The Amazon Web Services account ID of the instance owner. This is only present if the product code is + * attached to the instance.
+ */ + OwnerId?: string; + + /** + *The return value of the request. Returns true
if the specified product
+ * code is owned by the requester and associated with the specified instance.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the source AFI.
+ */ + SourceFpgaImageId: string | undefined; + + /** + *The description for the new AFI.
+ */ + Description?: string; + + /** + *The name for the new AFI. The default is the name of the source AFI.
+ */ + Name?: string; + + /** + *The Region that contains the source AFI.
+ */ + SourceRegion: string | undefined; + + /** + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. + * For more information, see Ensuring idempotency.
+ */ + ClientToken?: string; +} + +export namespace CopyFpgaImageRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CopyFpgaImageRequest): any => ({ + ...obj, + }); +} + +export interface CopyFpgaImageResult { + /** + *The ID of the new AFI.
+ */ + FpgaImageId?: string; +} + +export namespace CopyFpgaImageResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CopyFpgaImageResult): any => ({ + ...obj, + }); +} + +/** + *Contains the parameters for CopyImage.
+ */ +export interface CopyImageRequest { + /** + *Unique, case-sensitive identifier you provide to ensure + * idempotency of the request. For more information, see Ensuring idempotency + * in the Amazon EC2 API Reference.
*/ - AllocationStrategy?: string; + ClientToken?: string; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.
+ *A description for the new AMI in the destination Region.
*/ - ClientToken?: string; + Description?: string; /** - *Information about the instance types for which to reserve the capacity.
+ *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 Elastic Compute Cloud User Guide.
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:
- *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:
+ *
- * default
- The Capacity Reservation Fleet is created on hardware
- * that is shared with other Amazon Web Services accounts.
Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab.
+ * *
- * dedicated
- The Capacity Reservations are created on single-tenant
- * hardware that is dedicated to a single Amazon Web Services account.
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.
*/ - Tenancy?: FleetCapacityReservationTenancy | string; + KmsKeyId?: string; /** - *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.
+ *The name of the new AMI in the destination Region.
*/ - TotalTargetCapacity: number | undefined; + Name: string | undefined; /** - *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
.
- *
The ID of the AMI to copy.
*/ - EndDate?: Date; + SourceImageId: string | undefined; /** - *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.
The name of the Region that contains the AMI to copy.
*/ - InstanceMatchCriteria?: FleetInstanceMatchCriteria | string; + SourceRegion: string | undefined; /** - *The tags to assign to the Capacity Reservation Fleet. The tags are automatically assigned - * to the Capacity Reservations in the Fleet.
+ *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 + * Copying AMIs from an Amazon Web Services Region to an Outpost in the + * Amazon Elastic Compute Cloud User Guide.
*/ - TagSpecifications?: TagSpecification[]; + DestinationOutpostArn?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about a Capacity Reservation in a Capacity Reservation Fleet.
+ *Contains the output of CopyImage.
*/ -export interface FleetCapacityReservation { +export interface CopyImageResult { /** - *The ID of the Capacity Reservation.
+ *The ID of the new AMI.
*/ - CapacityReservationId?: string; + ImageId?: string; +} +export namespace CopyImageResult { /** - *The ID of the Availability Zone in which the Capacity Reservation reserves capacity.
+ * @internal */ - AvailabilityZoneId?: string; + export const filterSensitiveLog = (obj: CopyImageResult): any => ({ + ...obj, + }); +} +export interface CopySnapshotRequest { /** - *The instance type for which the Capacity Reservation reserves capacity.
+ *A description for the EBS snapshot.
*/ - InstanceType?: _InstanceType | string; + Description?: string; /** - *The type of operating system for which the Capacity Reservation reserves capacity.
+ *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.
*/ - InstancePlatform?: CapacityReservationInstancePlatform | string; + DestinationOutpostArn?: string; /** - *The Availability Zone in which the Capacity Reservation reserves capacity.
+ *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.
The total number of instances for which the Capacity Reservation reserves capacity.
+ *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.
*/ - TotalInstanceCount?: number; + Encrypted?: boolean; /** - *The number of capacity units fulfilled by the Capacity Reservation. For more information, see - * - * Total target capacity in the Amazon EC2 User Guide.
+ *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.
*/ - FulfilledCapacity?: number; + KmsKeyId?: string; /** - *Indicates whether the Capacity Reservation reserves capacity for EBS-optimized instance types.
+ *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.
The date and time at which the Capacity Reservation was created.
+ *The ID of the Region that contains the snapshot to be copied.
*/ - CreateDate?: Date; + SourceRegion: string | undefined; /** - *The weight of the instance type in the Capacity Reservation Fleet. For more information, - * see - * Instance type weight in the Amazon EC2 User Guide.
+ *The ID of the EBS snapshot to copy.
*/ - Weight?: number; + SourceSnapshotId: string | undefined; /** - *The priority of the instance type in the Capacity Reservation Fleet. For more information, - * see - * Instance type priority in the Amazon EC2 User Guide.
+ *The tags to apply to the new snapshot.
*/ - Priority?: number; + TagSpecifications?: TagSpecification[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the new snapshot.
+ */ + SnapshotId?: string; + + /** + *Any tags applied to the new snapshot.
+ */ + Tags?: Tag[]; +} + +export namespace CopySnapshotResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CopySnapshotResult): any => ({ ...obj, }); } -export interface CreateCapacityReservationFleetResult { - /** - *The ID of the Capacity Reservation Fleet.
- */ - CapacityReservationFleetId?: string; +export type EndDateType = "limited" | "unlimited"; + +export type InstanceMatchCriteria = "open" | "targeted"; + +export enum CapacityReservationInstancePlatform { + LINUX_UNIX = "Linux/UNIX", + LINUX_WITH_SQL_SERVER_ENTERPRISE = "Linux with SQL Server Enterprise", + LINUX_WITH_SQL_SERVER_STANDARD = "Linux with SQL Server Standard", + LINUX_WITH_SQL_SERVER_WEB = "Linux with SQL Server Web", + RED_HAT_ENTERPRISE_LINUX = "Red Hat Enterprise Linux", + SUSE_LINUX = "SUSE Linux", + WINDOWS = "Windows", + WINDOWS_WITH_SQL_SERVER = "Windows with SQL Server", + WINDOWS_WITH_SQL_SERVER_ENTERPRISE = "Windows with SQL Server Enterprise", + WINDOWS_WITH_SQL_SERVER_STANDARD = "Windows with SQL Server Standard", + WINDOWS_WITH_SQL_SERVER_WEB = "Windows with SQL Server Web", +} + +export type CapacityReservationTenancy = "dedicated" | "default"; +export interface CreateCapacityReservationRequest { /** - *The status of the Capacity Reservation Fleet.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.
*/ - State?: CapacityReservationFleetState | string; + ClientToken?: string; /** - *The total number of capacity units for which the Capacity Reservation Fleet reserves capacity.
+ *The instance type for which to reserve capacity. For more information, see Instance types in the Amazon EC2 User Guide.
*/ - TotalTargetCapacity?: number; + InstanceType: string | undefined; /** - *The requested capacity units that have been successfully reserved.
+ *The type of operating system for which to reserve capacity.
*/ - TotalFulfilledCapacity?: number; + InstancePlatform: CapacityReservationInstancePlatform | string | undefined; /** - *The instance matching criteria for the Capacity Reservation Fleet.
+ *The Availability Zone in which to create the Capacity Reservation.
*/ - InstanceMatchCriteria?: FleetInstanceMatchCriteria | string; + AvailabilityZone?: string; /** - *The allocation strategy used by the Capacity Reservation Fleet.
+ *The ID of the Availability Zone in which to create the Capacity Reservation.
*/ - AllocationStrategy?: string; + AvailabilityZoneId?: string; /** - *The date and time at which the Capacity Reservation Fleet was created.
+ *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.
The date and time at which the Capacity Reservation Fleet expires.
+ *The number of instances for which to reserve capacity.
+ *Valid range: 1 - 1000
*/ - EndDate?: Date; + InstanceCount: number | undefined; /** - *Indicates the tenancy of Capacity Reservation Fleet.
+ *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.
*/ - Tenancy?: FleetCapacityReservationTenancy | string; + EbsOptimized?: boolean; /** - *Information about the individual Capacity Reservations in the Capacity Reservation Fleet.
+ *Indicates whether the Capacity Reservation supports instances with temporary, block-level + * storage.
*/ - FleetCapacityReservations?: FleetCapacityReservation[]; + EphemeralStorage?: boolean; /** - *The tags assigned to the Capacity Reservation Fleet.
+ *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.
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
.
The ID of the VPC to associate with the carrier gateway.
+ *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
+ *
The tags to associate with the carrier gateway.
+ *The tags to apply to the Capacity Reservation during launch.
*/ TagSpecifications?: TagSpecification[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. For more information, see How to ensure - * idempotency.
+ *The Amazon Resource Name (ARN) of the Outpost on which to create the Capacity Reservation.
*/ - ClientToken?: string; + OutpostArn?: string; } -export namespace CreateCarrierGatewayRequest { +export namespace CreateCapacityReservationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateCarrierGatewayRequest): any => ({ + export const filterSensitiveLog = (obj: CreateCapacityReservationRequest): any => ({ ...obj, }); } -export type CarrierGatewayState = "available" | "deleted" | "deleting" | "pending"; +export type CapacityReservationState = "active" | "cancelled" | "expired" | "failed" | "pending"; /** - *Describes a carrier gateway.
+ *Describes a Capacity Reservation.
*/ -export interface CarrierGateway { +export interface CapacityReservation { /** - *The ID of the carrier gateway.
+ *The ID of the Capacity Reservation.
*/ - CarrierGatewayId?: string; + CapacityReservationId?: string; /** - *The ID of the VPC associated with the carrier gateway.
+ *The ID of the Amazon Web Services account that owns the Capacity Reservation.
*/ - VpcId?: string; + OwnerId?: string; /** - *The state of the carrier gateway.
+ *The Amazon Resource Name (ARN) of the Capacity Reservation.
*/ - State?: CarrierGatewayState | string; + CapacityReservationArn?: string; /** - *The Amazon Web Services account ID of the owner of the carrier gateway.
+ *The Availability Zone ID of the Capacity Reservation.
*/ - OwnerId?: string; + AvailabilityZoneId?: string; /** - *The tags assigned to the carrier gateway.
+ *The type of instance for which the Capacity Reservation reserves capacity.
*/ - Tags?: Tag[]; -} + InstanceType?: string; -export namespace CarrierGateway { /** - * @internal + *The type of operating system for which the Capacity Reservation reserves capacity.
*/ - export const filterSensitiveLog = (obj: CarrierGateway): any => ({ - ...obj, - }); -} + InstancePlatform?: CapacityReservationInstancePlatform | string; -export interface CreateCarrierGatewayResult { /** - *Information about the carrier gateway.
+ *The Availability Zone in which the capacity is reserved.
*/ - CarrierGateway?: CarrierGateway; -} + AvailabilityZone?: string; -export namespace CreateCarrierGatewayResult { /** - * @internal + *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.
Describes the Active Directory to be used for client authentication.
- */ -export interface DirectoryServiceAuthenticationRequest { /** - *The ID of the Active Directory to be used for authentication.
+ *The total number of instances for which the Capacity Reservation reserves capacity.
*/ - DirectoryId?: string; -} + TotalInstanceCount?: number; -export namespace DirectoryServiceAuthenticationRequest { /** - * @internal + *The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.
*/ - export const filterSensitiveLog = (obj: DirectoryServiceAuthenticationRequest): any => ({ - ...obj, - }); -} + AvailableInstanceCount?: number; -/** - *The IAM SAML identity provider used for federated authentication.
- */ -export interface FederatedAuthenticationRequest { /** - *The Amazon Resource Name (ARN) of the IAM SAML identity provider.
+ *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.
*/ - SAMLProviderArn?: string; + EbsOptimized?: boolean; /** - *The Amazon Resource Name (ARN) of the IAM SAML identity provider for the self-service portal.
+ *Indicates whether the Capacity Reservation supports instances with temporary, block-level + * storage.
*/ - SelfServiceSAMLProviderArn?: string; -} + EphemeralStorage?: boolean; + + /** + *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.
The date and time at which the Capacity Reservation was started.
*/ - export const filterSensitiveLog = (obj: FederatedAuthenticationRequest): any => ({ - ...obj, - }); -} + StartDate?: Date; -/** - *Information about the client certificate to be used for authentication.
- */ -export interface CertificateAuthenticationRequest { /** - *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).
+ *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.
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.
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.
Describes the authentication method to be used by a Client VPN endpoint. For more information, see Authentication - * in the Client VPN Administrator Guide.
- */ -export interface ClientVpnAuthenticationRequest { /** - *The type of client authentication to be used.
+ *The date and time at which the Capacity Reservation was created.
*/ - Type?: ClientVpnAuthenticationType | string; + CreateDate?: Date; /** - *Information about the Active Directory to be used, if applicable. You must provide this information if Type is directory-service-authentication
.
Any tags assigned to the Capacity Reservation.
*/ - ActiveDirectory?: DirectoryServiceAuthenticationRequest; + Tags?: Tag[]; /** - *Information about the authentication certificates to be used, if applicable. You must provide this information if Type is certificate-authentication
.
The Amazon Resource Name (ARN) of the Outpost on which the Capacity + * Reservation was created.
*/ - MutualAuthentication?: CertificateAuthenticationRequest; + OutpostArn?: string; /** - *Information about the IAM SAML identity provider to be used, if applicable. You must provide this information if Type is federated-authentication
.
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.
*/ - FederatedAuthentication?: FederatedAuthenticationRequest; + CapacityReservationFleetId?: string; } -export namespace ClientVpnAuthenticationRequest { +export namespace CapacityReservation { /** * @internal */ - export const filterSensitiveLog = (obj: ClientVpnAuthenticationRequest): any => ({ + export const filterSensitiveLog = (obj: CapacityReservation): any => ({ ...obj, }); } -/** - *The options for managing connection authorization for new client connections.
- */ -export interface ClientConnectOptions { - /** - *Indicates whether client connect options are enabled. The default is false
(not enabled).
The Amazon Resource Name (ARN) of the Lambda function used for connection authorization.
+ *Information about the Capacity Reservation.
*/ - LambdaFunctionArn?: string; + CapacityReservation?: CapacityReservation; } -export namespace ClientConnectOptions { +export namespace CreateCapacityReservationResult { /** * @internal */ - export const filterSensitiveLog = (obj: ClientConnectOptions): any => ({ + export const filterSensitiveLog = (obj: CreateCapacityReservationResult): any => ({ ...obj, }); } +export enum FleetInstanceMatchCriteria { + open = "open", +} + +export type _InstanceType = + | "a1.2xlarge" + | "a1.4xlarge" + | "a1.large" + | "a1.medium" + | "a1.metal" + | "a1.xlarge" + | "c1.medium" + | "c1.xlarge" + | "c3.2xlarge" + | "c3.4xlarge" + | "c3.8xlarge" + | "c3.large" + | "c3.xlarge" + | "c4.2xlarge" + | "c4.4xlarge" + | "c4.8xlarge" + | "c4.large" + | "c4.xlarge" + | "c5.12xlarge" + | "c5.18xlarge" + | "c5.24xlarge" + | "c5.2xlarge" + | "c5.4xlarge" + | "c5.9xlarge" + | "c5.large" + | "c5.metal" + | "c5.xlarge" + | "c5a.12xlarge" + | "c5a.16xlarge" + | "c5a.24xlarge" + | "c5a.2xlarge" + | "c5a.4xlarge" + | "c5a.8xlarge" + | "c5a.large" + | "c5a.xlarge" + | "c5ad.12xlarge" + | "c5ad.16xlarge" + | "c5ad.24xlarge" + | "c5ad.2xlarge" + | "c5ad.4xlarge" + | "c5ad.8xlarge" + | "c5ad.large" + | "c5ad.xlarge" + | "c5d.12xlarge" + | "c5d.18xlarge" + | "c5d.24xlarge" + | "c5d.2xlarge" + | "c5d.4xlarge" + | "c5d.9xlarge" + | "c5d.large" + | "c5d.metal" + | "c5d.xlarge" + | "c5n.18xlarge" + | "c5n.2xlarge" + | "c5n.4xlarge" + | "c5n.9xlarge" + | "c5n.large" + | "c5n.metal" + | "c5n.xlarge" + | "c6g.12xlarge" + | "c6g.16xlarge" + | "c6g.2xlarge" + | "c6g.4xlarge" + | "c6g.8xlarge" + | "c6g.large" + | "c6g.medium" + | "c6g.metal" + | "c6g.xlarge" + | "c6gd.12xlarge" + | "c6gd.16xlarge" + | "c6gd.2xlarge" + | "c6gd.4xlarge" + | "c6gd.8xlarge" + | "c6gd.large" + | "c6gd.medium" + | "c6gd.metal" + | "c6gd.xlarge" + | "c6gn.12xlarge" + | "c6gn.16xlarge" + | "c6gn.2xlarge" + | "c6gn.4xlarge" + | "c6gn.8xlarge" + | "c6gn.large" + | "c6gn.medium" + | "c6gn.xlarge" + | "c6i.12xlarge" + | "c6i.16xlarge" + | "c6i.24xlarge" + | "c6i.2xlarge" + | "c6i.32xlarge" + | "c6i.4xlarge" + | "c6i.8xlarge" + | "c6i.large" + | "c6i.xlarge" + | "cc1.4xlarge" + | "cc2.8xlarge" + | "cg1.4xlarge" + | "cr1.8xlarge" + | "d2.2xlarge" + | "d2.4xlarge" + | "d2.8xlarge" + | "d2.xlarge" + | "d3.2xlarge" + | "d3.4xlarge" + | "d3.8xlarge" + | "d3.xlarge" + | "d3en.12xlarge" + | "d3en.2xlarge" + | "d3en.4xlarge" + | "d3en.6xlarge" + | "d3en.8xlarge" + | "d3en.xlarge" + | "dl1.24xlarge" + | "f1.16xlarge" + | "f1.2xlarge" + | "f1.4xlarge" + | "g2.2xlarge" + | "g2.8xlarge" + | "g3.16xlarge" + | "g3.4xlarge" + | "g3.8xlarge" + | "g3s.xlarge" + | "g4ad.16xlarge" + | "g4ad.2xlarge" + | "g4ad.4xlarge" + | "g4ad.8xlarge" + | "g4ad.xlarge" + | "g4dn.12xlarge" + | "g4dn.16xlarge" + | "g4dn.2xlarge" + | "g4dn.4xlarge" + | "g4dn.8xlarge" + | "g4dn.metal" + | "g4dn.xlarge" + | "g5.12xlarge" + | "g5.16xlarge" + | "g5.24xlarge" + | "g5.2xlarge" + | "g5.48xlarge" + | "g5.4xlarge" + | "g5.8xlarge" + | "g5.xlarge" + | "g5g.16xlarge" + | "g5g.2xlarge" + | "g5g.4xlarge" + | "g5g.8xlarge" + | "g5g.metal" + | "g5g.xlarge" + | "h1.16xlarge" + | "h1.2xlarge" + | "h1.4xlarge" + | "h1.8xlarge" + | "hi1.4xlarge" + | "hs1.8xlarge" + | "i2.2xlarge" + | "i2.4xlarge" + | "i2.8xlarge" + | "i2.xlarge" + | "i3.16xlarge" + | "i3.2xlarge" + | "i3.4xlarge" + | "i3.8xlarge" + | "i3.large" + | "i3.metal" + | "i3.xlarge" + | "i3en.12xlarge" + | "i3en.24xlarge" + | "i3en.2xlarge" + | "i3en.3xlarge" + | "i3en.6xlarge" + | "i3en.large" + | "i3en.metal" + | "i3en.xlarge" + | "im4gn.16xlarge" + | "im4gn.2xlarge" + | "im4gn.4xlarge" + | "im4gn.8xlarge" + | "im4gn.large" + | "im4gn.xlarge" + | "inf1.24xlarge" + | "inf1.2xlarge" + | "inf1.6xlarge" + | "inf1.xlarge" + | "is4gen.2xlarge" + | "is4gen.4xlarge" + | "is4gen.8xlarge" + | "is4gen.large" + | "is4gen.medium" + | "is4gen.xlarge" + | "m1.large" + | "m1.medium" + | "m1.small" + | "m1.xlarge" + | "m2.2xlarge" + | "m2.4xlarge" + | "m2.xlarge" + | "m3.2xlarge" + | "m3.large" + | "m3.medium" + | "m3.xlarge" + | "m4.10xlarge" + | "m4.16xlarge" + | "m4.2xlarge" + | "m4.4xlarge" + | "m4.large" + | "m4.xlarge" + | "m5.12xlarge" + | "m5.16xlarge" + | "m5.24xlarge" + | "m5.2xlarge" + | "m5.4xlarge" + | "m5.8xlarge" + | "m5.large" + | "m5.metal" + | "m5.xlarge" + | "m5a.12xlarge" + | "m5a.16xlarge" + | "m5a.24xlarge" + | "m5a.2xlarge" + | "m5a.4xlarge" + | "m5a.8xlarge" + | "m5a.large" + | "m5a.xlarge" + | "m5ad.12xlarge" + | "m5ad.16xlarge" + | "m5ad.24xlarge" + | "m5ad.2xlarge" + | "m5ad.4xlarge" + | "m5ad.8xlarge" + | "m5ad.large" + | "m5ad.xlarge" + | "m5d.12xlarge" + | "m5d.16xlarge" + | "m5d.24xlarge" + | "m5d.2xlarge" + | "m5d.4xlarge" + | "m5d.8xlarge" + | "m5d.large" + | "m5d.metal" + | "m5d.xlarge" + | "m5dn.12xlarge" + | "m5dn.16xlarge" + | "m5dn.24xlarge" + | "m5dn.2xlarge" + | "m5dn.4xlarge" + | "m5dn.8xlarge" + | "m5dn.large" + | "m5dn.metal" + | "m5dn.xlarge" + | "m5n.12xlarge" + | "m5n.16xlarge" + | "m5n.24xlarge" + | "m5n.2xlarge" + | "m5n.4xlarge" + | "m5n.8xlarge" + | "m5n.large" + | "m5n.metal" + | "m5n.xlarge" + | "m5zn.12xlarge" + | "m5zn.2xlarge" + | "m5zn.3xlarge" + | "m5zn.6xlarge" + | "m5zn.large" + | "m5zn.metal" + | "m5zn.xlarge" + | "m6a.12xlarge" + | "m6a.16xlarge" + | "m6a.24xlarge" + | "m6a.2xlarge" + | "m6a.32xlarge" + | "m6a.48xlarge" + | "m6a.4xlarge" + | "m6a.8xlarge" + | "m6a.large" + | "m6a.xlarge" + | "m6g.12xlarge" + | "m6g.16xlarge" + | "m6g.2xlarge" + | "m6g.4xlarge" + | "m6g.8xlarge" + | "m6g.large" + | "m6g.medium" + | "m6g.metal" + | "m6g.xlarge" + | "m6gd.12xlarge" + | "m6gd.16xlarge" + | "m6gd.2xlarge" + | "m6gd.4xlarge" + | "m6gd.8xlarge" + | "m6gd.large" + | "m6gd.medium" + | "m6gd.metal" + | "m6gd.xlarge" + | "m6i.12xlarge" + | "m6i.16xlarge" + | "m6i.24xlarge" + | "m6i.2xlarge" + | "m6i.32xlarge" + | "m6i.4xlarge" + | "m6i.8xlarge" + | "m6i.large" + | "m6i.xlarge" + | "mac1.metal" + | "p2.16xlarge" + | "p2.8xlarge" + | "p2.xlarge" + | "p3.16xlarge" + | "p3.2xlarge" + | "p3.8xlarge" + | "p3dn.24xlarge" + | "p4d.24xlarge" + | "r3.2xlarge" + | "r3.4xlarge" + | "r3.8xlarge" + | "r3.large" + | "r3.xlarge" + | "r4.16xlarge" + | "r4.2xlarge" + | "r4.4xlarge" + | "r4.8xlarge" + | "r4.large" + | "r4.xlarge" + | "r5.12xlarge" + | "r5.16xlarge" + | "r5.24xlarge" + | "r5.2xlarge" + | "r5.4xlarge" + | "r5.8xlarge" + | "r5.large" + | "r5.metal" + | "r5.xlarge" + | "r5a.12xlarge" + | "r5a.16xlarge" + | "r5a.24xlarge" + | "r5a.2xlarge" + | "r5a.4xlarge" + | "r5a.8xlarge" + | "r5a.large" + | "r5a.xlarge" + | "r5ad.12xlarge" + | "r5ad.16xlarge" + | "r5ad.24xlarge" + | "r5ad.2xlarge" + | "r5ad.4xlarge" + | "r5ad.8xlarge" + | "r5ad.large" + | "r5ad.xlarge" + | "r5b.12xlarge" + | "r5b.16xlarge" + | "r5b.24xlarge" + | "r5b.2xlarge" + | "r5b.4xlarge" + | "r5b.8xlarge" + | "r5b.large" + | "r5b.metal" + | "r5b.xlarge" + | "r5d.12xlarge" + | "r5d.16xlarge" + | "r5d.24xlarge" + | "r5d.2xlarge" + | "r5d.4xlarge" + | "r5d.8xlarge" + | "r5d.large" + | "r5d.metal" + | "r5d.xlarge" + | "r5dn.12xlarge" + | "r5dn.16xlarge" + | "r5dn.24xlarge" + | "r5dn.2xlarge" + | "r5dn.4xlarge" + | "r5dn.8xlarge" + | "r5dn.large" + | "r5dn.metal" + | "r5dn.xlarge" + | "r5n.12xlarge" + | "r5n.16xlarge" + | "r5n.24xlarge" + | "r5n.2xlarge" + | "r5n.4xlarge" + | "r5n.8xlarge" + | "r5n.large" + | "r5n.metal" + | "r5n.xlarge" + | "r6g.12xlarge" + | "r6g.16xlarge" + | "r6g.2xlarge" + | "r6g.4xlarge" + | "r6g.8xlarge" + | "r6g.large" + | "r6g.medium" + | "r6g.metal" + | "r6g.xlarge" + | "r6gd.12xlarge" + | "r6gd.16xlarge" + | "r6gd.2xlarge" + | "r6gd.4xlarge" + | "r6gd.8xlarge" + | "r6gd.large" + | "r6gd.medium" + | "r6gd.metal" + | "r6gd.xlarge" + | "t1.micro" + | "t2.2xlarge" + | "t2.large" + | "t2.medium" + | "t2.micro" + | "t2.nano" + | "t2.small" + | "t2.xlarge" + | "t3.2xlarge" + | "t3.large" + | "t3.medium" + | "t3.micro" + | "t3.nano" + | "t3.small" + | "t3.xlarge" + | "t3a.2xlarge" + | "t3a.large" + | "t3a.medium" + | "t3a.micro" + | "t3a.nano" + | "t3a.small" + | "t3a.xlarge" + | "t4g.2xlarge" + | "t4g.large" + | "t4g.medium" + | "t4g.micro" + | "t4g.nano" + | "t4g.small" + | "t4g.xlarge" + | "u-12tb1.112xlarge" + | "u-12tb1.metal" + | "u-18tb1.metal" + | "u-24tb1.metal" + | "u-6tb1.112xlarge" + | "u-6tb1.56xlarge" + | "u-6tb1.metal" + | "u-9tb1.112xlarge" + | "u-9tb1.metal" + | "vt1.24xlarge" + | "vt1.3xlarge" + | "vt1.6xlarge" + | "x1.16xlarge" + | "x1.32xlarge" + | "x1e.16xlarge" + | "x1e.2xlarge" + | "x1e.32xlarge" + | "x1e.4xlarge" + | "x1e.8xlarge" + | "x1e.xlarge" + | "x2gd.12xlarge" + | "x2gd.16xlarge" + | "x2gd.2xlarge" + | "x2gd.4xlarge" + | "x2gd.8xlarge" + | "x2gd.large" + | "x2gd.medium" + | "x2gd.metal" + | "x2gd.xlarge" + | "z1d.12xlarge" + | "z1d.2xlarge" + | "z1d.3xlarge" + | "z1d.6xlarge" + | "z1d.large" + | "z1d.metal" + | "z1d.xlarge"; + /** - *Describes the client connection logging options for the Client VPN endpoint.
+ *Information about an instance type to use in a Capacity Reservation Fleet.
*/ -export interface ConnectionLogOptions { - /** - *Indicates whether connection logging is enabled.
- */ - Enabled?: boolean; - - /** - *The name of the CloudWatch Logs log group. Required if connection logging is enabled.
- */ - CloudwatchLogGroup?: string; - - /** - *The name of the CloudWatch Logs log stream to which the connection data is published.
- */ - CloudwatchLogStream?: string; -} - -export namespace ConnectionLogOptions { - /** - * @internal - */ - export const filterSensitiveLog = (obj: ConnectionLogOptions): any => ({ - ...obj, - }); -} - -export type SelfServicePortal = "disabled" | "enabled"; - -export type TransportProtocol = "tcp" | "udp"; - -export interface CreateClientVpnEndpointRequest { - /** - *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. The CIDR block should be /22 or greater.
- */ - ClientCidrBlock: string | undefined; - - /** - *The ARN of the server certificate. For more information, see - * the Certificate Manager User Guide.
- */ - ServerCertificateArn: string | undefined; - - /** - *Information about the authentication method to be used to authenticate clients.
- */ - AuthenticationOptions: ClientVpnAuthenticationRequest[] | undefined; - - /** - *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
- *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.
- */ - DnsServers?: string[]; - - /** - *The transport protocol to be used by the VPN session.
- *Default value: udp
- *
The port number to assign to the Client VPN endpoint for TCP and UDP traffic.
- *Valid Values: 443
| 1194
- *
Default Value: 443
- *
A brief description of the Client VPN endpoint.
- */ - Description?: string; - - /** - *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.
- */ - SplitTunnel?: boolean; - - /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
- */ - ClientToken?: string; - - /** - *The tags to apply to the Client VPN endpoint during creation.
- */ - TagSpecifications?: TagSpecification[]; - +export interface ReservationFleetInstanceSpecification { /** - *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.
+ *The instance type for which the Capacity Reservation Fleet reserves capacity.
*/ - SecurityGroupIds?: string[]; + InstanceType?: _InstanceType | string; /** - *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.
+ *The type of operating system for which the Capacity Reservation Fleet reserves capacity.
*/ - VpcId?: string; + InstancePlatform?: CapacityReservationInstancePlatform | string; /** - *Specify whether to enable the self-service portal for the Client VPN endpoint.
- *Default Value: enabled
- *
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.
*/ - SelfServicePortal?: SelfServicePortal | string; + Weight?: number; /** - *The options for managing connection authorization for new client connections.
+ *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.
*/ - ClientConnectOptions?: ClientConnectOptions; -} + AvailabilityZone?: string; -export namespace CreateClientVpnEndpointRequest { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: CreateClientVpnEndpointRequest): any => ({ - ...obj, - }); -} - -export type ClientVpnEndpointStatusCode = "available" | "deleted" | "deleting" | "pending-associate"; + AvailabilityZoneId?: string; -/** - *Describes the state of a Client VPN endpoint.
- */ -export interface ClientVpnEndpointStatus { /** - *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.
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.
*/ - Code?: ClientVpnEndpointStatusCode | string; + EbsOptimized?: boolean; /** - *A message about the status of the Client VPN endpoint.
+ *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.
*/ - Message?: string; + Priority?: number; } -export namespace ClientVpnEndpointStatus { +export namespace ReservationFleetInstanceSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: ClientVpnEndpointStatus): any => ({ + export const filterSensitiveLog = (obj: ReservationFleetInstanceSpecification): any => ({ ...obj, }); } -export interface CreateClientVpnEndpointResult { - /** - *The ID of the Client VPN endpoint.
- */ - ClientVpnEndpointId?: string; - - /** - *The current state of the Client VPN endpoint.
- */ - Status?: ClientVpnEndpointStatus; +export enum FleetCapacityReservationTenancy { + default = "default", +} +export interface CreateCapacityReservationFleetRequest { /** - *The DNS name to be used by clients when establishing their VPN session.
+ *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
+ *
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensure Idempotency.
*/ - export const filterSensitiveLog = (obj: CreateClientVpnEndpointResult): any => ({ - ...obj, - }); -} + ClientToken?: string; -export interface CreateClientVpnRouteRequest { /** - *The ID of the Client VPN endpoint to which to add the route.
+ *Information about the instance types for which to reserve the capacity.
*/ - ClientVpnEndpointId: string | undefined; + InstanceTypeSpecifications: ReservationFleetInstanceSpecification[] | undefined; /** - *The IPv4 address range, in CIDR notation, of the route destination. For example:
+ *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:
*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
- *
+ * default
- The Capacity Reservation Fleet is created on hardware
+ * that is shared with other Amazon Web Services accounts.
To add a route for the local network, enter the client CIDR range
- *
+ * dedicated
- The Capacity Reservations are created on single-tenant
+ * hardware that is dedicated to a single Amazon Web Services account.
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
.
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.
*/ - TargetVpcSubnetId: string | undefined; + TotalTargetCapacity: number | undefined; /** - *A brief description of the route.
+ *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
.
+ *
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ *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.
The tags to assign to the Capacity Reservation Fleet. The tags are automatically assigned + * to the Capacity Reservations in the Fleet.
+ */ + TagSpecifications?: TagSpecification[]; /** *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Describes the state of a Client VPN endpoint route.
+ *Information about a Capacity Reservation in a Capacity Reservation Fleet.
*/ -export interface ClientVpnRouteStatus { - /** - *The state of the Client VPN endpoint route.
- */ - Code?: ClientVpnRouteStatusCode | string; - +export interface FleetCapacityReservation { /** - *A message about the status of the Client VPN endpoint route, if applicable.
+ *The ID of the Capacity Reservation.
*/ - Message?: string; -} + CapacityReservationId?: string; -export namespace ClientVpnRouteStatus { /** - * @internal + *The ID of the Availability Zone in which the Capacity Reservation reserves capacity.
*/ - export const filterSensitiveLog = (obj: ClientVpnRouteStatus): any => ({ - ...obj, - }); -} + AvailabilityZoneId?: string; -export interface CreateClientVpnRouteResult { /** - *The current state of the route.
+ *The instance type for which the Capacity Reservation reserves capacity.
*/ - Status?: ClientVpnRouteStatus; -} + InstanceType?: _InstanceType | string; -export namespace CreateClientVpnRouteResult { /** - * @internal + *The type of operating system for which the Capacity Reservation reserves capacity.
*/ - export const filterSensitiveLog = (obj: CreateClientVpnRouteResult): any => ({ - ...obj, - }); -} - -export type GatewayType = "ipsec.1"; + InstancePlatform?: CapacityReservationInstancePlatform | string; -/** - *Contains the parameters for CreateCustomerGateway.
- */ -export interface CreateCustomerGatewayRequest { /** - *For devices that support BGP, the customer gateway's BGP ASN.
- *Default: 65000
+ *The Availability Zone in which the Capacity Reservation reserves capacity.
*/ - BgpAsn: number | undefined; + AvailabilityZone?: string; /** - *The Internet-routable IP address for the customer gateway's outside interface. The - * address must be static.
+ *The total number of instances for which the Capacity Reservation reserves capacity.
*/ - PublicIp?: string; + TotalInstanceCount?: number; /** - *The Amazon Resource Name (ARN) for the customer gateway certificate.
+ *The number of capacity units fulfilled by the Capacity Reservation. For more information, see + * + * Total target capacity in the Amazon EC2 User Guide.
*/ - CertificateArn?: string; + FulfilledCapacity?: number; /** - *The type of VPN connection that this customer gateway supports
- * (ipsec.1
).
Indicates whether the Capacity Reservation reserves capacity for EBS-optimized instance types.
*/ - Type: GatewayType | string | undefined; + EbsOptimized?: boolean; /** - *The tags to apply to the customer gateway.
+ *The date and time at which the Capacity Reservation was created.
*/ - TagSpecifications?: TagSpecification[]; + CreateDate?: Date; /** - *A name for the customer gateway device.
- *Length Constraints: Up to 255 characters.
+ *The weight of the instance type in the Capacity Reservation Fleet. For more information, + * see + * Instance type weight in the Amazon EC2 User Guide.
*/ - DeviceName?: string; + Weight?: number; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The priority of the instance type in the Capacity Reservation Fleet. For more information, + * see + * Instance type priority in the Amazon EC2 User Guide.
*/ - DryRun?: boolean; + Priority?: number; } -export namespace CreateCustomerGatewayRequest { +export namespace FleetCapacityReservation { /** * @internal */ - export const filterSensitiveLog = (obj: CreateCustomerGatewayRequest): any => ({ + export const filterSensitiveLog = (obj: FleetCapacityReservation): any => ({ ...obj, }); } -/** - *Describes a customer gateway.
- */ -export interface CustomerGateway { - /** - *The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number - * (ASN).
- */ - BgpAsn?: string; - - /** - *The ID of the customer gateway.
- */ - CustomerGatewayId?: string; - - /** - *The Internet-routable IP address of the customer gateway's outside interface.
- */ - IpAddress?: string; - +export interface CreateCapacityReservationFleetResult { /** - *The Amazon Resource Name (ARN) for the customer gateway certificate.
+ *The ID of the Capacity Reservation Fleet.
*/ - CertificateArn?: string; + CapacityReservationFleetId?: string; /** - *The current state of the customer gateway (pending | available | deleting |
- * deleted
).
The status of the Capacity Reservation Fleet.
*/ - State?: string; + State?: CapacityReservationFleetState | string; /** - *The type of VPN connection the customer gateway supports
- * (ipsec.1
).
The total number of capacity units for which the Capacity Reservation Fleet reserves capacity.
*/ - Type?: string; + TotalTargetCapacity?: number; /** - *The name of customer gateway device.
+ *The requested capacity units that have been successfully reserved.
*/ - DeviceName?: string; + TotalFulfilledCapacity?: number; /** - *Any tags assigned to the customer gateway.
+ *The instance matching criteria for the Capacity Reservation Fleet.
*/ - Tags?: Tag[]; -} + InstanceMatchCriteria?: FleetInstanceMatchCriteria | string; -export namespace CustomerGateway { /** - * @internal - */ - export const filterSensitiveLog = (obj: CustomerGateway): any => ({ - ...obj, - }); -} + *The allocation strategy used by the Capacity Reservation Fleet.
+ */ + AllocationStrategy?: string; -/** - *Contains the output of CreateCustomerGateway.
- */ -export interface CreateCustomerGatewayResult { /** - *Information about the customer gateway.
+ *The date and time at which the Capacity Reservation Fleet was created.
*/ - CustomerGateway?: CustomerGateway; -} + CreateTime?: Date; -export namespace CreateCustomerGatewayResult { /** - * @internal + *The date and time at which the Capacity Reservation Fleet expires.
*/ - export const filterSensitiveLog = (obj: CreateCustomerGatewayResult): any => ({ - ...obj, - }); -} + EndDate?: Date; -export interface CreateDefaultSubnetRequest { /** - *The Availability Zone in which to create the default subnet.
+ *Indicates the tenancy of Capacity Reservation Fleet.
*/ - AvailabilityZone: string | undefined; + Tenancy?: FleetCapacityReservationTenancy | string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the individual Capacity Reservations in the Capacity Reservation Fleet.
*/ - DryRun?: boolean; + FleetCapacityReservations?: FleetCapacityReservation[]; /** - *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.
+ *The tags assigned to the Capacity Reservation Fleet.
*/ - Ipv6Native?: boolean; + Tags?: Tag[]; } -export namespace CreateDefaultSubnetRequest { +export namespace CreateCapacityReservationFleetResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateDefaultSubnetRequest): any => ({ + export const filterSensitiveLog = (obj: CreateCapacityReservationFleetResult): any => ({ ...obj, }); } -export enum HostnameType { - ip_name = "ip-name", - resource_name = "resource-name", -} +export interface CreateCarrierGatewayRequest { + /** + *The ID of the VPC to associate with the carrier gateway.
+ */ + VpcId: string | undefined; -/** - *Describes the options for instance hostnames.
- */ -export interface PrivateDnsNameOptionsOnLaunch { /** - *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.
+ *The tags to associate with the carrier gateway.
*/ - HostnameType?: HostnameType | string; + TagSpecifications?: TagSpecification[]; /** - *Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Indicates whether to respond to DNS queries for instance hostname with DNS AAAA records.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. For more information, see How to ensure + * idempotency.
*/ - EnableResourceNameDnsAAAARecord?: boolean; + ClientToken?: string; } -export namespace PrivateDnsNameOptionsOnLaunch { +export namespace CreateCarrierGatewayRequest { /** * @internal */ - export const filterSensitiveLog = (obj: PrivateDnsNameOptionsOnLaunch): any => ({ + export const filterSensitiveLog = (obj: CreateCarrierGatewayRequest): any => ({ ...obj, }); } -export type SubnetState = "available" | "pending"; +export type CarrierGatewayState = "available" | "deleted" | "deleting" | "pending"; /** - *Describes a subnet.
+ *Describes a carrier gateway.
*/ -export interface Subnet { - /** - *The Availability Zone of the subnet.
- */ - AvailabilityZone?: string; - +export interface CarrierGateway { /** - *The AZ ID of the subnet.
+ *The ID of the carrier gateway.
*/ - AvailabilityZoneId?: string; + CarrierGatewayId?: string; /** - *The number of unused private IPv4 addresses in the subnet. The IPv4 addresses for any - * stopped instances are considered unavailable.
+ *The ID of the VPC associated with the carrier gateway.
*/ - AvailableIpAddressCount?: number; + VpcId?: string; /** - *The IPv4 CIDR block assigned to the subnet.
+ *The state of the carrier gateway.
*/ - CidrBlock?: string; + State?: CarrierGatewayState | string; /** - *Indicates whether this is the default subnet for the Availability Zone.
+ *The Amazon Web Services account ID of the owner of the carrier gateway.
*/ - DefaultForAz?: boolean; + OwnerId?: string; /** - *
- * 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).
- *
The tags assigned to the carrier gateway.
*/ - EnableLniAtDeviceIndex?: number; + Tags?: Tag[]; +} +export namespace CarrierGateway { /** - *Indicates whether instances launched in this subnet receive a public IPv4 address.
+ * @internal */ - MapPublicIpOnLaunch?: boolean; + export const filterSensitiveLog = (obj: CarrierGateway): any => ({ + ...obj, + }); +} +export interface CreateCarrierGatewayResult { /** - *Indicates whether a network interface created in this subnet (including a network - * interface created by RunInstances) receives a customer-owned IPv4 address.
+ *Information about the carrier gateway.
*/ - MapCustomerOwnedIpOnLaunch?: boolean; + CarrierGateway?: CarrierGateway; +} +export namespace CreateCarrierGatewayResult { /** - *The customer-owned IPv4 address pool associated with the subnet.
+ * @internal */ - CustomerOwnedIpv4Pool?: string; + export const filterSensitiveLog = (obj: CreateCarrierGatewayResult): any => ({ + ...obj, + }); +} +/** + *Describes the Active Directory to be used for client authentication.
+ */ +export interface DirectoryServiceAuthenticationRequest { /** - *The current state of the subnet.
+ *The ID of the Active Directory to be used for authentication.
*/ - State?: SubnetState | string; + DirectoryId?: string; +} +export namespace DirectoryServiceAuthenticationRequest { /** - *The ID of the subnet.
+ * @internal */ - SubnetId?: string; + export const filterSensitiveLog = (obj: DirectoryServiceAuthenticationRequest): any => ({ + ...obj, + }); +} +/** + *The IAM SAML identity provider used for federated authentication.
+ */ +export interface FederatedAuthenticationRequest { /** - *The ID of the VPC the subnet is in.
+ *The Amazon Resource Name (ARN) of the IAM SAML identity provider.
*/ - VpcId?: string; + SAMLProviderArn?: string; /** - *The ID of the Amazon Web Services account that owns the subnet.
+ *The Amazon Resource Name (ARN) of the IAM SAML identity provider for the self-service portal.
*/ - OwnerId?: string; + SelfServiceSAMLProviderArn?: string; +} +export namespace FederatedAuthenticationRequest { /** - *Indicates whether a network interface created in this subnet (including a network - * interface created by RunInstances) receives an IPv6 address.
+ * @internal */ - AssignIpv6AddressOnCreation?: boolean; + export const filterSensitiveLog = (obj: FederatedAuthenticationRequest): any => ({ + ...obj, + }); +} +/** + *Information about the client certificate to be used for authentication.
+ */ +export interface CertificateAuthenticationRequest { /** - *Information about the IPv6 CIDR blocks associated with the subnet.
+ *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).
*/ - Ipv6CidrBlockAssociationSet?: SubnetIpv6CidrBlockAssociation[]; + ClientRootCertificateChainArn?: string; +} +export namespace CertificateAuthenticationRequest { /** - *Any tags assigned to the subnet.
+ * @internal */ - Tags?: Tag[]; + export const filterSensitiveLog = (obj: CertificateAuthenticationRequest): any => ({ + ...obj, + }); +} - /** - *The Amazon Resource Name (ARN) of the subnet.
- */ - SubnetArn?: string; +export type ClientVpnAuthenticationType = + | "certificate-authentication" + | "directory-service-authentication" + | "federated-authentication"; +/** + *Describes the authentication method to be used by a Client VPN endpoint. For more information, see Authentication + * in the Client VPN Administrator Guide.
+ */ +export interface ClientVpnAuthenticationRequest { /** - *The Amazon Resource Name (ARN) of the Outpost.
+ *The type of client authentication to be used.
*/ - OutpostArn?: string; + Type?: ClientVpnAuthenticationType | string; /** - *Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet - * should return synthetic IPv6 addresses for IPv4-only destinations.
+ *Information about the Active Directory to be used, if applicable. You must provide this information if Type is directory-service-authentication
.
Indicates whether this is an IPv6 only subnet.
+ *Information about the authentication certificates to be used, if applicable. You must provide this information if Type is certificate-authentication
.
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.
+ *Information about the IAM SAML identity provider to be used, if applicable. You must provide this information if Type is federated-authentication
.
Information about the subnet.
- */ - Subnet?: Subnet; -} - -export namespace CreateDefaultSubnetResult { +/** + *The options for managing connection authorization for new client connections.
+ */ +export interface ClientConnectOptions { /** - * @internal + *Indicates whether client connect options are enabled. The default is false
(not enabled).
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Amazon Resource Name (ARN) of the Lambda function used for connection authorization.
*/ - DryRun?: boolean; + LambdaFunctionArn?: string; } -export namespace CreateDefaultVpcRequest { +export namespace ClientConnectOptions { /** * @internal */ - export const filterSensitiveLog = (obj: CreateDefaultVpcRequest): any => ({ + export const filterSensitiveLog = (obj: ClientConnectOptions): any => ({ ...obj, }); } -export type Tenancy = "dedicated" | "default" | "host"; - -export type VpcState = "available" | "pending"; - /** - *Describes a VPC.
+ *Describes the client connection logging options for the Client VPN endpoint.
*/ -export interface Vpc { +export interface ConnectionLogOptions { /** - *The primary IPv4 CIDR block for the VPC.
+ *Indicates whether connection logging is enabled.
*/ - CidrBlock?: string; + Enabled?: boolean; /** - *The ID of the set of DHCP options you've associated with the VPC.
+ *The name of the CloudWatch Logs log group. Required if connection logging is enabled.
*/ - DhcpOptionsId?: string; + CloudwatchLogGroup?: string; /** - *The current state of the VPC.
+ *The name of the CloudWatch Logs log stream to which the connection data is published.
*/ - State?: VpcState | string; + CloudwatchLogStream?: string; +} +export namespace ConnectionLogOptions { /** - *The ID of the VPC.
+ * @internal */ - VpcId?: string; + export const filterSensitiveLog = (obj: ConnectionLogOptions): any => ({ + ...obj, + }); +} - /** - *The ID of the Amazon Web Services account that owns the VPC.
- */ - OwnerId?: string; +export type SelfServicePortal = "disabled" | "enabled"; +export type TransportProtocol = "tcp" | "udp"; + +export interface CreateClientVpnEndpointRequest { /** - *The allowed tenancy of instances launched into the VPC.
+ *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. The CIDR block should be /22 or greater.
*/ - InstanceTenancy?: Tenancy | string; + ClientCidrBlock: string | undefined; /** - *Information about the IPv6 CIDR blocks associated with the VPC.
+ *The ARN of the server certificate. For more information, see + * the Certificate Manager User Guide.
*/ - Ipv6CidrBlockAssociationSet?: VpcIpv6CidrBlockAssociation[]; + ServerCertificateArn: string | undefined; /** - *Information about the IPv4 CIDR blocks associated with the VPC.
+ *Information about the authentication method to be used to authenticate clients.
*/ - CidrBlockAssociationSet?: VpcCidrBlockAssociation[]; + AuthenticationOptions: ClientVpnAuthenticationRequest[] | undefined; /** - *Indicates whether the VPC is the default VPC.
+ *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
+ *Any tags assigned to the VPC.
+ *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.
*/ - Tags?: Tag[]; -} + DnsServers?: string[]; -export namespace Vpc { /** - * @internal + *The transport protocol to be used by the VPN session.
+ *Default value: udp
+ *
Information about the VPC.
+ *The port number to assign to the Client VPN endpoint for TCP and UDP traffic.
+ *Valid Values: 443
| 1194
+ *
Default Value: 443
+ *
A brief description of the Client VPN endpoint.
*/ - export const filterSensitiveLog = (obj: CreateDefaultVpcResult): any => ({ - ...obj, - }); -} + Description?: string; -/** - *Describes a DHCP configuration option.
- */ -export interface NewDhcpConfiguration { /** - *The name of a DHCP option.
+ *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.
*/ - Key?: string; + SplitTunnel?: boolean; /** - *One or more values for the DHCP option.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
*/ - export const filterSensitiveLog = (obj: NewDhcpConfiguration): any => ({ - ...obj, - }); -} + ClientToken?: string; -export interface CreateDhcpOptionsRequest { /** - *A DHCP configuration option.
+ *The tags to apply to the Client VPN endpoint during creation.
*/ - DhcpConfigurations: NewDhcpConfiguration[] | undefined; + TagSpecifications?: TagSpecification[]; /** - *The tags to assign to the DHCP option.
+ *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.
*/ - TagSpecifications?: TagSpecification[]; + SecurityGroupIds?: string[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
*/ - DryRun?: boolean; -} + VpcId?: string; -export namespace CreateDhcpOptionsRequest { /** - * @internal + *Specify whether to enable the self-service portal for the Client VPN endpoint.
+ *Default Value: enabled
+ *
Describes a value for a resource attribute that is a String.
- */ -export interface AttributeValue { /** - *The attribute value. The value is case-sensitive.
+ *The options for managing connection authorization for new client connections.
*/ - Value?: string; + ClientConnectOptions?: ClientConnectOptions; } -export namespace AttributeValue { +export namespace CreateClientVpnEndpointRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AttributeValue): any => ({ + export const filterSensitiveLog = (obj: CreateClientVpnEndpointRequest): any => ({ ...obj, }); } +export type ClientVpnEndpointStatusCode = "available" | "deleted" | "deleting" | "pending-associate"; + /** - *Describes a DHCP configuration option.
+ *Describes the state of a Client VPN endpoint.
*/ -export interface DhcpConfiguration { +export interface ClientVpnEndpointStatus { /** - *The name of a DHCP option.
+ *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.
One or more values for the DHCP option.
+ *A message about the status of the Client VPN endpoint.
*/ - Values?: AttributeValue[]; + Message?: string; } -export namespace DhcpConfiguration { +export namespace ClientVpnEndpointStatus { /** * @internal */ - export const filterSensitiveLog = (obj: DhcpConfiguration): any => ({ + export const filterSensitiveLog = (obj: ClientVpnEndpointStatus): any => ({ ...obj, }); } -/** - *Describes a set of DHCP options.
- */ -export interface DhcpOptions { - /** - *One or more DHCP options in the set.
- */ - DhcpConfigurations?: DhcpConfiguration[]; - +export interface CreateClientVpnEndpointResult { /** - *The ID of the set of DHCP options.
+ *The ID of the Client VPN endpoint.
*/ - DhcpOptionsId?: string; + ClientVpnEndpointId?: string; /** - *The ID of the Amazon Web Services account that owns the DHCP options set.
+ *The current state of the Client VPN endpoint.
*/ - OwnerId?: string; + Status?: ClientVpnEndpointStatus; /** - *Any tags assigned to the DHCP options set.
+ *The DNS name to be used by clients when establishing their VPN session.
*/ - Tags?: Tag[]; + DnsName?: string; } -export namespace DhcpOptions { +export namespace CreateClientVpnEndpointResult { /** * @internal */ - export const filterSensitiveLog = (obj: DhcpOptions): any => ({ + export const filterSensitiveLog = (obj: CreateClientVpnEndpointResult): any => ({ ...obj, }); } -export interface CreateDhcpOptionsResult { +export interface CreateClientVpnRouteRequest { /** - *A set of DHCP options.
+ *The ID of the Client VPN endpoint to which to add the route.
*/ - DhcpOptions?: DhcpOptions; -} + ClientVpnEndpointId: string | undefined; -export namespace CreateDhcpOptionsResult { /** - * @internal + *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
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. For more information, see How to ensure - * idempotency.
+ *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
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
A brief description of the route.
*/ - DryRun?: boolean; + Description?: string; /** - *The ID of the VPC for which to create the egress-only internet gateway.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
*/ - VpcId: string | undefined; + ClientToken?: string; /** - *The tags to assign to the egress-only internet gateway.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Describes the attachment of a VPC to an internet gateway or an egress-only internet - * gateway.
+ *Describes the state of a Client VPN endpoint route.
*/ -export interface InternetGatewayAttachment { +export interface ClientVpnRouteStatus { /** - *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.
The state of the Client VPN endpoint route.
*/ - State?: AttachmentStatus | string; + Code?: ClientVpnRouteStatusCode | string; /** - *The ID of the VPC.
+ *A message about the status of the Client VPN endpoint route, if applicable.
*/ - VpcId?: string; + Message?: string; } -export namespace InternetGatewayAttachment { +export namespace ClientVpnRouteStatus { /** * @internal */ - export const filterSensitiveLog = (obj: InternetGatewayAttachment): any => ({ + export const filterSensitiveLog = (obj: ClientVpnRouteStatus): any => ({ ...obj, }); } -/** - *Describes an egress-only internet gateway.
- */ -export interface EgressOnlyInternetGateway { - /** - *Information about the attachment of the egress-only internet gateway.
- */ - Attachments?: InternetGatewayAttachment[]; - - /** - *The ID of the egress-only internet gateway.
- */ - EgressOnlyInternetGatewayId?: string; - +export interface CreateClientVpnRouteResult { /** - *The tags assigned to the egress-only internet gateway.
+ *The current state of the route.
*/ - Tags?: Tag[]; + Status?: ClientVpnRouteStatus; } -export namespace EgressOnlyInternetGateway { +export namespace CreateClientVpnRouteResult { /** * @internal */ - export const filterSensitiveLog = (obj: EgressOnlyInternetGateway): any => ({ + export const filterSensitiveLog = (obj: CreateClientVpnRouteResult): any => ({ ...obj, }); } -export interface CreateEgressOnlyInternetGatewayResult { +export type GatewayType = "ipsec.1"; + +/** + *Contains the parameters for CreateCustomerGateway.
+ */ +export interface CreateCustomerGatewayRequest { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request.
+ *For devices that support BGP, the customer gateway's BGP ASN.
+ *Default: 65000
*/ - ClientToken?: string; + BgpAsn: number | undefined; /** - *Information about the egress-only internet gateway.
+ *The Internet-routable IP address for the customer gateway's outside interface. The + * address must be static.
*/ - EgressOnlyInternetGateway?: EgressOnlyInternetGateway; -} + PublicIp?: string; -export namespace CreateEgressOnlyInternetGatewayResult { /** - * @internal + *The Amazon Resource Name (ARN) for the customer gateway certificate.
*/ - export const filterSensitiveLog = (obj: CreateEgressOnlyInternetGatewayResult): any => ({ - ...obj, - }); -} + CertificateArn?: string; -export enum FleetExcessCapacityTerminationPolicy { - NO_TERMINATION = "no-termination", - TERMINATION = "termination", -} + /** + *The type of VPN connection that this customer gateway supports
+ * (ipsec.1
).
Describes the Amazon EC2 launch template and the launch template version that can be used by - * an EC2 Fleet to configure Amazon EC2 instances. For information about launch templates, see Launching - * an instance from a launch template in the - * Amazon EC2 User Guide.
- */ -export interface FleetLaunchTemplateSpecificationRequest { /** - *The ID of the launch template. If you specify the template ID, you can't specify the template name.
+ *The tags to apply to the customer gateway.
*/ - LaunchTemplateId?: string; + TagSpecifications?: TagSpecification[]; /** - *The name of the launch template. If you specify the template name, you can't specify the template ID.
+ *A name for the customer gateway device.
+ *Length Constraints: Up to 255 characters.
*/ - LaunchTemplateName?: string; + DeviceName?: string; /** - *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.
Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
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.
+ *Describes a customer gateway.
*/ -export interface BaselineEbsBandwidthMbpsRequest { +export interface CustomerGateway { /** - *The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit - * this parameter.
+ *The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number + * (ASN).
*/ - Min?: number; + BgpAsn?: string; /** - *The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit - * this parameter.
+ *The ID of the customer gateway.
*/ - Max?: number; -} + CustomerGatewayId?: string; -export namespace BaselineEbsBandwidthMbpsRequest { /** - * @internal + *The Internet-routable IP address of the customer gateway's outside interface.
*/ - export const filterSensitiveLog = (obj: BaselineEbsBandwidthMbpsRequest): any => ({ - ...obj, - }); -} - -export enum BurstablePerformance { - EXCLUDED = "excluded", - INCLUDED = "included", - REQUIRED = "required", -} - -export enum CpuManufacturer { - AMAZON_WEB_SERVICES = "amazon-web-services", - AMD = "amd", - INTEL = "intel", -} - -export enum InstanceGeneration { - CURRENT = "current", - PREVIOUS = "previous", -} - -export enum LocalStorage { - EXCLUDED = "excluded", - INCLUDED = "included", - REQUIRED = "required", -} - -export enum LocalStorageType { - HDD = "hdd", - SSD = "ssd", -} + IpAddress?: string; -/** - *The minimum and maximum amount of memory per vCPU, in GiB.
- */ -export interface MemoryGiBPerVCpuRequest { /** - *The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this - * parameter.
+ *The Amazon Resource Name (ARN) for the customer gateway certificate.
*/ - Min?: number; + CertificateArn?: string; /** - *The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this - * parameter.
+ *The current state of the customer gateway (pending | available | deleting |
+ * deleted
).
The type of VPN connection the customer gateway supports
+ * (ipsec.1
).
The minimum and maximum amount of memory, in MiB.
- */ -export interface MemoryMiBRequest { /** - *The minimum amount of memory, in MiB. To specify no minimum limit, specify
- * 0
.
The name of customer gateway device.
*/ - Min: number | undefined; + DeviceName?: string; /** - *The maximum amount of memory, in MiB. To specify no maximum limit, omit this - * parameter.
+ *Any tags assigned to the customer gateway.
*/ - Max?: number; + Tags?: Tag[]; } -export namespace MemoryMiBRequest { +export namespace CustomerGateway { /** * @internal */ - export const filterSensitiveLog = (obj: MemoryMiBRequest): any => ({ + export const filterSensitiveLog = (obj: CustomerGateway): any => ({ ...obj, }); } /** - *The minimum and maximum number of network interfaces.
+ *Contains the output of CreateCustomerGateway.
*/ -export interface NetworkInterfaceCountRequest { - /** - *The minimum number of network interfaces. To specify no minimum limit, omit this - * parameter.
- */ - Min?: number; - +export interface CreateCustomerGatewayResult { /** - *The maximum number of network interfaces. To specify no maximum limit, omit this - * parameter.
+ *Information about the customer gateway.
*/ - Max?: number; + CustomerGateway?: CustomerGateway; } -export namespace NetworkInterfaceCountRequest { +export namespace CreateCustomerGatewayResult { /** * @internal */ - export const filterSensitiveLog = (obj: NetworkInterfaceCountRequest): any => ({ + export const filterSensitiveLog = (obj: CreateCustomerGatewayResult): any => ({ ...obj, }); } -/** - *The minimum and maximum amount of total local storage, in GB.
- */ -export interface TotalLocalStorageGBRequest { +export interface CreateDefaultSubnetRequest { /** - *The minimum amount of total local storage, in GB. To specify no minimum limit, omit this - * parameter.
+ *The Availability Zone in which to create the default subnet.
+ */ + AvailabilityZone: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The maximum amount of total local storage, in GB. To specify no maximum limit, omit this - * parameter.
+ *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.
*/ - Max?: number; + Ipv6Native?: boolean; } -export namespace TotalLocalStorageGBRequest { +export namespace CreateDefaultSubnetRequest { /** * @internal */ - export const filterSensitiveLog = (obj: TotalLocalStorageGBRequest): any => ({ + export const filterSensitiveLog = (obj: CreateDefaultSubnetRequest): any => ({ ...obj, }); } +export enum HostnameType { + ip_name = "ip-name", + resource_name = "resource-name", +} + /** - *The minimum and maximum number of vCPUs.
+ *Describes the options for instance hostnames.
*/ -export interface VCpuCountRangeRequest { +export interface PrivateDnsNameOptionsOnLaunch { + /** + *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.
+ */ + HostnameType?: HostnameType | string; + /** - *The minimum number of vCPUs. To specify no minimum limit, specify 0
.
Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
*/ - Min: number | undefined; + EnableResourceNameDnsARecord?: boolean; /** - *The maximum number of vCPUs. To specify no maximum limit, omit this parameter.
+ *Indicates whether to respond to DNS queries for instance hostname with DNS AAAA records.
*/ - Max?: number; + EnableResourceNameDnsAAAARecord?: boolean; } -export namespace VCpuCountRangeRequest { +export namespace PrivateDnsNameOptionsOnLaunch { /** * @internal */ - export const filterSensitiveLog = (obj: VCpuCountRangeRequest): any => ({ + export const filterSensitiveLog = (obj: PrivateDnsNameOptionsOnLaunch): any => ({ ...obj, }); } +export type SubnetState = "available" | "pending"; + /** - *The attributes for the instance types. When you specify instance attributes, Amazon EC2 will - * identify instance types with these attributes.
- *When you specify multiple parameters, you get instance types that satisfy all of the - * specified parameters. If you specify multiple values for a parameter, you get instance - * types that satisfy any of the specified values.
- *You must specify VCpuCount
and MemoryMiB
. All other parameters
- * are optional. Any unspecified optional parameter is set to its default.
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.
+ *Describes a subnet.
*/ -export interface InstanceRequirementsRequest { +export interface Subnet { /** - *The minimum and maximum number of vCPUs.
+ *The Availability Zone of the subnet.
*/ - VCpuCount: VCpuCountRangeRequest | undefined; + AvailabilityZone?: string; /** - *The minimum and maximum amount of memory, in MiB.
+ *The AZ ID of the subnet.
*/ - MemoryMiB: MemoryMiBRequest | undefined; + AvailabilityZoneId?: string; /** - *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
+ *The number of unused private IPv4 addresses in the subnet. The IPv4 addresses for any + * stopped instances are considered unavailable.
*/ - CpuManufacturers?: (CpuManufacturer | string)[]; + AvailableIpAddressCount?: number; /** - *The minimum and maximum amount of memory per vCPU, in GiB.
- *Default: No minimum or maximum limits
+ *The IPv4 CIDR block assigned to the subnet.
*/ - MemoryGiBPerVCpu?: MemoryGiBPerVCpuRequest; + CidrBlock?: string; /** - *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.
Default: No excluded instance types
+ *Indicates whether this is the default subnet for the Availability Zone.
*/ - ExcludedInstanceTypes?: string[]; + DefaultForAz?: boolean; /** - *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
+ *
+ * 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).
+ *
The price protection threshold for Spot Instance. This is the maximum you’ll pay for an Spot Instance, - * expressed as a percentage above the cheapest 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.
- *Default: 100
- *
Indicates whether instances launched in this subnet receive a public IPv4 address.
*/ - SpotMaxPricePercentageOverLowestPrice?: number; + MapPublicIpOnLaunch?: boolean; /** - *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 cheapest 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.
- *Default: 20
- *
Indicates whether a network interface created in this subnet (including a network + * interface created by RunInstances) receives a customer-owned IPv4 address.
*/ - OnDemandMaxPricePercentageOverLowestPrice?: number; + MapCustomerOwnedIpOnLaunch?: boolean; /** - *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
- *
The customer-owned IPv4 address pool associated with the subnet.
*/ - BareMetal?: BareMetal | string; + CustomerOwnedIpv4Pool?: string; /** - *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
- *
The current state of the subnet.
*/ - BurstablePerformance?: BurstablePerformance | string; + State?: SubnetState | string; /** - *Indicates whether instance types must support hibernation for On-Demand Instances.
- *This parameter is not supported for GetSpotPlacementScores.
- *Default: false
- *
The ID of the subnet.
*/ - RequireHibernateSupport?: boolean; + SubnetId?: string; /** - *The minimum and maximum number of network interfaces.
- *Default: No minimum or maximum limits
+ *The ID of the VPC the subnet is in.
*/ - NetworkInterfaceCount?: NetworkInterfaceCountRequest; + VpcId?: string; /** - *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
- *
The ID of the Amazon Web Services account that owns the subnet.
*/ - LocalStorage?: LocalStorage | string; + OwnerId?: string; /** - *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 (SDD) storage, specify sdd
.
Default: hdd
and sdd
- *
Indicates whether a network interface created in this subnet (including a network + * interface created by RunInstances) receives an IPv6 address.
*/ - LocalStorageTypes?: (LocalStorageType | string)[]; + AssignIpv6AddressOnCreation?: boolean; /** - *The minimum and maximum amount of total local storage, in GB.
- *Default: No minimum or maximum limits
+ *Information about the IPv6 CIDR blocks associated with the subnet.
*/ - TotalLocalStorageGB?: TotalLocalStorageGBRequest; + Ipv6CidrBlockAssociationSet?: SubnetIpv6CidrBlockAssociation[]; /** - *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
+ *Any tags assigned to the subnet.
*/ - BaselineEbsBandwidthMbps?: BaselineEbsBandwidthMbpsRequest; + Tags?: Tag[]; /** - *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
+ *The Amazon Resource Name (ARN) of the subnet.
*/ - AcceleratorTypes?: (AcceleratorType | string)[]; + SubnetArn?: string; /** - *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
+ *The Amazon Resource Name (ARN) of the Outpost.
*/ - AcceleratorCount?: AcceleratorCountRequest; + OutpostArn?: string; /** - *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
+ *Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet + * should return synthetic IPv6 addresses for IPv4-only destinations.
*/ - AcceleratorManufacturers?: (AcceleratorManufacturer | string)[]; + EnableDns64?: boolean; /** - *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
.
Default: Any accelerator
+ *Indicates whether this is an IPv6 only subnet.
*/ - AcceleratorNames?: (AcceleratorName | string)[]; + Ipv6Native?: boolean; /** - *The minimum and maximum amount of total accelerator memory, in MiB.
- *Default: No minimum or maximum limits
+ *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.
*/ - AcceleratorTotalMemoryMiB?: AcceleratorTotalMemoryMiBRequest; + PrivateDnsNameOptionsOnLaunch?: PrivateDnsNameOptionsOnLaunch; } -export namespace InstanceRequirementsRequest { +export namespace Subnet { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceRequirementsRequest): any => ({ + export const filterSensitiveLog = (obj: Subnet): any => ({ ...obj, }); } -/** - *Describes the placement of an instance.
- */ -export interface Placement { - /** - *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 by CreateFleet.
- */ - AvailabilityZone?: string; - - /** - *The affinity setting for the instance on the Dedicated Host. This parameter is not - * supported for the ImportInstance command.
- *This parameter is not supported by CreateFleet.
- */ - Affinity?: string; - - /** - *The name of the placement group the instance is in.
- */ - GroupName?: string; - - /** - *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 by CreateFleet.
- */ - PartitionNumber?: number; - - /** - *The ID of the Dedicated Host on which the instance resides. This parameter is not - * supported for the ImportInstance command.
- *This parameter is not supported by CreateFleet.
- */ - HostId?: string; - +export interface CreateDefaultSubnetResult { /** - *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 the ImportInstance command.
This parameter is not supported by CreateFleet.
- * - *T3 instances that use the unlimited
CPU credit option do not support host
tenancy.
Information about the subnet.
*/ - Tenancy?: Tenancy | string; + Subnet?: Subnet; +} +export namespace CreateDefaultSubnetResult { /** - *Reserved for future use.
- *This parameter is not supported by CreateFleet.
+ * @internal */ - SpreadDomain?: string; + export const filterSensitiveLog = (obj: CreateDefaultSubnetResult): any => ({ + ...obj, + }); +} +export interface CreateDefaultVpcRequest { /** - *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
.
This parameter is not supported by CreateFleet.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes overrides for a launch template.
+ *Describes a VPC.
*/ -export interface FleetLaunchTemplateOverridesRequest { - /** - *The instance type.
- *If you specify InstanceTypes
, you can't specify
- * InstanceRequirements
.
The maximum price per unit hour that you are willing to pay for a Spot Instance.
+ *The primary IPv4 CIDR block for the VPC.
*/ - MaxPrice?: string; + CidrBlock?: string; /** - *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.
The ID of the set of DHCP options you've associated with the VPC.
*/ - SubnetId?: string; + DhcpOptionsId?: string; /** - *The Availability Zone in which to launch the instances.
+ *The current state of the VPC.
*/ - AvailabilityZone?: string; + State?: VpcState | string; /** - *The number of units provided by the specified instance type.
+ *The ID of the VPC.
*/ - WeightedCapacity?: number; + VpcId?: string; /** - *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.
The ID of the Amazon Web Services account that owns the VPC.
*/ - Priority?: number; + OwnerId?: string; /** - *The location where the instance launched, if applicable.
+ *The allowed tenancy of instances launched into the VPC.
*/ - Placement?: Placement; + InstanceTenancy?: Tenancy | string; /** - *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
- * InstanceTypes
.
Information about the IPv6 CIDR blocks associated with the VPC.
*/ - InstanceRequirements?: InstanceRequirementsRequest; -} + Ipv6CidrBlockAssociationSet?: VpcIpv6CidrBlockAssociation[]; -export namespace FleetLaunchTemplateOverridesRequest { /** - * @internal + *Information about the IPv4 CIDR blocks associated with the VPC.
*/ - export const filterSensitiveLog = (obj: FleetLaunchTemplateOverridesRequest): any => ({ - ...obj, - }); -} + CidrBlockAssociationSet?: VpcCidrBlockAssociation[]; -/** - *Describes a launch template and overrides.
- */ -export interface FleetLaunchTemplateConfigRequest { /** - *The launch template to use. You must specify either the launch template ID or launch - * template name in the request.
+ *Indicates whether the VPC is the default VPC.
*/ - LaunchTemplateSpecification?: FleetLaunchTemplateSpecificationRequest; + IsDefault?: boolean; /** - *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.
Any tags assigned to the VPC.
*/ - Overrides?: FleetLaunchTemplateOverridesRequest[]; + Tags?: Tag[]; } -export namespace FleetLaunchTemplateConfigRequest { +export namespace Vpc { /** * @internal */ - export const filterSensitiveLog = (obj: FleetLaunchTemplateConfigRequest): any => ({ + export const filterSensitiveLog = (obj: Vpc): any => ({ ...obj, }); } -export enum FleetOnDemandAllocationStrategy { - LOWEST_PRICE = "lowest-price", - PRIORITIZED = "prioritized", -} - -export enum FleetCapacityReservationUsageStrategy { - USE_CAPACITY_RESERVATIONS_FIRST = "use-capacity-reservations-first", -} - -/** - *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.
- */ -export interface CapacityReservationOptionsRequest { +export interface CreateDefaultVpcResult { /** - *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.
+ *Information about the VPC.
*/ - UsageStrategy?: FleetCapacityReservationUsageStrategy | string; + Vpc?: Vpc; } -export namespace CapacityReservationOptionsRequest { +export namespace CreateDefaultVpcResult { /** * @internal */ - export const filterSensitiveLog = (obj: CapacityReservationOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: CreateDefaultVpcResult): any => ({ ...obj, }); } /** - *Describes the configuration of On-Demand Instances in an EC2 Fleet.
+ *Describes a DHCP configuration option.
*/ -export interface OnDemandOptionsRequest { +export interface NewDhcpConfiguration { /** - *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
- *
The name of a DHCP option.
*/ - AllocationStrategy?: FleetOnDemandAllocationStrategy | string; + Key?: string; /** - *The strategy for using unused Capacity Reservations for fulfilling On-Demand - * capacity.
- *Supported only for fleets of type instant
.
One or more values for the DHCP option.
*/ - CapacityReservationOptions?: CapacityReservationOptionsRequest; + Values?: string[]; +} +export namespace NewDhcpConfiguration { /** - *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
.
Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.
- *Supported only for fleets of type instant
.
A DHCP configuration option.
*/ - SingleAvailabilityZone?: boolean; + DhcpConfigurations: NewDhcpConfiguration[] | undefined; /** - *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
- *
The tags to assign to the DHCP option.
*/ - MinTargetCapacity?: number; + TagSpecifications?: TagSpecification[]; /** - *The maximum amount per hour for On-Demand Instances that you're willing to pay.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
+ *Describes a value for a resource attribute that is a String.
*/ -export interface FleetSpotCapacityRebalanceRequest { - /** - *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.
The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot - * Instance after launching a new replacement Spot Instance.
- *Valid only when ReplacementStrategy
is set to launch-before-terminate
.
Valid values: Minimum value of 120
seconds. Maximum value of 7200
seconds.
The attribute value. The value is case-sensitive.
*/ - TerminationDelay?: number; + Value?: string; } -export namespace FleetSpotCapacityRebalanceRequest { +export namespace AttributeValue { /** * @internal */ - export const filterSensitiveLog = (obj: FleetSpotCapacityRebalanceRequest): any => ({ + export const filterSensitiveLog = (obj: AttributeValue): any => ({ ...obj, }); } /** - *The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.
+ *Describes a DHCP configuration option.
*/ -export interface FleetSpotMaintenanceStrategiesRequest { +export interface DhcpConfiguration { /** - *The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an - * elevated risk of being interrupted.
+ *The name of a DHCP option.
+ */ + Key?: string; + + /** + *One or more values for the DHCP option.
*/ - CapacityRebalance?: FleetSpotCapacityRebalanceRequest; + Values?: AttributeValue[]; } -export namespace FleetSpotMaintenanceStrategiesRequest { +export namespace DhcpConfiguration { /** * @internal */ - export const filterSensitiveLog = (obj: FleetSpotMaintenanceStrategiesRequest): any => ({ + export const filterSensitiveLog = (obj: DhcpConfiguration): any => ({ ...obj, }); } /** - *Describes the configuration of Spot Instances in an EC2 Fleet request.
+ *Describes a set of DHCP options.
*/ -export interface SpotOptionsRequest { - /** - *The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by - * the EC2 Fleet.
- *
- * lowest-price
- EC2 Fleet launches instances from
- * the Spot Instance pools with the lowest price.
- * diversified
- EC2 Fleet launches instances from all
- * of the Spot Instance pools that you specify.
- * capacity-optimized
(recommended) - EC2 Fleet
- * launches instances from Spot Instance pools with optimal capacity for the number of instances that
- * are launching. 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 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.
Default: lowest-price
- *
The strategies for managing your Spot Instances that are at an elevated risk of being - * interrupted.
- */ - MaintenanceStrategies?: FleetSpotMaintenanceStrategiesRequest; - +export interface DhcpOptions { /** - *The behavior when a Spot Instance is interrupted.
- *Default: terminate
- *
One or more DHCP options in the set.
*/ - InstanceInterruptionBehavior?: SpotInstanceInterruptionBehavior | string; + DhcpConfigurations?: DhcpConfiguration[]; /** - *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.
+ *The ID of the set of DHCP options.
*/ - InstancePoolsToUseCount?: number; + DhcpOptionsId?: string; /** - *Indicates that the fleet uses a single instance type to launch all Spot Instances in the - * fleet.
- *Supported only for fleets of type instant
.
The ID of the Amazon Web Services account that owns the DHCP options set.
*/ - SingleInstanceType?: boolean; + OwnerId?: string; /** - *Indicates that the fleet launches all Spot Instances into a single Availability Zone.
- *Supported only for fleets of type instant
.
Any tags assigned to the DHCP options set.
*/ - SingleAvailabilityZone?: boolean; + Tags?: Tag[]; +} +export namespace DhcpOptions { /** - *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
- *
The maximum amount per hour for Spot Instances that you're willing to pay.
+ *A set of DHCP options.
*/ - MaxTotalPrice?: string; + DhcpOptions?: DhcpOptions; } -export namespace SpotOptionsRequest { +export namespace CreateDhcpOptionsResult { /** * @internal */ - export const filterSensitiveLog = (obj: SpotOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: CreateDhcpOptionsResult): any => ({ ...obj, }); } -export enum DefaultTargetCapacityType { - ON_DEMAND = "on-demand", - SPOT = "spot", -} - -export enum TargetCapacityUnitType { - MEMORY_MIB = "memory-mib", - UNITS = "units", - VCPU = "vcpu", -} - -/** - *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.
The number of units to request, filled using
- * DefaultTargetCapacityType
.
The number of On-Demand units to request.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. For more information, see How to ensure + * idempotency.
*/ - OnDemandTargetCapacity?: number; + ClientToken?: string; /** - *The number of Spot units to request.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The default TotalTargetCapacity
, which is either Spot
or
- * On-Demand
.
The ID of the VPC for which to create the egress-only internet gateway.
*/ - DefaultTargetCapacityType?: DefaultTargetCapacityType | string; + VpcId: string | undefined; /** - *The unit for the target capacity.
- *Default: units
(translates to number of instances)
The tags to assign to the egress-only internet gateway.
*/ - TargetCapacityUnitType?: TargetCapacityUnitType | string; + TagSpecifications?: TagSpecification[]; } -export namespace TargetCapacitySpecificationRequest { +export namespace CreateEgressOnlyInternetGatewayRequest { /** * @internal */ - export const filterSensitiveLog = (obj: TargetCapacitySpecificationRequest): any => ({ + export const filterSensitiveLog = (obj: CreateEgressOnlyInternetGatewayRequest): any => ({ ...obj, }); } -export enum FleetType { - INSTANT = "instant", - MAINTAIN = "maintain", - REQUEST = "request", -} - -export interface CreateFleetRequest { +/** + *Describes the attachment of a VPC to an internet gateway or an egress-only internet + * gateway.
+ */ +export interface InternetGatewayAttachment { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. For more information, see Ensuring - * Idempotency.
+ *The ID of the VPC.
*/ - ClientToken?: string; + VpcId?: string; +} +export namespace InternetGatewayAttachment { /** - *Describes the configuration of Spot Instances in an EC2 Fleet.
+ * @internal */ - SpotOptions?: SpotOptionsRequest; + export const filterSensitiveLog = (obj: InternetGatewayAttachment): any => ({ + ...obj, + }); +} +/** + *Describes an egress-only internet gateway.
+ */ +export interface EgressOnlyInternetGateway { /** - *Describes the configuration of On-Demand Instances in an EC2 Fleet.
+ *Information about the attachment of the egress-only internet gateway.
*/ - OnDemandOptions?: OnDemandOptionsRequest; + Attachments?: InternetGatewayAttachment[]; /** - *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.
+ *The ID of the egress-only internet gateway.
*/ - ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy | string; + EgressOnlyInternetGatewayId?: string; /** - *The configuration for the EC2 Fleet.
+ *The tags assigned to the egress-only internet gateway.
*/ - LaunchTemplateConfigs: FleetLaunchTemplateConfigRequest[] | undefined; + Tags?: Tag[]; +} +export namespace EgressOnlyInternetGateway { /** - *The number of units to request.
+ * @internal */ - TargetCapacitySpecification: TargetCapacitySpecificationRequest | undefined; + export const filterSensitiveLog = (obj: EgressOnlyInternetGateway): any => ({ + ...obj, + }); +} +export interface CreateEgressOnlyInternetGatewayResult { /** - *Indicates whether running instances should be terminated when the EC2 Fleet expires.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request.
*/ - TerminateInstancesWithExpiration?: boolean; + ClientToken?: string; /** - *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.
+ *Information about the egress-only internet gateway.
*/ - Type?: FleetType | string; + EgressOnlyInternetGateway?: EgressOnlyInternetGateway; +} +export namespace CreateEgressOnlyInternetGatewayResult { /** - *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.
+ * @internal */ - ValidFrom?: Date; + export const filterSensitiveLog = (obj: CreateEgressOnlyInternetGatewayResult): any => ({ + ...obj, + }); +} - /** - *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.
- */ - ValidUntil?: Date; +export enum FleetExcessCapacityTerminationPolicy { + NO_TERMINATION = "no-termination", + TERMINATION = "termination", +} +/** + *Describes the Amazon EC2 launch template and the launch template version that can be used by + * an EC2 Fleet to configure Amazon EC2 instances. For information about launch templates, see Launching + * an instance from a launch template in the + * Amazon EC2 User Guide.
+ */ +export interface FleetLaunchTemplateSpecificationRequest { /** - *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.
The ID of the launch template. If you specify the template ID, you can't specify the template name.
*/ - ReplaceUnhealthyInstances?: boolean; + LaunchTemplateId?: string; /** - *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.
The name of the launch template. If you specify the template name, you can't specify the template ID.
*/ - TagSpecifications?: TagSpecification[]; + LaunchTemplateName?: string; /** - *Reserved.
+ *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.
Describes the Amazon EC2 launch template and the launch template version that can be used - * by a Spot Fleet request to configure Amazon EC2 instances. For information about launch templates, - * see Launching an instance from a launch template in the - * Amazon EC2 User Guide for Linux Instances.
+ *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.
*/ -export interface FleetLaunchTemplateSpecification { - /** - *The ID of the launch template. If you specify the template ID, you can't specify the - * template name.
- */ - LaunchTemplateId?: string; - +export interface BaselineEbsBandwidthMbpsRequest { /** - *The name of the launch template. If you specify the template name, you can't specify - * the template ID.
+ *The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit + * this parameter.
*/ - LaunchTemplateName?: string; + Min?: number; /** - *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.
The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit + * this parameter.
*/ - Version?: string; + Max?: number; } -export namespace FleetLaunchTemplateSpecification { +export namespace BaselineEbsBandwidthMbpsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: FleetLaunchTemplateSpecification): any => ({ + export const filterSensitiveLog = (obj: BaselineEbsBandwidthMbpsRequest): any => ({ ...obj, }); } + +export enum BurstablePerformance { + EXCLUDED = "excluded", + INCLUDED = "included", + REQUIRED = "required", +} + +export enum CpuManufacturer { + AMAZON_WEB_SERVICES = "amazon-web-services", + AMD = "amd", + INTEL = "intel", +} + +export enum InstanceGeneration { + CURRENT = "current", + PREVIOUS = "previous", +} + +export enum LocalStorage { + EXCLUDED = "excluded", + INCLUDED = "included", + REQUIRED = "required", +} + +export enum LocalStorageType { + HDD = "hdd", + SSD = "ssd", +} diff --git a/clients/client-ec2/src/models/models_1.ts b/clients/client-ec2/src/models/models_1.ts index 8bf282e347e9..7ec8a82865e9 100644 --- a/clients/client-ec2/src/models/models_1.ts +++ b/clients/client-ec2/src/models/models_1.ts @@ -3,28 +3,35 @@ import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; import { _InstanceType, AcceleratorCount, + AcceleratorCountRequest, AcceleratorManufacturer, AcceleratorName, AcceleratorTotalMemoryMiB, + AcceleratorTotalMemoryMiBRequest, AcceleratorType, + AccessScopePath, + AccessScopePathRequest, + AddIpamOperatingRegion, AddPrefixListEntry, - ApplianceModeSupportValue, + AddressFamily, AttachmentStatus, BareMetal, + BaselineEbsBandwidthMbpsRequest, BurstablePerformance, CpuManufacturer, CurrencyCodeValues, DnsSupportValue, - FleetLaunchTemplateSpecification, + FleetExcessCapacityTerminationPolicy, + FleetLaunchTemplateSpecificationRequest, HostnameType, InstanceEventWindow, InstanceGeneration, - InstanceRequirementsRequest, InternetGatewayAttachment, Ipv4PrefixSpecification, - Ipv6SupportValue, LocalStorage, LocalStorageType, + PortRange, + Protocol, ReservedInstancesListing, ResourceType, RouteTableAssociationState, @@ -32,67 +39,33 @@ import { Tag, TagSpecification, Tenancy, - TransitGatewayAttachmentResourceType, TransitGatewayAttachmentState, - TransitGatewayPeeringAttachment, - TransitGatewayVpcAttachment, UnsuccessfulItem, - VolumeAttachment, - Vpc, WeekDay, } from "./models_0"; -/** - *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.
- */ -export interface BaselineEbsBandwidthMbps { - /** - *The minimum baseline bandwidth, in Mbps. If this parameter is not specified, there is no - * minimum limit.
- */ - Min?: number; - - /** - *The maximum baseline bandwidth, in Mbps. If this parameter is not specified, there is no - * maximum limit.
- */ - Max?: number; -} - -export namespace BaselineEbsBandwidthMbps { - /** - * @internal - */ - export const filterSensitiveLog = (obj: BaselineEbsBandwidthMbps): any => ({ - ...obj, - }); -} - /** *The minimum and maximum amount of memory per vCPU, in GiB.
- * */ -export interface MemoryGiBPerVCpu { +export interface MemoryGiBPerVCpuRequest { /** - *The minimum amount of memory per vCPU, in GiB. If this parameter is not specified, there is - * no minimum limit.
+ *The minimum amount of memory per vCPU, in GiB. To specify no minimum limit, omit this + * parameter.
*/ Min?: number; /** - *The maximum amount of memory per vCPU, in GiB. If this parameter is not specified, there is - * no maximum limit.
+ *The maximum amount of memory per vCPU, in GiB. To specify no maximum limit, omit this + * parameter.
*/ Max?: number; } -export namespace MemoryGiBPerVCpu { +export namespace MemoryGiBPerVCpuRequest { /** * @internal */ - export const filterSensitiveLog = (obj: MemoryGiBPerVCpu): any => ({ + export const filterSensitiveLog = (obj: MemoryGiBPerVCpuRequest): any => ({ ...obj, }); } @@ -100,25 +73,25 @@ export namespace MemoryGiBPerVCpu { /** *The minimum and maximum amount of memory, in MiB.
*/ -export interface MemoryMiB { +export interface MemoryMiBRequest { /** - *The minimum amount of memory, in MiB. If this parameter is not specified, there is no minimum - * limit.
+ *The minimum amount of memory, in MiB. To specify no minimum limit, specify
+ * 0
.
The maximum amount of memory, in MiB. If this parameter is not specified, there is no - * maximum limit.
+ *The maximum amount of memory, in MiB. To specify no maximum limit, omit this + * parameter.
*/ Max?: number; } -export namespace MemoryMiB { +export namespace MemoryMiBRequest { /** * @internal */ - export const filterSensitiveLog = (obj: MemoryMiB): any => ({ + export const filterSensitiveLog = (obj: MemoryMiBRequest): any => ({ ...obj, }); } @@ -126,25 +99,25 @@ export namespace MemoryMiB { /** *The minimum and maximum number of network interfaces.
*/ -export interface NetworkInterfaceCount { +export interface NetworkInterfaceCountRequest { /** - *The minimum number of network interfaces. If this parameter is not specified, there is no - * minimum limit.
+ *The minimum number of network interfaces. To specify no minimum limit, omit this + * parameter.
*/ Min?: number; /** - *The maximum number of network interfaces. If this parameter is not specified, there is no - * maximum limit.
+ *The maximum number of network interfaces. To specify no maximum limit, omit this + * parameter.
*/ Max?: number; } -export namespace NetworkInterfaceCount { +export namespace NetworkInterfaceCountRequest { /** * @internal */ - export const filterSensitiveLog = (obj: NetworkInterfaceCount): any => ({ + export const filterSensitiveLog = (obj: NetworkInterfaceCountRequest): any => ({ ...obj, }); } @@ -152,25 +125,25 @@ export namespace NetworkInterfaceCount { /** *The minimum and maximum amount of total local storage, in GB.
*/ -export interface TotalLocalStorageGB { +export interface TotalLocalStorageGBRequest { /** - *The minimum amount of total local storage, in GB. If this parameter is not specified, there is - * no minimum limit.
+ *The minimum amount of total local storage, in GB. To specify no minimum limit, omit this + * parameter.
*/ Min?: number; /** - *The maximum amount of total local storage, in GB. If this parameter is not specified, there is - * no maximum limit.
+ *The maximum amount of total local storage, in GB. To specify no maximum limit, omit this + * parameter.
*/ Max?: number; } -export namespace TotalLocalStorageGB { +export namespace TotalLocalStorageGBRequest { /** * @internal */ - export const filterSensitiveLog = (obj: TotalLocalStorageGB): any => ({ + export const filterSensitiveLog = (obj: TotalLocalStorageGBRequest): any => ({ ...obj, }); } @@ -178,32 +151,30 @@ export namespace TotalLocalStorageGB { /** *The minimum and maximum number of vCPUs.
*/ -export interface VCpuCountRange { +export interface VCpuCountRangeRequest { /** - *The minimum number of vCPUs. If the value is 0
, there is no minimum
- * limit.
The minimum number of vCPUs. To specify no minimum limit, specify 0
.
The maximum number of vCPUs. If this parameter is not specified, there is no maximum - * limit.
+ *The maximum number of vCPUs. To specify no maximum limit, omit this parameter.
*/ Max?: number; } -export namespace VCpuCountRange { +export namespace VCpuCountRangeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: VCpuCountRange): any => ({ + export const filterSensitiveLog = (obj: VCpuCountRangeRequest): any => ({ ...obj, }); } /** *The attributes for the instance types. When you specify instance attributes, Amazon EC2 will - * identify instance types with these attributes.
+ * identify instance types with these attributes. *When you specify multiple parameters, you get instance types that satisfy all of the * specified parameters. If you specify multiple values for a parameter, you get instance * types that satisfy any of the specified values.
@@ -214,16 +185,16 @@ export namespace VCpuCountRange { *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.
*/ -export interface InstanceRequirements { +export interface InstanceRequirementsRequest { /** *The minimum and maximum number of vCPUs.
*/ - VCpuCount?: VCpuCountRange; + VCpuCount: VCpuCountRangeRequest | undefined; /** *The minimum and maximum amount of memory, in MiB.
*/ - MemoryMiB?: MemoryMiB; + MemoryMiB: MemoryMiBRequest | undefined; /** *The CPU manufacturers to include.
@@ -251,13 +222,13 @@ export interface InstanceRequirements { *The minimum and maximum amount of memory per vCPU, in GiB.
*Default: No minimum or maximum limits
*/ - MemoryGiBPerVCpu?: MemoryGiBPerVCpu; + MemoryGiBPerVCpu?: MemoryGiBPerVCpuRequest; /** *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*
.
*
), 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
@@ -279,7 +250,7 @@ export interface InstanceRequirements {
InstanceGenerations?: (InstanceGeneration | string)[];
/**
- *
The price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, + *
The price protection threshold for Spot Instance. This is the maximum you’ll pay for an Spot Instance, * expressed as a percentage above the cheapest 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.
@@ -342,8 +313,7 @@ export interface InstanceRequirements { BurstablePerformance?: BurstablePerformance | string; /** - *Indicates whether instance types must support hibernation for On-Demand - * Instances.
+ *Indicates whether instance types must support hibernation for On-Demand Instances.
*This parameter is not supported for GetSpotPlacementScores.
*Default: false
*
The minimum and maximum number of network interfaces.
*Default: No minimum or maximum limits
*/ - NetworkInterfaceCount?: NetworkInterfaceCount; + NetworkInterfaceCount?: NetworkInterfaceCountRequest; /** *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.
+ * Amazon + * EC2 instance store in the Amazon EC2 User Guide. *To include instance types with instance store volumes, specify
- * included
.
included
.
* To require only instance types with instance store volumes, specify @@ -371,7 +341,7 @@ export interface InstanceRequirements { *
To exclude instance types with instance store volumes, specify
- * excluded
.
excluded
.
* Default: included
@@ -398,7 +368,7 @@ export interface InstanceRequirements {
*
The minimum and maximum amount of total local storage, in GB.
*Default: No minimum or maximum limits
*/ - TotalLocalStorageGB?: TotalLocalStorageGB; + TotalLocalStorageGB?: TotalLocalStorageGBRequest; /** *The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see @@ -406,19 +376,19 @@ export interface InstanceRequirements { * EBS–optimized instances in the Amazon EC2 User Guide.
*Default: No minimum or maximum limits
*/ - BaselineEbsBandwidthMbps?: BaselineEbsBandwidthMbps; + BaselineEbsBandwidthMbps?: BaselineEbsBandwidthMbpsRequest; /** *The accelerator types that must be on the instance type.
*For instance types with GPU accelerators, specify gpu
.
To include instance types with GPU hardware, specify gpu
.
For instance types with FPGA accelerators, specify fpga
.
To include instance types with FPGA hardware, specify fpga
.
For instance types with inference accelerators, specify inference
.
To include instance types with inference hardware, specify inference
.
Default: Any accelerator type
@@ -431,7 +401,7 @@ export interface InstanceRequirements { *To exclude accelerator-enabled instance types, set Max
to 0
.
Default: No minimum or maximum limits
*/ - AcceleratorCount?: AcceleratorCount; + AcceleratorCount?: AcceleratorCountRequest; /** *Indicates whether instance types must have accelerators by specific manufacturers.
@@ -475,7 +445,7 @@ export interface InstanceRequirements { *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 Xilinx VU9P FPGAs, specify vu9p
.
Default: Any accelerator
@@ -486,14 +456,14 @@ export interface InstanceRequirements { *The minimum and maximum amount of total accelerator memory, in MiB.
*Default: No minimum or maximum limits
*/ - AcceleratorTotalMemoryMiB?: AcceleratorTotalMemoryMiB; + AcceleratorTotalMemoryMiB?: AcceleratorTotalMemoryMiBRequest; } -export namespace InstanceRequirements { +export namespace InstanceRequirementsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceRequirements): any => ({ + export const filterSensitiveLog = (obj: InstanceRequirementsRequest): any => ({ ...obj, }); } @@ -501,18 +471,71 @@ export namespace InstanceRequirements { /** *Describes the placement of an instance.
*/ -export interface PlacementResponse { +export interface Placement { /** - *The name of the placement group that the instance is in.
+ *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 by CreateFleet.
+ */ + AvailabilityZone?: string; + + /** + *The affinity setting for the instance on the Dedicated Host. This parameter is not + * supported for the ImportInstance command.
+ *This parameter is not supported by CreateFleet.
+ */ + Affinity?: string; + + /** + *The name of the placement group the instance is in.
*/ GroupName?: string; + + /** + *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 by CreateFleet.
+ */ + PartitionNumber?: number; + + /** + *The ID of the Dedicated Host on which the instance resides. This parameter is not + * supported for the ImportInstance command.
+ *This parameter is not supported by CreateFleet.
+ */ + HostId?: string; + + /** + *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 the ImportInstance command.
This parameter is not supported by CreateFleet.
+ * + *T3 instances that use the unlimited
CPU credit option do not support host
tenancy.
Reserved for future use.
+ *This parameter is not supported by CreateFleet.
+ */ + SpreadDomain?: string; + + /** + *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
.
This parameter is not supported by CreateFleet.
+ */ + HostResourceGroupArn?: string; } -export namespace PlacementResponse { +export namespace Placement { /** * @internal */ - export const filterSensitiveLog = (obj: PlacementResponse): any => ({ + export const filterSensitiveLog = (obj: Placement): any => ({ ...obj, }); } @@ -520,7 +543,7 @@ export namespace PlacementResponse { /** *Describes overrides for a launch template.
*/ -export interface FleetLaunchTemplateOverrides { +export interface FleetLaunchTemplateOverridesRequest { /** *The instance type.
*The ID of the subnet in which to launch the instances.
+ *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.
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.
The location where the instance launched, if applicable.
*/ - Placement?: PlacementResponse; + Placement?: Placement; /** *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
- * InstanceTypes
.
InstanceTypes
.
* Describes a launch template and overrides.
*/ -export interface LaunchTemplateAndOverridesResponse { +export interface FleetLaunchTemplateConfigRequest { /** - *The launch template.
+ *The launch template to use. You must specify either the launch template ID or launch + * template name in the request.
*/ - LaunchTemplateSpecification?: FleetLaunchTemplateSpecification; + LaunchTemplateSpecification?: FleetLaunchTemplateSpecificationRequest; /** *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.
Describes the instances that could not be launched by the fleet.
+ *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.
*/ -export interface CreateFleetError { - /** - *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.
- */ - LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse; - - /** - *Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.
- */ - Lifecycle?: InstanceLifecycle | string; - - /** - *The error code that indicates why the instance could not be launched. For more - * information about error codes, see Error Codes.
- */ - ErrorCode?: string; - +export interface CapacityReservationOptionsRequest { /** - *The error message that describes why the instance could not be launched. For more - * information about error messages, see Error Codes.
+ *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.
*/ - ErrorMessage?: string; + UsageStrategy?: FleetCapacityReservationUsageStrategy | string; } -export namespace CreateFleetError { +export namespace CapacityReservationOptionsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateFleetError): any => ({ + export const filterSensitiveLog = (obj: CapacityReservationOptionsRequest): any => ({ ...obj, }); } -export type PlatformValues = "Windows"; - /** - *Describes the instances that were launched by the fleet.
+ *Describes the configuration of On-Demand Instances in an EC2 Fleet.
*/ -export interface CreateFleetInstance { +export interface OnDemandOptionsRequest { /** - *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.
+ *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
+ *
Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.
+ *The strategy for using unused Capacity Reservations for fulfilling On-Demand + * capacity.
+ *Supported only for fleets of type instant
.
The IDs of the instances.
+ *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
.
The instance type.
+ *Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.
+ *Supported only for fleets of type instant
.
The value is Windows
for Windows instances. Otherwise, the value is
- * blank.
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
+ *
The maximum amount per hour for On-Demand Instances that you're willing to pay.
+ */ + MaxTotalPrice?: string; } -export namespace CreateFleetInstance { +export namespace OnDemandOptionsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateFleetInstance): any => ({ + export const filterSensitiveLog = (obj: OnDemandOptionsRequest): any => ({ ...obj, }); } -export interface CreateFleetResult { - /** - *The ID of the EC2 Fleet.
- */ - FleetId?: string; +export enum SpotAllocationStrategy { + CAPACITY_OPTIMIZED = "capacity-optimized", + CAPACITY_OPTIMIZED_PRIORITIZED = "capacity-optimized-prioritized", + DIVERSIFIED = "diversified", + LOWEST_PRICE = "lowest-price", +} + +export type SpotInstanceInterruptionBehavior = "hibernate" | "stop" | "terminate"; + +export enum FleetReplacementStrategy { + LAUNCH = "launch", + LAUNCH_BEFORE_TERMINATE = "launch-before-terminate", +} +/** + *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.
+ */ +export interface FleetSpotCapacityRebalanceRequest { /** - *Information about the instances that could not be launched by the fleet. Supported only for
- * fleets of type instant
.
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.
Information about the instances that were launched by the fleet. Supported only for
- * fleets of type instant
.
The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot + * Instance after launching a new replacement Spot Instance.
+ *Valid only when ReplacementStrategy
is set to launch-before-terminate
.
Valid values: Minimum value of 120
seconds. Maximum value of 7200
seconds.
Describes the destination options for a flow log.
+ *The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.
*/ -export interface DestinationOptionsRequest { - /** - *The format for the flow log. The default is plain-text
.
Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3.
- * The default is false
.
Indicates whether to partition the flow log per hour. This reduces the cost and response
- * time for queries. The default is false
.
The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an + * elevated risk of being interrupted.
*/ - PerHourPartition?: boolean; + CapacityRebalance?: FleetSpotCapacityRebalanceRequest; } -export namespace DestinationOptionsRequest { +export namespace FleetSpotMaintenanceStrategiesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DestinationOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: FleetSpotMaintenanceStrategiesRequest): any => ({ ...obj, }); } -export type LogDestinationType = "cloud-watch-logs" | "s3"; +/** + *Describes the configuration of Spot Instances in an EC2 Fleet request.
+ */ +export interface SpotOptionsRequest { + /** + *The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance pools specified by + * the EC2 Fleet.
+ *
+ * lowest-price
- EC2 Fleet launches instances from
+ * the Spot Instance pools with the lowest price.
+ * diversified
- EC2 Fleet launches instances from all
+ * of the Spot Instance pools that you specify.
+ * capacity-optimized
(recommended) - EC2 Fleet
+ * launches instances from Spot Instance pools with optimal capacity for the number of instances that
+ * are launching. 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 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.
Default: lowest-price
+ *
The strategies for managing your Spot Instances that are at an elevated risk of being + * interrupted.
+ */ + MaintenanceStrategies?: FleetSpotMaintenanceStrategiesRequest; -export type TrafficType = "ACCEPT" | "ALL" | "REJECT"; + /** + *The behavior when a Spot Instance is interrupted.
+ *Default: terminate
+ *
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.
+ */ + InstancePoolsToUseCount?: number; + + /** + *Indicates that the fleet uses a single instance type to launch all Spot Instances in the + * fleet.
+ *Supported only for fleets of type instant
.
Indicates that the fleet launches all Spot Instances into a single Availability Zone.
+ *Supported only for fleets of type instant
.
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
+ *
The maximum amount per hour for Spot Instances that you're willing to pay.
+ */ + MaxTotalPrice?: string; +} + +export namespace SpotOptionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: SpotOptionsRequest): any => ({ + ...obj, + }); +} + +export enum DefaultTargetCapacityType { + ON_DEMAND = "on-demand", + SPOT = "spot", +} + +export enum TargetCapacityUnitType { + MEMORY_MIB = "memory-mib", + UNITS = "units", + VCPU = "vcpu", +} + +/** + *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.
The number of units to request, filled using
+ * DefaultTargetCapacityType
.
The number of On-Demand units to request.
+ */ + OnDemandTargetCapacity?: number; + + /** + *The number of Spot units to request.
+ */ + SpotTargetCapacity?: number; + + /** + *The default TotalTargetCapacity
, which is either Spot
or
+ * On-Demand
.
The unit for the target capacity.
+ *Default: units
(translates to number of instances)
Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -781,988 +1001,1139 @@ export interface CreateFlowLogsRequest {
/**
*
Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. For more information, see How to ensure - * idempotency.
+ * request. For more information, see Ensuring + * Idempotency. */ ClientToken?: string; /** - *The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group - * in your account.
- *If you specify LogDestinationType
as s3
, do not specify
- * DeliverLogsPermissionArn
or LogGroupName
.
Describes the configuration of Spot Instances in an EC2 Fleet.
*/ - DeliverLogsPermissionArn?: string; + SpotOptions?: SpotOptionsRequest; /** - *The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs.
- *If you specify LogDestinationType
as s3
, do not specify
- * DeliverLogsPermissionArn
or LogGroupName
.
Describes the configuration of On-Demand Instances in an EC2 Fleet.
*/ - LogGroupName?: string; + OnDemandOptions?: OnDemandOptionsRequest; /** - *The ID of the subnet, network interface, or VPC for which you want to create a flow log.
- *Constraints: Maximum of 1000 resources
+ *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.
*/ - ResourceIds: string[] | undefined; + ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy | string; /** - *The type of resource for which to create the flow log. For example, if you specified a VPC ID for
- * the ResourceId
property, specify VPC
for this property.
The configuration for the EC2 Fleet.
*/ - ResourceType: FlowLogsResourceType | string | undefined; + LaunchTemplateConfigs: FleetLaunchTemplateConfigRequest[] | undefined; /** - *The type of traffic to log. You can log traffic that the resource accepts or rejects, or all traffic.
+ *The number of units to request.
*/ - TrafficType: TrafficType | string | undefined; + TargetCapacitySpecification: TargetCapacitySpecificationRequest | undefined; /** - *The type of destination to which the flow log data is to be published. Flow log data can be
- * published to CloudWatch Logs or Amazon S3. To publish flow log data to CloudWatch Logs, specify cloud-watch-logs
. To
- * publish flow log data to Amazon S3, specify s3
.
If you specify LogDestinationType
as s3
, do not specify
- * DeliverLogsPermissionArn
or LogGroupName
.
Default: cloud-watch-logs
- *
Indicates whether running instances should be terminated when the EC2 Fleet expires.
*/ - LogDestinationType?: LogDestinationType | string; + TerminateInstancesWithExpiration?: boolean; /** - *The destination to which the flow log data is to be published. Flow log data can be published
- * to a CloudWatch Logs log group or an Amazon S3 bucket. The value specified for this parameter depends on the value specified
- * for LogDestinationType
.
If LogDestinationType
is not specified or cloud-watch-logs
,
- * specify the Amazon Resource Name (ARN) of the CloudWatch Logs log group. For example, to publish
- * to a log group called my-logs
, specify
- * arn:aws:logs:us-east-1:123456789012:log-group:my-logs
. Alternatively,
- * use LogGroupName
instead.
If LogDestinationType is s3
, specify the ARN of the Amazon S3 bucket. You can also specify a
- * subfolder in the bucket. To specify a subfolder in the bucket, use the following ARN format:
- * bucket_ARN/subfolder_name/
. For example, to specify a subfolder named my-logs
in a
- * bucket named my-bucket
, use the following ARN: arn:aws:s3:::my-bucket/my-logs/
. You
- * cannot use AWSLogs
as a subfolder name. This is a reserved term.
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.
*/ - LogDestination?: string; + Type?: FleetType | string; /** - *The fields to include in the flow log record, in the order in which they should - * appear. For a list of available fields, see Flow log records. If you - * omit this parameter, the flow log is created using the default format. If you specify this parameter, - * you must specify at least one field.
- *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.
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.
*/ - LogFormat?: string; + ValidFrom?: Date; /** - *The tags to apply to the flow logs.
+ *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.
*/ - TagSpecifications?: TagSpecification[]; + ValidUntil?: Date; /** - *The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. You can specify 60 seconds (1 minute) or 600 seconds (10 minutes).
- *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
+ *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.
The destination options.
+ *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.
Reserved.
+ */ + Context?: string; } -export namespace CreateFlowLogsRequest { +export namespace CreateFleetRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateFlowLogsRequest): any => ({ + export const filterSensitiveLog = (obj: CreateFleetRequest): any => ({ ...obj, }); } -export interface CreateFlowLogsResult { +/** + *Describes the Amazon EC2 launch template and the launch template version that can be used + * by a Spot Fleet request to configure Amazon EC2 instances. For information about launch templates, + * see Launching an instance from a launch template in the + * Amazon EC2 User Guide for Linux Instances.
+ */ +export interface FleetLaunchTemplateSpecification { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request.
+ *The ID of the launch template. If you specify the template ID, you can't specify the + * template name.
*/ - ClientToken?: string; + LaunchTemplateId?: string; /** - *The IDs of the flow logs.
+ *The name of the launch template. If you specify the template name, you can't specify + * the template ID.
*/ - FlowLogIds?: string[]; + LaunchTemplateName?: string; /** - *Information about the flow logs that could not be created successfully.
+ *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.
Describes a storage location in Amazon S3.
+ *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.
*/ -export interface StorageLocation { +export interface BaselineEbsBandwidthMbps { /** - *The name of the S3 bucket.
+ *The minimum baseline bandwidth, in Mbps. If this parameter is not specified, there is no + * minimum limit.
*/ - Bucket?: string; + Min?: number; /** - *The key.
+ *The maximum baseline bandwidth, in Mbps. If this parameter is not specified, there is no + * maximum limit.
*/ - Key?: string; + Max?: number; } -export namespace StorageLocation { +export namespace BaselineEbsBandwidthMbps { /** * @internal */ - export const filterSensitiveLog = (obj: StorageLocation): any => ({ + export const filterSensitiveLog = (obj: BaselineEbsBandwidthMbps): any => ({ ...obj, }); } -export interface CreateFpgaImageRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The location of the encrypted design checkpoint in Amazon S3. The input must be a tarball.
- */ - InputStorageLocation: StorageLocation | undefined; - +/** + *The minimum and maximum amount of memory per vCPU, in GiB.
+ * + */ +export interface MemoryGiBPerVCpu { /** - *The location in Amazon S3 for the output logs.
+ *The minimum amount of memory per vCPU, in GiB. If this parameter is not specified, there is + * no minimum limit.
*/ - LogsStorageLocation?: StorageLocation; + Min?: number; /** - *A description for the AFI.
+ *The maximum amount of memory per vCPU, in GiB. If this parameter is not specified, there is + * no maximum limit.
*/ - Description?: string; + Max?: number; +} +export namespace MemoryGiBPerVCpu { /** - *A name for the AFI.
+ * @internal */ - Name?: string; + export const filterSensitiveLog = (obj: MemoryGiBPerVCpu): any => ({ + ...obj, + }); +} +/** + *The minimum and maximum amount of memory, in MiB.
+ */ +export interface MemoryMiB { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. - * For more information, see Ensuring Idempotency.
+ *The minimum amount of memory, in MiB. If this parameter is not specified, there is no minimum + * limit.
*/ - ClientToken?: string; + Min?: number; /** - *The tags to apply to the FPGA image during creation.
+ *The maximum amount of memory, in MiB. If this parameter is not specified, there is no + * maximum limit.
*/ - TagSpecifications?: TagSpecification[]; + Max?: number; } -export namespace CreateFpgaImageRequest { +export namespace MemoryMiB { /** * @internal */ - export const filterSensitiveLog = (obj: CreateFpgaImageRequest): any => ({ + export const filterSensitiveLog = (obj: MemoryMiB): any => ({ ...obj, }); } -export interface CreateFpgaImageResult { +/** + *The minimum and maximum number of network interfaces.
+ */ +export interface NetworkInterfaceCount { /** - *The FPGA image identifier (AFI ID).
+ *The minimum number of network interfaces. If this parameter is not specified, there is no + * minimum limit.
*/ - FpgaImageId?: string; + Min?: number; /** - *The global FPGA image identifier (AGFI ID).
+ *The maximum number of network interfaces. If this parameter is not specified, there is no + * maximum limit.
*/ - FpgaImageGlobalId?: string; + Max?: number; } -export namespace CreateFpgaImageResult { +export namespace NetworkInterfaceCount { /** * @internal */ - export const filterSensitiveLog = (obj: CreateFpgaImageResult): any => ({ + export const filterSensitiveLog = (obj: NetworkInterfaceCount): any => ({ ...obj, }); } -export type VolumeType = "gp2" | "gp3" | "io1" | "io2" | "sc1" | "st1" | "standard"; - /** - *Describes a block device for an EBS volume.
+ *The minimum and maximum amount of total local storage, in GB.
*/ -export interface EbsBlockDevice { +export interface TotalLocalStorageGB { /** - *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.
+ *The minimum amount of total local storage, in GB. If this parameter is not specified, there is + * no minimum limit.
*/ - DeleteOnTermination?: boolean; + Min?: number; /** - *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.
The maximum amount of total local storage, in GB. If this parameter is not specified, there is + * no maximum limit.
*/ - Iops?: number; + Max?: number; +} +export namespace TotalLocalStorageGB { /** - *The ID of the snapshot.
+ * @internal */ - SnapshotId?: string; + export const filterSensitiveLog = (obj: TotalLocalStorageGB): any => ({ + ...obj, + }); +} + +/** + *The minimum and maximum number of vCPUs.
+ */ +export interface VCpuCountRange { + /** + *The minimum number of vCPUs. If the value is 0
, there is no minimum
+ * limit.
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
The maximum number of vCPUs. If this parameter is not specified, there is no maximum + * limit.
+ */ + Max?: number; +} + +export namespace VCpuCountRange { + /** + * @internal + */ + export const filterSensitiveLog = (obj: VCpuCountRange): any => ({ + ...obj, + }); +} + +/** + *The attributes for the instance types. When you specify instance attributes, Amazon EC2 will + * identify instance types with these attributes.
+ *When you specify multiple parameters, you get instance types that satisfy all of the + * specified parameters. If you specify multiple values for a parameter, you get instance + * types that satisfy any of the specified values.
+ *You must specify VCpuCount
and MemoryMiB
. All other parameters
+ * are optional. Any unspecified optional parameter is set to its default.
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.
+ */ +export interface InstanceRequirements { + /** + *The minimum and maximum number of vCPUs.
+ */ + VCpuCount?: VCpuCountRange; + + /** + *The minimum and maximum amount of memory, in MiB.
+ */ + MemoryMiB?: MemoryMiB; + + /** + *The CPU manufacturers to include.
+ *
- * io1
and io2
: 4-16,384
For instance types with Intel CPUs, specify intel
.
- * st1
and sc1
: 125-16,384
For instance types with AMD CPUs, specify amd
.
- * standard
: 1-1,024
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
*/ - VolumeSize?: number; - - /** - *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.
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.
The minimum and maximum amount of memory per vCPU, in GiB.
+ *Default: No minimum or maximum limits
*/ - KmsKeyId?: string; + MemoryGiBPerVCpu?: MemoryGiBPerVCpu; /** - *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.
+ *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.
Default: No excluded instance types
*/ - Throughput?: number; + ExcludedInstanceTypes?: string[]; /** - *The ARN of the Outpost on which the snapshot is stored.
+ *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
*/ - OutpostArn?: string; + InstanceGenerations?: (InstanceGeneration | string)[]; /** - *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 .
+ *The price protection threshold for Spot Instances. This is the maximum you’ll pay for a Spot Instance, + * expressed as a percentage above the cheapest 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.
+ *Default: 100
+ *
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 cheapest 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.
+ *Default: 20
+ *
Describes a block device mapping, which defines the EBS volumes and instance store - * volumes to attach to an instance at launch.
- */ -export interface BlockDeviceMapping { /** - *The device name (for example, /dev/sdh
or xvdh
).
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
+ *
The virtual device name (ephemeral
N). 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.
+ *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
+ *
Parameters used to automatically set up EBS volumes when the instance is - * launched.
+ *Indicates whether instance types must support hibernation for On-Demand + * Instances.
+ *This parameter is not supported for GetSpotPlacementScores.
+ *Default: false
+ *
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.
+ *The minimum and maximum number of network interfaces.
+ *Default: No minimum or maximum limits
*/ - NoDevice?: string; -} + NetworkInterfaceCount?: NetworkInterfaceCount; -export namespace BlockDeviceMapping { /** - * @internal + *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
+ *
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.
+ *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 (SDD) storage, specify sdd
.
Default: hdd
and sdd
+ *
A description for the new image.
+ *The minimum and maximum amount of total local storage, in GB.
+ *Default: No minimum or maximum limits
*/ - Description?: string; + TotalLocalStorageGB?: TotalLocalStorageGB; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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
*/ - DryRun?: boolean; + BaselineEbsBandwidthMbps?: BaselineEbsBandwidthMbps; /** - *The ID of the instance.
+ *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
*/ - InstanceId: string | undefined; + AcceleratorTypes?: (AcceleratorType | string)[]; /** - *A name for the new image.
- *Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)
+ *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
*/ - Name: string | undefined; + AcceleratorCount?: AcceleratorCount; /** - *By default, Amazon EC2 attempts to shut down and reboot the instance before creating the image.
- * If the No Reboot
option is set, Amazon EC2 doesn't shut down the instance before creating
- * the image. Without a reboot, the AMI will be crash consistent (all the volumes are snapshotted
- * at the same time), but not application consistent (all the operating system buffers are not flushed
- * to disk before the snapshots are created).
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
*/ - NoReboot?: boolean; + AcceleratorManufacturers?: (AcceleratorManufacturer | string)[]; /** - *The tags to apply to the AMI and snapshots on creation. You can tag the AMI, the - * snapshots, or both.
+ *The accelerators that must be on the instance type.
*To tag the AMI, the value for ResourceType
must be
- * image
.
For instance types with NVIDIA A100 GPUs, specify a100
.
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.
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
.
If you specify other values for ResourceType
, the request fails.
To tag an AMI or snapshot after it has been created, see CreateTags.
+ *Default: Any accelerator
*/ - TagSpecifications?: TagSpecification[]; + AcceleratorNames?: (AcceleratorName | string)[]; + + /** + *The minimum and maximum amount of total accelerator memory, in MiB.
+ *Default: No minimum or maximum limits
+ */ + AcceleratorTotalMemoryMiB?: AcceleratorTotalMemoryMiB; } -export namespace CreateImageRequest { +export namespace InstanceRequirements { /** * @internal */ - export const filterSensitiveLog = (obj: CreateImageRequest): any => ({ + export const filterSensitiveLog = (obj: InstanceRequirements): any => ({ ...obj, }); } -export interface CreateImageResult { +/** + *Describes the placement of an instance.
+ */ +export interface PlacementResponse { /** - *The ID of the new AMI.
+ *The name of the placement group that the instance is in.
*/ - ImageId?: string; + GroupName?: string; } -export namespace CreateImageResult { +export namespace PlacementResponse { /** * @internal */ - export const filterSensitiveLog = (obj: CreateImageResult): any => ({ + export const filterSensitiveLog = (obj: PlacementResponse): any => ({ ...obj, }); } /** - *The start day and time and the end day and time of the time range, in UTC.
+ *Describes overrides for a launch template.
*/ -export interface InstanceEventWindowTimeRangeRequest { - /** - *The day on which the time range begins.
- */ - StartWeekDay?: WeekDay | string; - - /** - *The hour when the time range begins.
- */ - StartHour?: number; - +export interface FleetLaunchTemplateOverrides { /** - *The day on which the time range ends.
+ *The instance type.
+ *If you specify InstanceTypes
, you can't specify
+ * InstanceRequirements
.
The hour when the time range ends.
+ *The maximum price per unit hour that you are willing to pay for a Spot Instance.
*/ - EndHour?: number; -} + MaxPrice?: string; -export namespace InstanceEventWindowTimeRangeRequest { /** - * @internal + *The ID of the subnet in which to launch the instances.
*/ - export const filterSensitiveLog = (obj: InstanceEventWindowTimeRangeRequest): any => ({ - ...obj, - }); -} + SubnetId?: string; -export interface CreateInstanceEventWindowRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Availability Zone in which to launch the instances.
*/ - DryRun?: boolean; + AvailabilityZone?: string; /** - *The name of the event window.
+ *The number of units provided by the specified instance type.
*/ - Name?: string; + WeightedCapacity?: number; /** - *The time range for the event window. If you specify a time range, you can't specify a cron - * expression.
+ *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.
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.
+ *The location where the instance launched, if applicable.
*/ - CronExpression?: string; + Placement?: PlacementResponse; /** - *The tags to apply to the event window.
+ *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
+ * InstanceTypes
.
Describes a launch template and overrides.
+ */ +export interface LaunchTemplateAndOverridesResponse { /** - *Information about the event window.
+ *The launch template.
*/ - InstanceEventWindow?: InstanceEventWindow; + LaunchTemplateSpecification?: FleetLaunchTemplateSpecification; + + /** + *Any parameters that you specify override the same parameters in the launch + * template.
+ */ + Overrides?: FleetLaunchTemplateOverrides; } -export namespace CreateInstanceEventWindowResult { +export namespace LaunchTemplateAndOverridesResponse { /** * @internal */ - export const filterSensitiveLog = (obj: CreateInstanceEventWindowResult): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateAndOverridesResponse): any => ({ ...obj, }); } -export type ContainerFormat = "ova"; - -export type DiskImageFormat = "RAW" | "VHD" | "VMDK"; +export enum InstanceLifecycle { + ON_DEMAND = "on-demand", + SPOT = "spot", +} /** - *Describes an export instance task.
+ *Describes the instances that could not be launched by the fleet.
*/ -export interface ExportToS3TaskSpecification { +export interface CreateFleetError { /** - *The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is - * exported.
+ *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.
*/ - ContainerFormat?: ContainerFormat | string; + LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse; /** - *The format for the exported image.
+ *Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.
*/ - DiskImageFormat?: DiskImageFormat | string; + Lifecycle?: InstanceLifecycle | string; /** - *The Amazon S3 bucket for the destination image. The destination bucket must exist and grant
- * WRITE and READ_ACP permissions to the Amazon Web Services account vm-import-export@amazon.com
.
The error code that indicates why the instance could not be launched. For more + * information about error codes, see Error Codes.
*/ - S3Bucket?: string; + ErrorCode?: string; /** - *The image is written to a single object in the Amazon S3 bucket at the S3 key s3prefix + - * exportTaskId + '.' + diskImageFormat.
+ *The error message that describes why the instance could not be launched. For more + * information about error messages, see Error Codes.
*/ - S3Prefix?: string; + ErrorMessage?: string; } -export namespace ExportToS3TaskSpecification { +export namespace CreateFleetError { /** * @internal */ - export const filterSensitiveLog = (obj: ExportToS3TaskSpecification): any => ({ + export const filterSensitiveLog = (obj: CreateFleetError): any => ({ ...obj, }); } -export type ExportEnvironment = "citrix" | "microsoft" | "vmware"; +export type PlatformValues = "Windows"; -export interface CreateInstanceExportTaskRequest { +/** + *Describes the instances that were launched by the fleet.
+ */ +export interface CreateFleetInstance { /** - *A description for the conversion task or the resource being exported. The maximum length is 255 characters.
+ *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.
*/ - Description?: string; + LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse; /** - *The format and location for an export instance task.
+ *Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.
*/ - ExportToS3Task: ExportToS3TaskSpecification | undefined; + Lifecycle?: InstanceLifecycle | string; /** - *The ID of the instance.
+ *The IDs of the instances.
*/ - InstanceId: string | undefined; + InstanceIds?: string[]; /** - *The target virtualization environment.
+ *The instance type.
*/ - TargetEnvironment: ExportEnvironment | string | undefined; + InstanceType?: _InstanceType | string; /** - *The tags to apply to the export instance task during creation.
+ *The value is Windows
for Windows instances. Otherwise, the value is
+ * blank.
Describes the format and location for the export task.
- */ -export interface ExportToS3Task { - /** - *The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is - * exported.
- */ - ContainerFormat?: ContainerFormat | string; - +export interface CreateFleetResult { /** - *The format for the exported image.
+ *The ID of the EC2 Fleet.
*/ - DiskImageFormat?: DiskImageFormat | string; + FleetId?: string; /** - *The Amazon S3 bucket for the destination image. The destination bucket must exist and grant
- * WRITE and READ_ACP permissions to the Amazon Web Services account vm-import-export@amazon.com
.
Information about the instances that could not be launched by the fleet. Supported only for
+ * fleets of type instant
.
The encryption key for your S3 bucket.
+ *Information about the instances that were launched by the fleet. Supported only for
+ * fleets of type instant
.
Describes an instance to export.
+ *Describes the destination options for a flow log.
*/ -export interface InstanceExportDetails { +export interface DestinationOptionsRequest { /** - *The ID of the resource being exported.
+ *The format for the flow log. The default is plain-text
.
The target virtualization environment.
+ *Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3.
+ * The default is false
.
Indicates whether to partition the flow log per hour. This reduces the cost and response
+ * time for queries. The default is false
.
Describes an export instance task.
- */ -export interface ExportTask { +export type FlowLogsResourceType = "NetworkInterface" | "Subnet" | "VPC"; + +export type TrafficType = "ACCEPT" | "ALL" | "REJECT"; + +export interface CreateFlowLogsRequest { /** - *A description of the resource being exported.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the export task.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. For more information, see How to ensure + * idempotency.
*/ - ExportTaskId?: string; + ClientToken?: string; /** - *Information about the export task.
+ *The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group + * in your account.
+ *If you specify LogDestinationType
as s3
, do not specify
+ * DeliverLogsPermissionArn
or LogGroupName
.
Information about the instance to export.
+ *The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs.
+ *If you specify LogDestinationType
as s3
, do not specify
+ * DeliverLogsPermissionArn
or LogGroupName
.
The state of the export task.
+ *The ID of the subnet, network interface, or VPC for which you want to create a flow log.
+ *Constraints: Maximum of 1000 resources
*/ - State?: ExportTaskState | string; + ResourceIds: string[] | undefined; /** - *The status message related to the export task.
+ *The type of resource for which to create the flow log. For example, if you specified a VPC ID for
+ * the ResourceId
property, specify VPC
for this property.
The tags for the export task.
+ *The type of traffic to log. You can log traffic that the resource accepts or rejects, or all traffic.
*/ - Tags?: Tag[]; -} + TrafficType: TrafficType | string | undefined; -export namespace ExportTask { /** - * @internal + *The type of destination to which the flow log data is to be published. Flow log data can be
+ * published to CloudWatch Logs or Amazon S3. To publish flow log data to CloudWatch Logs, specify cloud-watch-logs
. To
+ * publish flow log data to Amazon S3, specify s3
.
If you specify LogDestinationType
as s3
, do not specify
+ * DeliverLogsPermissionArn
or LogGroupName
.
Default: cloud-watch-logs
+ *
Information about the export instance task.
+ *The destination to which the flow log data is to be published. Flow log data can be published
+ * to a CloudWatch Logs log group or an Amazon S3 bucket. The value specified for this parameter depends on the value specified
+ * for LogDestinationType
.
If LogDestinationType
is not specified or cloud-watch-logs
,
+ * specify the Amazon Resource Name (ARN) of the CloudWatch Logs log group. For example, to publish
+ * to a log group called my-logs
, specify
+ * arn:aws:logs:us-east-1:123456789012:log-group:my-logs
. Alternatively,
+ * use LogGroupName
instead.
If LogDestinationType is s3
, specify the ARN of the Amazon S3 bucket. You can also specify a
+ * subfolder in the bucket. To specify a subfolder in the bucket, use the following ARN format:
+ * bucket_ARN/subfolder_name/
. For example, to specify a subfolder named my-logs
in a
+ * bucket named my-bucket
, use the following ARN: arn:aws:s3:::my-bucket/my-logs/
. You
+ * cannot use AWSLogs
as a subfolder name. This is a reserved term.
The fields to include in the flow log record, in the order in which they should + * appear. For a list of available fields, see Flow log records. If you + * omit this parameter, the flow log is created using the default format. If you specify this parameter, + * you must specify at least one field.
+ *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.
The tags to assign to the internet gateway.
+ *The tags to apply to the flow logs.
*/ TagSpecifications?: TagSpecification[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. You can specify 60 seconds (1 minute) or 600 seconds (10 minutes).
+ *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
*/ - DryRun?: boolean; + MaxAggregationInterval?: number; + + /** + *The destination options.
+ */ + DestinationOptions?: DestinationOptionsRequest; } -export namespace CreateInternetGatewayRequest { +export namespace CreateFlowLogsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateInternetGatewayRequest): any => ({ + export const filterSensitiveLog = (obj: CreateFlowLogsRequest): any => ({ ...obj, }); } -/** - *Describes an internet gateway.
- */ -export interface InternetGateway { - /** - *Any VPCs attached to the internet gateway.
- */ - Attachments?: InternetGatewayAttachment[]; - +export interface CreateFlowLogsResult { /** - *The ID of the internet gateway.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request.
*/ - InternetGatewayId?: string; + ClientToken?: string; /** - *The ID of the Amazon Web Services account that owns the internet gateway.
+ *The IDs of the flow logs.
*/ - OwnerId?: string; + FlowLogIds?: string[]; /** - *Any tags assigned to the internet gateway.
+ *Information about the flow logs that could not be created successfully.
*/ - Tags?: Tag[]; + Unsuccessful?: UnsuccessfulItem[]; } -export namespace InternetGateway { +export namespace CreateFlowLogsResult { /** * @internal */ - export const filterSensitiveLog = (obj: InternetGateway): any => ({ + export const filterSensitiveLog = (obj: CreateFlowLogsResult): any => ({ ...obj, }); } -export interface CreateInternetGatewayResult { +/** + *Describes a storage location in Amazon S3.
+ */ +export interface StorageLocation { /** - *Information about the internet gateway.
+ *The name of the S3 bucket.
*/ - InternetGateway?: InternetGateway; + Bucket?: string; + + /** + *The key.
+ */ + Key?: string; } -export namespace CreateInternetGatewayResult { +export namespace StorageLocation { /** * @internal */ - export const filterSensitiveLog = (obj: CreateInternetGatewayResult): any => ({ + export const filterSensitiveLog = (obj: StorageLocation): any => ({ ...obj, }); } -export enum KeyType { - ed25519 = "ed25519", - rsa = "rsa", -} +export interface CreateFpgaImageRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
A unique name for the key pair.
- *Constraints: Up to 255 ASCII characters
+ *The location of the encrypted design checkpoint in Amazon S3. The input must be a tarball.
*/ - KeyName: string | undefined; + InputStorageLocation: StorageLocation | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The location in Amazon S3 for the output logs.
+ */ + LogsStorageLocation?: StorageLocation; + + /** + *A description for the AFI.
+ */ + Description?: string; + + /** + *A name for the AFI.
*/ - DryRun?: boolean; + Name?: string; /** - *The type of key pair. Note that ED25519 keys are not supported for Windows instances, EC2 Instance Connect, and EC2 Serial Console.
- *Default: rsa
- *
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. + * For more information, see Ensuring Idempotency.
*/ - KeyType?: KeyType | string; + ClientToken?: string; /** - *The tags to apply to the new key pair.
+ *The tags to apply to the FPGA image during creation.
*/ TagSpecifications?: TagSpecification[]; } -export namespace CreateKeyPairRequest { +export namespace CreateFpgaImageRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateKeyPairRequest): any => ({ + export const filterSensitiveLog = (obj: CreateFpgaImageRequest): any => ({ ...obj, }); } -/** - *Describes a key pair.
- */ -export interface KeyPair { - /** - *The SHA-1 digest of the DER encoded private key.
- */ - KeyFingerprint?: string; - - /** - *An unencrypted PEM encoded RSA or ED25519 private key.
- */ - KeyMaterial?: string; - - /** - *The name of the key pair.
- */ - KeyName?: string; - +export interface CreateFpgaImageResult { /** - *The ID of the key pair.
+ *The FPGA image identifier (AFI ID).
*/ - KeyPairId?: string; + FpgaImageId?: string; /** - *Any tags applied to the key pair.
+ *The global FPGA image identifier (AGFI ID).
*/ - Tags?: Tag[]; + FpgaImageGlobalId?: string; } -export namespace KeyPair { +export namespace CreateFpgaImageResult { /** * @internal */ - export const filterSensitiveLog = (obj: KeyPair): any => ({ + export const filterSensitiveLog = (obj: CreateFpgaImageResult): any => ({ ...obj, - ...(obj.KeyMaterial && { KeyMaterial: SENSITIVE_STRING }), }); } +export type VolumeType = "gp2" | "gp3" | "io1" | "io2" | "sc1" | "st1" | "standard"; + /** - *The parameters for a block device for an EBS volume.
+ *Describes a block device for an EBS volume.
*/ -export interface LaunchTemplateEbsBlockDeviceRequest { - /** - *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.
- */ - Encrypted?: boolean; - +export interface EbsBlockDevice { /** - *Indicates whether the EBS volume is deleted on instance termination.
+ *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.
*/ DeleteOnTermination?: boolean; /** - *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 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:
*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.
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.
The ARN of the symmetric Key Management Service (KMS) CMK used for - * encryption.
- */ - KmsKeyId?: string; - /** *The ID of the snapshot.
*/ SnapshotId?: string; /** - *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:
+ *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
gp2
and gp3
:1-16,384
* @@ -1819,1237 +2187,1301 @@ export interface LaunchTemplateEbsBlockDeviceRequest { *
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.
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.
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.
+ */ + Throughput?: number; + + /** + *The ARN of the Outpost on which the snapshot is stored.
+ */ + OutpostArn?: string; + + /** + *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 .
+ */ + Encrypted?: boolean; +} + +export namespace EbsBlockDevice { + /** + * @internal + */ + export const filterSensitiveLog = (obj: EbsBlockDevice): any => ({ + ...obj, + }); +} + +/** + *Describes a block device mapping, which defines the EBS volumes and instance store + * volumes to attach to an instance at launch.
+ */ +export interface BlockDeviceMapping { + /** + *The device name (for example, /dev/sdh
or xvdh
).
The virtual device name (ephemeral
N). 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.
+ */ + VirtualName?: string; + + /** + *Parameters used to automatically set up EBS volumes when the instance is + * launched.
+ */ + Ebs?: EbsBlockDevice; + + /** + *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.
+ */ + NoDevice?: string; +} + +export namespace BlockDeviceMapping { + /** + * @internal + */ + export const filterSensitiveLog = (obj: BlockDeviceMapping): any => ({ + ...obj, + }); +} + +export interface CreateImageRequest { + /** + *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.
+ */ + BlockDeviceMappings?: BlockDeviceMapping[]; + + /** + *A description for the new image.
+ */ + Description?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the instance.
+ */ + InstanceId: string | undefined; + + /** + *A name for the new image.
+ *Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)
+ */ + Name: string | undefined; + + /** + *By default, Amazon EC2 attempts to shut down and reboot the instance before creating the image.
+ * If the No Reboot
option is set, Amazon EC2 doesn't shut down the instance before creating
+ * the image. Without a reboot, the AMI will be crash consistent (all the volumes are snapshotted
+ * at the same time), but not application consistent (all the operating system buffers are not flushed
+ * to disk before the snapshots are created).
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.
+ */ + TagSpecifications?: TagSpecification[]; +} +export namespace CreateImageRequest { /** - *The volume type. For more information, see Amazon EBS volume types in the - * Amazon Elastic Compute Cloud User Guide.
+ * @internal */ - VolumeType?: VolumeType | string; + export const filterSensitiveLog = (obj: CreateImageRequest): any => ({ + ...obj, + }); +} +export interface CreateImageResult { /** - *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.
+ *The ID of the new AMI.
*/ - Throughput?: number; + ImageId?: string; } -export namespace LaunchTemplateEbsBlockDeviceRequest { +export namespace CreateImageResult { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateEbsBlockDeviceRequest): any => ({ + export const filterSensitiveLog = (obj: CreateImageResult): any => ({ ...obj, }); } /** - *Describes a block device mapping.
+ *The start day and time and the end day and time of the time range, in UTC.
*/ -export interface LaunchTemplateBlockDeviceMappingRequest { +export interface InstanceEventWindowTimeRangeRequest { /** - *The device name (for example, /dev/sdh or xvdh).
+ *The day on which the time range begins.
*/ - DeviceName?: string; + StartWeekDay?: WeekDay | string; /** - *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.
+ *The hour when the time range begins.
*/ - VirtualName?: string; + StartHour?: number; /** - *Parameters used to automatically set up EBS volumes when the instance is launched.
+ *The day on which the time range ends.
*/ - Ebs?: LaunchTemplateEbsBlockDeviceRequest; + EndWeekDay?: WeekDay | string; /** - *To omit the device from the block device mapping, specify an empty string.
+ *The hour when the time range ends.
*/ - NoDevice?: string; + EndHour?: number; } -export namespace LaunchTemplateBlockDeviceMappingRequest { +export namespace InstanceEventWindowTimeRangeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateBlockDeviceMappingRequest): any => ({ + export const filterSensitiveLog = (obj: InstanceEventWindowTimeRangeRequest): any => ({ ...obj, }); } -export type CapacityReservationPreference = "none" | "open"; - -/** - *Describes a target Capacity Reservation or Capacity Reservation group.
- */ -export interface CapacityReservationTarget { +export interface CreateInstanceEventWindowRequest { /** - *The ID of the Capacity Reservation in which to run the instance.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ARN of the Capacity Reservation resource group in which to run the instance.
+ *The name of the event window.
*/ - CapacityReservationResourceGroupArn?: string; -} + Name?: string; -export namespace CapacityReservationTarget { /** - * @internal + *The time range for the event window. If you specify a time range, you can't specify a cron + * expression.
*/ - export const filterSensitiveLog = (obj: CapacityReservationTarget): any => ({ - ...obj, - }); -} + TimeRanges?: InstanceEventWindowTimeRangeRequest[]; -/** - *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.
Indicates the instance's Capacity Reservation preferences. Possible preferences include:
- *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:
+ *
- * open
- The instance can run in any open
Capacity Reservation that has matching attributes
- * (instance type, platform, Availability Zone).
Only hour and day of the week values are supported.
*
- * none
- The instance avoids running in a Capacity Reservation even if one is available. The instance
- * runs in On-Demand capacity.
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.
*/ - CapacityReservationPreference?: CapacityReservationPreference | string; + CronExpression?: string; /** - *Information about the target Capacity Reservation or Capacity Reservation group.
+ *The tags to apply to the event window.
*/ - CapacityReservationTarget?: CapacityReservationTarget; + TagSpecifications?: TagSpecification[]; } -export namespace LaunchTemplateCapacityReservationSpecificationRequest { +export namespace CreateInstanceEventWindowRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateCapacityReservationSpecificationRequest): any => ({ + export const filterSensitiveLog = (obj: CreateInstanceEventWindowRequest): any => ({ ...obj, }); } -/** - *The CPU options for the instance. Both the core count and threads per core - * must be specified in the request.
- */ -export interface LaunchTemplateCpuOptionsRequest { - /** - *The number of CPU cores for the instance.
- */ - CoreCount?: number; - +export interface CreateInstanceEventWindowResult { /** - *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.
+ *Information about the event window.
*/ - ThreadsPerCore?: number; + InstanceEventWindow?: InstanceEventWindow; } -export namespace LaunchTemplateCpuOptionsRequest { +export namespace CreateInstanceEventWindowResult { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateCpuOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: CreateInstanceEventWindowResult): any => ({ ...obj, }); } -/** - *The credit option for CPU usage of a T2, T3, or T3a instance.
- */ -export interface CreditSpecificationRequest { - /** - *The credit option for CPU usage of a T2, T3, or T3a instance. Valid values are
- * standard
and unlimited
.
A specification for an Elastic Graphics accelerator.
+ *Describes an export instance task.
*/ -export interface ElasticGpuSpecification { +export interface ExportToS3TaskSpecification { /** - *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.
The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is + * exported.
*/ - Type: string | undefined; -} + ContainerFormat?: ContainerFormat | string; -export namespace ElasticGpuSpecification { /** - * @internal + *The format for the exported image.
*/ - export const filterSensitiveLog = (obj: ElasticGpuSpecification): any => ({ - ...obj, - }); -} + DiskImageFormat?: DiskImageFormat | string; -/** - *- * Describes an elastic inference accelerator. - *
- */ -export interface LaunchTemplateElasticInferenceAccelerator { /** - *- * The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge. - *
+ *The Amazon S3 bucket for the destination image. The destination bucket must exist and grant
+ * WRITE and READ_ACP permissions to the Amazon Web Services account vm-import-export@amazon.com
.
- * The number of elastic inference accelerators to attach to the instance. - *
- *Default: 1
+ *The image is written to a single object in the Amazon S3 bucket at the S3 key s3prefix + + * exportTaskId + '.' + diskImageFormat.
*/ - Count?: number; + S3Prefix?: string; } -export namespace LaunchTemplateElasticInferenceAccelerator { +export namespace ExportToS3TaskSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateElasticInferenceAccelerator): any => ({ + export const filterSensitiveLog = (obj: ExportToS3TaskSpecification): any => ({ ...obj, }); } -/** - *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.
- */ -export interface LaunchTemplateEnclaveOptionsRequest { - /** - *To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to true
.
A description for the conversion task or the resource being exported. The maximum length is 255 characters.
*/ - export const filterSensitiveLog = (obj: LaunchTemplateEnclaveOptionsRequest): any => ({ - ...obj, - }); -} + Description?: string; -/** - *Indicates whether the instance is configured for hibernation. This parameter is valid only - * if the instance meets the hibernation - * prerequisites.
- */ -export interface LaunchTemplateHibernationOptionsRequest { /** - *If you set this parameter to true
, the instance is enabled for hibernation.
Default: false
- *
The format and location for an export instance task.
*/ - Configured?: boolean; -} + ExportToS3Task: ExportToS3TaskSpecification | undefined; -export namespace LaunchTemplateHibernationOptionsRequest { /** - * @internal + *The ID of the instance.
*/ - export const filterSensitiveLog = (obj: LaunchTemplateHibernationOptionsRequest): any => ({ - ...obj, - }); -} + InstanceId: string | undefined; -/** - *An IAM instance profile.
- */ -export interface LaunchTemplateIamInstanceProfileSpecificationRequest { /** - *The Amazon Resource Name (ARN) of the instance profile.
+ *The target virtualization environment.
*/ - Arn?: string; + TargetEnvironment: ExportEnvironment | string | undefined; /** - *The name of the instance profile.
+ *The tags to apply to the export instance task during creation.
*/ - Name?: string; + TagSpecifications?: TagSpecification[]; } -export namespace LaunchTemplateIamInstanceProfileSpecificationRequest { +export namespace CreateInstanceExportTaskRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateIamInstanceProfileSpecificationRequest): any => ({ + export const filterSensitiveLog = (obj: CreateInstanceExportTaskRequest): any => ({ ...obj, }); } -export type ShutdownBehavior = "stop" | "terminate"; - -export type MarketType = "spot"; - -export type InstanceInterruptionBehavior = "hibernate" | "stop" | "terminate"; - -export type SpotInstanceType = "one-time" | "persistent"; - /** - *The options for Spot Instances.
+ *Describes the format and location for the export task.
*/ -export interface LaunchTemplateSpotMarketOptionsRequest { - /** - *The maximum hourly price you're willing to pay for the Spot Instances.
- */ - MaxPrice?: string; - +export interface ExportToS3Task { /** - *The Spot Instance request type.
+ *The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is + * exported.
*/ - SpotInstanceType?: SpotInstanceType | string; + ContainerFormat?: ContainerFormat | string; /** - *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).
+ *The format for the exported image.
*/ - BlockDurationMinutes?: number; + DiskImageFormat?: DiskImageFormat | string; /** - *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. - * The default end date is 7 days from the current date.
+ *The Amazon S3 bucket for the destination image. The destination bucket must exist and grant
+ * WRITE and READ_ACP permissions to the Amazon Web Services account vm-import-export@amazon.com
.
The behavior when a Spot Instance is interrupted. The default is terminate
.
The encryption key for your S3 bucket.
*/ - InstanceInterruptionBehavior?: InstanceInterruptionBehavior | string; + S3Key?: string; } -export namespace LaunchTemplateSpotMarketOptionsRequest { +export namespace ExportToS3Task { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateSpotMarketOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: ExportToS3Task): any => ({ ...obj, }); } /** - *The market (purchasing) option for the instances.
+ *Describes an instance to export.
*/ -export interface LaunchTemplateInstanceMarketOptionsRequest { +export interface InstanceExportDetails { /** - *The market type.
+ *The ID of the resource being exported.
*/ - MarketType?: MarketType | string; + InstanceId?: string; /** - *The options for Spot Instances.
+ *The target virtualization environment.
*/ - SpotOptions?: LaunchTemplateSpotMarketOptionsRequest; + TargetEnvironment?: ExportEnvironment | string; } -export namespace LaunchTemplateInstanceMarketOptionsRequest { +export namespace InstanceExportDetails { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateInstanceMarketOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: InstanceExportDetails): any => ({ ...obj, }); } +export type ExportTaskState = "active" | "cancelled" | "cancelling" | "completed"; + /** - *Describes a license configuration.
+ *Describes an export instance task.
*/ -export interface LaunchTemplateLicenseConfigurationRequest { +export interface ExportTask { /** - *The Amazon Resource Name (ARN) of the license configuration.
+ *A description of the resource being exported.
*/ - LicenseConfigurationArn?: string; -} + Description?: string; -export namespace LaunchTemplateLicenseConfigurationRequest { /** - * @internal + *The ID of the export task.
*/ - export const filterSensitiveLog = (obj: LaunchTemplateLicenseConfigurationRequest): any => ({ - ...obj, - }); -} - -export type LaunchTemplateInstanceMetadataEndpointState = "disabled" | "enabled"; - -export enum LaunchTemplateInstanceMetadataProtocolIpv6 { - disabled = "disabled", - enabled = "enabled", -} + ExportTaskId?: string; -export enum LaunchTemplateHttpTokensState { - optional = "optional", - required = "required", -} + /** + *Information about the export task.
+ */ + ExportToS3Task?: ExportToS3Task; -/** - *The metadata options for the instance. For more information, see Instance Metadata and User Data in the - * Amazon Elastic Compute Cloud User Guide.
- */ -export interface LaunchTemplateInstanceMetadataOptionsRequest { /** - *The state of token usage for your instance metadata requests. If the parameter is not specified in the request, the default state is optional
.
If the state is optional
, you can choose to retrieve instance metadata with or without a signed token header on your request. If you retrieve the IAM role credentials without a token, the version 1.0 role credentials are returned. If you retrieve the IAM role credentials using a valid signed token, the version 2.0 role credentials are returned.
If the state is required
, you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns the version 2.0 credentials; the version 1.0 credentials are not available.
Information about the instance to export.
*/ - HttpTokens?: LaunchTemplateHttpTokensState | string; + InstanceExportDetails?: InstanceExportDetails; /** - *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
+ *The state of the export task.
*/ - HttpPutResponseHopLimit?: number; + State?: ExportTaskState | string; /** - *This parameter 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.
- *
The status message related to the export task.
*/ - HttpEndpoint?: LaunchTemplateInstanceMetadataEndpointState | string; + StatusMessage?: string; /** - *Enables or disables the IPv6 endpoint for the instance metadata service.
- *Default: disabled
- *
The tags for the export task.
*/ - HttpProtocolIpv6?: LaunchTemplateInstanceMetadataProtocolIpv6 | string; + Tags?: Tag[]; } -export namespace LaunchTemplateInstanceMetadataOptionsRequest { +export namespace ExportTask { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateInstanceMetadataOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: ExportTask): any => ({ ...obj, }); } -/** - *Describes the monitoring for the instance.
- */ -export interface LaunchTemplatesMonitoringRequest { +export interface CreateInstanceExportTaskResult { /** - *Specify true
to enable detailed monitoring. Otherwise, basic monitoring is enabled.
Information about the export instance task.
*/ - Enabled?: boolean; + ExportTask?: ExportTask; } -export namespace LaunchTemplatesMonitoringRequest { +export namespace CreateInstanceExportTaskResult { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplatesMonitoringRequest): any => ({ + export const filterSensitiveLog = (obj: CreateInstanceExportTaskResult): any => ({ ...obj, }); } -/** - *Describes the IPv4 prefix option for a network interface.
- */ -export interface Ipv4PrefixSpecificationRequest { +export interface CreateInternetGatewayRequest { /** - *The IPv4 prefix. For information, see - * Assigning prefixes to Amazon EC2 network interfaces in the - * Amazon Elastic Compute Cloud User Guide.
+ *The tags to assign to the internet gateway.
*/ - Ipv4Prefix?: string; + TagSpecifications?: TagSpecification[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes an IPv6 address.
+ *Describes an internet gateway.
*/ -export interface InstanceIpv6AddressRequest { +export interface InternetGateway { /** - *The IPv6 address.
+ *Any VPCs attached to the internet gateway.
*/ - Ipv6Address?: string; + Attachments?: InternetGatewayAttachment[]; + + /** + *The ID of the internet gateway.
+ */ + InternetGatewayId?: string; + + /** + *The ID of the Amazon Web Services account that owns the internet gateway.
+ */ + OwnerId?: string; + + /** + *Any tags assigned to the internet gateway.
+ */ + Tags?: Tag[]; } -export namespace InstanceIpv6AddressRequest { +export namespace InternetGateway { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceIpv6AddressRequest): any => ({ + export const filterSensitiveLog = (obj: InternetGateway): any => ({ ...obj, }); } -/** - *Describes the IPv4 prefix option for a network interface.
- */ -export interface Ipv6PrefixSpecificationRequest { +export interface CreateInternetGatewayResult { /** - *The IPv6 prefix.
+ *Information about the internet gateway.
*/ - Ipv6Prefix?: string; + InternetGateway?: InternetGateway; } -export namespace Ipv6PrefixSpecificationRequest { +export namespace CreateInternetGatewayResult { /** * @internal */ - export const filterSensitiveLog = (obj: Ipv6PrefixSpecificationRequest): any => ({ + export const filterSensitiveLog = (obj: CreateInternetGatewayResult): any => ({ ...obj, }); } -/** - *Describes a secondary private IPv4 address for a network interface.
- */ -export interface PrivateIpAddressSpecification { +export interface CreateIpamRequest { /** - *Indicates whether the private IPv4 address is the primary private IPv4 address. Only - * one IPv4 address can be designated as primary.
+ *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
.
The private IPv4 addresses.
+ *A description for the IPAM.
*/ - PrivateIpAddress?: string; + Description?: string; + + /** + *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. + *
+ */ + OperatingRegions?: AddIpamOperatingRegion[]; + + /** + *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.
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
+ */ + ClientToken?: string; } -export namespace PrivateIpAddressSpecification { +export namespace CreateIpamRequest { /** * @internal */ - export const filterSensitiveLog = (obj: PrivateIpAddressSpecification): any => ({ + export const filterSensitiveLog = (obj: CreateIpamRequest): any => ({ ...obj, }); } /** - *The parameters for a network interface.
- */ -export interface LaunchTemplateInstanceNetworkInterfaceSpecificationRequest { - /** - *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.
- */ - AssociateCarrierIpAddress?: boolean; - + *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.
+ */ +export interface IpamOperatingRegion { /** - *Associates a public IPv4 address with eth0 for a new network interface.
+ *The name of the operating Region.
*/ - AssociatePublicIpAddress?: boolean; + RegionName?: string; +} +export namespace IpamOperatingRegion { /** - *Indicates whether the network interface is deleted when the instance is terminated.
+ * @internal */ - DeleteOnTermination?: boolean; + export const filterSensitiveLog = (obj: IpamOperatingRegion): any => ({ + ...obj, + }); +} + +export enum IpamState { + create_complete = "create-complete", + create_failed = "create-failed", + create_in_progress = "create-in-progress", + delete_complete = "delete-complete", + delete_failed = "delete-failed", + delete_in_progress = "delete-in-progress", + modify_complete = "modify-complete", + modify_failed = "modify-failed", + modify_in_progress = "modify-in-progress", +} +/** + *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.
+ */ +export interface Ipam { /** - *A description for the network interface.
+ *The Amazon Web Services account ID of the owner of the IPAM.
*/ - Description?: string; + OwnerId?: string; /** - *The device index for the network interface attachment.
+ *The ID of the IPAM.
*/ - DeviceIndex?: number; + IpamId?: string; /** - *The IDs of one or more security groups.
+ *The ARN of the IPAM.
*/ - Groups?: string[]; + IpamArn?: string; /** - *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
- *
The Amazon Web Services Region of the IPAM.
*/ - InterfaceType?: string; + IpamRegion?: string; /** - *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.
+ *The ID of the IPAM's default public scope.
*/ - Ipv6AddressCount?: number; + PublicDefaultScopeId?: string; /** - *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.
+ *The ID of the IPAM's default private scope.
*/ - Ipv6Addresses?: InstanceIpv6AddressRequest[]; + PrivateDefaultScopeId?: string; /** - *The ID of the network interface.
+ *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. + *
*/ - NetworkInterfaceId?: string; + ScopeCount?: number; /** - *The primary private IPv4 address of the network interface.
+ *The description for the IPAM.
*/ - PrivateIpAddress?: string; + Description?: string; /** - *One or more private IPv4 addresses.
+ *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.
*/ - PrivateIpAddresses?: PrivateIpAddressSpecification[]; + OperatingRegions?: IpamOperatingRegion[]; /** - *The number of secondary private IPv4 addresses to assign to a network interface.
+ *The state of the IPAM.
*/ - SecondaryPrivateIpAddressCount?: number; + State?: IpamState | string; /** - *The ID of the subnet for the network interface.
+ *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.
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.
+ * @internal */ - NetworkCardIndex?: number; + export const filterSensitiveLog = (obj: Ipam): any => ({ + ...obj, + }); +} +export interface CreateIpamResult { /** - *One or more IPv4 prefixes to be assigned to the network interface. You cannot use
- * this option if you use the Ipv4PrefixCount
option.
Information about the IPAM created.
*/ - Ipv4Prefixes?: Ipv4PrefixSpecificationRequest[]; + Ipam?: Ipam; +} +export namespace CreateIpamResult { /** - *The number of IPv4 prefixes to be automatically assigned to the
- * network interface. You cannot use this option if you use the Ipv4Prefix
option.
A tag on an IPAM resource.
+ */ +export interface RequestIpamResourceTag { /** - *One or more IPv6 prefixes to be assigned to the network interface. You cannot
- * use this option if you use the Ipv6PrefixCount
option.
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.
*/ - Ipv6Prefixes?: Ipv6PrefixSpecificationRequest[]; + Key?: string; /** - *The number of IPv6 prefixes to be automatically assigned to the network
- * interface. You cannot use this option if you use the Ipv6Prefix
option.
The value for the tag.
*/ - Ipv6PrefixCount?: number; + Value?: string; } -export namespace LaunchTemplateInstanceNetworkInterfaceSpecificationRequest { +export namespace RequestIpamResourceTag { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateInstanceNetworkInterfaceSpecificationRequest): any => ({ + export const filterSensitiveLog = (obj: RequestIpamResourceTag): any => ({ ...obj, }); } -/** - *Describes the placement of an instance.
- */ -export interface LaunchTemplatePlacementRequest { +export enum IpamPoolAwsService { + ec2 = "ec2", +} + +export interface CreateIpamPoolRequest { /** - *The Availability Zone for the instance.
+ *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
.
The affinity setting for an instance on a Dedicated Host.
+ *The ID of the scope in which you would like to create the IPAM pool.
*/ - Affinity?: string; + IpamScopeId: string | undefined; /** - *The name of the placement group for the instance.
+ *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.
*/ - GroupName?: string; + Locale?: string; /** - *The ID of the Dedicated Host for the instance.
+ *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.
*/ - HostId?: string; + SourceIpamPoolId?: string; /** - *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.
+ *A description for the IPAM pool.
*/ - Tenancy?: Tenancy | string; + Description?: string; /** - *Reserved for future use.
+ *The IP protocol assigned to this IPAM pool. You must choose either IPv4 or IPv6 protocol for a pool.
*/ - SpreadDomain?: string; + AddressFamily?: AddressFamily | string; /** - *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
.
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.
*/ - HostResourceGroupArn?: string; + AutoImport?: boolean; /** - *The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition
.
Determines if the pool is publicly advertisable. This option is not available for pools with AddressFamily set to ipv4
.
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.
*/ - export const filterSensitiveLog = (obj: LaunchTemplatePlacementRequest): any => ({ - ...obj, - }); -} + AllocationMinNetmaskLength?: number; -/** - *Describes the options for instance hostnames.
- */ -export interface LaunchTemplatePrivateDnsNameOptionsRequest { /** - *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.
+ *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.
*/ - HostnameType?: HostnameType | string; + AllocationMaxNetmaskLength?: number; /** - *Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
+ *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.
*/ - EnableResourceNameDnsARecord?: boolean; + AllocationDefaultNetmaskLength?: number; /** - *Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
+ *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.
*/ - EnableResourceNameDnsAAAARecord?: boolean; -} + AllocationResourceTags?: RequestIpamResourceTag[]; -export namespace LaunchTemplatePrivateDnsNameOptionsRequest { /** - * @internal + *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.
The tags specification for the launch template.
- */ -export interface LaunchTemplateTagSpecificationRequest { /** - *The type of resource to tag. Currently, the resource types that support tagging on
- * creation are instance
and volume
. To tag a resource after it
- * has been created, see CreateTags.
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
*/ - ResourceType?: ResourceType | string; + ClientToken?: string; /** - *The tags to apply to the resource.
+ *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.
*/ - Tags?: Tag[]; + AwsService?: IpamPoolAwsService | string; } -export namespace LaunchTemplateTagSpecificationRequest { +export namespace CreateIpamPoolRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateTagSpecificationRequest): any => ({ + export const filterSensitiveLog = (obj: CreateIpamPoolRequest): any => ({ ...obj, }); } /** - *The information to include in the launch template.
+ *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.
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.
- *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.
- */ - EbsOptimized?: boolean; - +export interface IpamResourceTag { /** - *The name or Amazon Resource Name (ARN) of an IAM instance profile.
+ *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.
*/ - IamInstanceProfile?: LaunchTemplateIamInstanceProfileSpecificationRequest; + Key?: string; /** - *The block device mapping.
+ *The value of the tag.
*/ - BlockDeviceMappings?: LaunchTemplateBlockDeviceMappingRequest[]; + Value?: string; +} +export namespace IpamResourceTag { /** - *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.
+ * @internal */ - NetworkInterfaces?: LaunchTemplateInstanceNetworkInterfaceSpecificationRequest[]; + export const filterSensitiveLog = (obj: IpamResourceTag): any => ({ + ...obj, + }); +} - /** - *The ID of the AMI.
- */ - ImageId?: string; +export enum IpamScopeType { + private = "private", + public = "public", +} - /** - *The instance type. For more information, see Instance Types in the - * Amazon Elastic Compute Cloud User Guide.
- *If you specify InstanceTypes
, you can't specify
- * InstanceRequirements
.
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.
+ */ +export interface IpamPool { /** - *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.
- *The Amazon Web Services account ID of the owner of the IPAM pool.
*/ - KeyName?: string; + OwnerId?: string; /** - *The monitoring for the instance.
+ *The ID of the IPAM pool.
*/ - Monitoring?: LaunchTemplatesMonitoringRequest; + IpamPoolId?: string; /** - *The placement for the instance.
+ *The ID of the source IPAM pool. You can use this option to create an IPAM pool within an existing source pool.
*/ - Placement?: LaunchTemplatePlacementRequest; + SourceIpamPoolId?: string; /** - *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.
- *The ARN of the IPAM pool.
*/ - RamDiskId?: string; + IpamPoolArn?: string; /** - *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.
The ARN of the scope of the IPAM pool.
*/ - DisableApiTermination?: boolean; + IpamScopeArn?: string; /** - *Indicates whether an instance stops or terminates when you initiate shutdown from - * the instance (using the operating system command for system shutdown).
- *Default: stop
- *
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.
*/ - InstanceInitiatedShutdownBehavior?: ShutdownBehavior | string; + IpamScopeType?: IpamScopeType | string; /** - *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 Running Commands on Your Linux Instance - * at Launch (Linux) or Adding User Data (Windows).
- * - *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.
+ *The ARN of the IPAM.
*/ - UserData?: string; + IpamArn?: string; /** - *The tags to apply to the resources during launch. You can only tag instances and - * volumes on launch. The specified tags are applied to all instances or volumes that are - * created during launch. To tag a resource after it has been created, see CreateTags.
+ *The Amazon Web Services Region of the IPAM pool.
*/ - TagSpecifications?: LaunchTemplateTagSpecificationRequest[]; + IpamRegion?: string; /** - *An elastic GPU to associate with the instance.
+ *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.
*/ - ElasticGpuSpecifications?: ElasticGpuSpecification[]; + Locale?: string; /** - *- * The elastic inference accelerator for the instance. - *
+ *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. + *
*/ - ElasticInferenceAccelerators?: LaunchTemplateElasticInferenceAccelerator[]; + PoolDepth?: number; /** - *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.
+ *The state of the IPAM pool.
*/ - SecurityGroupIds?: string[]; - - /** - *[EC2-Classic, default VPC] 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.
+ State?: IpamPoolState | string; + + /** + *A message related to the failed creation of an IPAM pool.
*/ - SecurityGroups?: string[]; + StateMessage?: string; /** - *The market (purchasing) option for the instances.
+ *The description of the IPAM pool.
*/ - InstanceMarketOptions?: LaunchTemplateInstanceMarketOptionsRequest; + Description?: string; /** - *The credit option for CPU usage of the instance. Valid for T2, T3, or T3a instances - * only.
+ *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.
*/ - CreditSpecification?: CreditSpecificationRequest; + AutoImport?: boolean; /** - *The CPU options for the instance. For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User - * Guide.
+ *Determines if a pool is publicly advertisable. This option is not available for pools with AddressFamily set to ipv4
.
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).
The address family of the pool.
*/ - CapacityReservationSpecification?: LaunchTemplateCapacityReservationSpecificationRequest; + AddressFamily?: AddressFamily | string; /** - *The license configurations.
+ *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.
*/ - LicenseSpecifications?: LaunchTemplateLicenseConfigurationRequest[]; + AllocationMinNetmaskLength?: number; /** - *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.
+ *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.
*/ - HibernationOptions?: LaunchTemplateHibernationOptionsRequest; + AllocationMaxNetmaskLength?: number; /** - *The metadata options for the instance. For more information, see Instance metadata and user data in the - * Amazon Elastic Compute Cloud User Guide.
+ *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.
*/ - MetadataOptions?: LaunchTemplateInstanceMetadataOptionsRequest; + AllocationDefaultNetmaskLength?: number; /** - *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.
+ *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.
*/ - EnclaveOptions?: LaunchTemplateEnclaveOptionsRequest; + AllocationResourceTags?: IpamResourceTag[]; /** - *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
.
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.
The options for the instance hostname. The default values are inherited from the subnet.
+ *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.
*/ - PrivateDnsNameOptions?: LaunchTemplatePrivateDnsNameOptionsRequest; + AwsService?: IpamPoolAwsService | string; } -export namespace RequestLaunchTemplateData { +export namespace IpamPool { /** * @internal */ - export const filterSensitiveLog = (obj: RequestLaunchTemplateData): any => ({ + export const filterSensitiveLog = (obj: IpamPool): any => ({ ...obj, }); } -export interface CreateLaunchTemplateRequest { +export interface CreateIpamPoolResult { /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
Information about the IPAM pool created.
*/ - DryRun?: boolean; + IpamPool?: IpamPool; +} +export namespace CreateIpamPoolResult { /** - *Unique, case-sensitive identifier you provide to ensure the idempotency of the - * request. For more information, see Ensuring - * Idempotency.
- *Constraint: Maximum 128 ASCII characters.
+ * @internal */ - ClientToken?: string; + export const filterSensitiveLog = (obj: CreateIpamPoolResult): any => ({ + ...obj, + }); +} +export interface CreateIpamScopeRequest { /** - *A name for the launch template.
+ *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
.
A description for the first version of the launch template.
+ *The ID of the IPAM for which you're creating this scope.
*/ - VersionDescription?: string; + IpamId: string | undefined; /** - *The information for the launch template.
+ *A description for the scope you're creating.
*/ - LaunchTemplateData: RequestLaunchTemplateData | undefined; + Description?: string; /** - *The tags to apply to the launch template during creation.
+ *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.
A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
+ */ + ClientToken?: string; } -export namespace CreateLaunchTemplateRequest { +export namespace CreateIpamScopeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateLaunchTemplateRequest): any => ({ + export const filterSensitiveLog = (obj: CreateIpamScopeRequest): any => ({ ...obj, }); } +export enum IpamScopeState { + create_complete = "create-complete", + create_failed = "create-failed", + create_in_progress = "create-in-progress", + delete_complete = "delete-complete", + delete_failed = "delete-failed", + delete_in_progress = "delete-in-progress", + modify_complete = "modify-complete", + modify_failed = "modify-failed", + modify_in_progress = "modify-in-progress", +} + /** - *Describes a launch template.
+ *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 + *
*/ -export interface LaunchTemplate { +export interface IpamScope { /** - *The ID of the launch template.
+ *The Amazon Web Services account ID of the owner of the scope.
*/ - LaunchTemplateId?: string; + OwnerId?: string; /** - *The name of the launch template.
+ *The ID of the scope.
*/ - LaunchTemplateName?: string; + IpamScopeId?: string; /** - *The time launch template was created.
+ *The ARN of the scope.
*/ - CreateTime?: Date; + IpamScopeArn?: string; /** - *The principal that created the launch template.
+ *The ARN of the IPAM.
*/ - CreatedBy?: string; + IpamArn?: string; /** - *The version number of the default version of the launch template.
+ *The Amazon Web Services Region of the IPAM scope.
*/ - DefaultVersionNumber?: number; + IpamRegion?: string; /** - *The version number of the latest version of the launch template.
+ *The type of the scope.
*/ - LatestVersionNumber?: number; + IpamScopeType?: IpamScopeType | string; /** - *The tags for the launch template.
+ *Defines if the scope is the default scope or not.
*/ - Tags?: Tag[]; -} + IsDefault?: boolean; -export namespace LaunchTemplate { /** - * @internal + *The description of the scope.
*/ - export const filterSensitiveLog = (obj: LaunchTemplate): any => ({ - ...obj, - }); -} + Description?: string; -/** - *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.
- */ -export interface ValidationError { /** - *The error code that indicates why the parameter or parameter combination is not valid. For more information about error codes, see Error Codes.
+ *The number of pools in the scope.
*/ - Code?: string; + PoolCount?: number; /** - *The error message that describes why the parameter or parameter combination is not valid. For more - * information about error messages, see Error Codes.
+ *The state of the IPAM scope.
*/ - Message?: string; + State?: IpamScopeState | string; + + /** + *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.
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.
- */ -export interface ValidationWarning { +export interface CreateIpamScopeResult { /** - *The error codes and error messages.
+ *Information about the created scope.
*/ - Errors?: ValidationError[]; + IpamScope?: IpamScope; } -export namespace ValidationWarning { +export namespace CreateIpamScopeResult { /** * @internal */ - export const filterSensitiveLog = (obj: ValidationWarning): any => ({ + export const filterSensitiveLog = (obj: CreateIpamScopeResult): any => ({ ...obj, }); } -export interface CreateLaunchTemplateResult { +export enum KeyType { + ed25519 = "ed25519", + rsa = "rsa", +} + +export interface CreateKeyPairRequest { /** - *Information about the launch template.
+ *A unique name for the key pair.
+ *Constraints: Up to 255 ASCII characters
*/ - LaunchTemplate?: LaunchTemplate; + KeyName: string | undefined; /** - *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.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The type of key pair. Note that ED25519 keys are not supported for Windows instances, EC2 Instance Connect, and EC2 Serial Console.
+ *Default: rsa
+ *
Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The tags to apply to the new key pair.
*/ - DryRun?: boolean; + TagSpecifications?: TagSpecification[]; +} +export namespace CreateKeyPairRequest { /** - *Unique, case-sensitive identifier you provide to ensure the idempotency of the - * request. For more information, see Ensuring - * Idempotency.
- *Constraint: Maximum 128 ASCII characters.
+ * @internal */ - ClientToken?: string; + export const filterSensitiveLog = (obj: CreateKeyPairRequest): any => ({ + ...obj, + }); +} +/** + *Describes a key pair.
+ */ +export interface KeyPair { /** - *The ID of the launch template. You must specify either the launch template ID or - * launch template name in the request.
+ *The SHA-1 digest of the DER encoded private key.
*/ - LaunchTemplateId?: string; + KeyFingerprint?: string; /** - *The name of the launch template. You must specify either the launch template ID or - * launch template name in the request.
+ *An unencrypted PEM encoded RSA or ED25519 private key.
*/ - LaunchTemplateName?: string; + KeyMaterial?: string; /** - *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.
The name of the key pair.
*/ - SourceVersion?: string; + KeyName?: string; /** - *A description for the version of the launch template.
+ *The ID of the key pair.
*/ - VersionDescription?: string; + KeyPairId?: string; /** - *The information for the launch template.
+ *Any tags applied to the key pair.
*/ - LaunchTemplateData: RequestLaunchTemplateData | undefined; + Tags?: Tag[]; } -export namespace CreateLaunchTemplateVersionRequest { +export namespace KeyPair { /** * @internal */ - export const filterSensitiveLog = (obj: CreateLaunchTemplateVersionRequest): any => ({ + export const filterSensitiveLog = (obj: KeyPair): any => ({ ...obj, + ...(obj.KeyMaterial && { KeyMaterial: SENSITIVE_STRING }), }); } /** - *Describes a block device for an EBS volume.
+ *The parameters for a block device for an EBS volume.
*/ -export interface LaunchTemplateEbsBlockDevice { +export interface LaunchTemplateEbsBlockDeviceRequest { /** - *Indicates whether the EBS volume is encrypted.
+ *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.
*/ Encrypted?: boolean; @@ -3059,12 +3491,36 @@ export interface LaunchTemplateEbsBlockDevice { DeleteOnTermination?: boolean; /** - *The number of I/O operations per second (IOPS) that the volume supports.
+ *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.
The ARN of the Key Management Service (KMS) CMK used for encryption.
+ *The ARN of the symmetric Key Management Service (KMS) CMK used for + * encryption.
*/ KmsKeyId?: string; @@ -3074,26 +3530,47 @@ export interface LaunchTemplateEbsBlockDevice { SnapshotId?: string; /** - *The size of the volume, in GiB.
+ *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
The volume type.
+ *The volume type. For more information, see Amazon EBS volume types in the + * Amazon Elastic Compute Cloud User Guide.
*/ VolumeType?: VolumeType | string; /** - *The throughput that the volume supports, in MiB/s.
+ *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.
*/ Throughput?: number; } -export namespace LaunchTemplateEbsBlockDevice { +export namespace LaunchTemplateEbsBlockDeviceRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateEbsBlockDevice): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateEbsBlockDeviceRequest): any => ({ ...obj, }); } @@ -3101,21 +3578,24 @@ export namespace LaunchTemplateEbsBlockDevice { /** *Describes a block device mapping.
*/ -export interface LaunchTemplateBlockDeviceMapping { +export interface LaunchTemplateBlockDeviceMappingRequest { /** - *The device name.
+ *The device name (for example, /dev/sdh or xvdh).
*/ DeviceName?: string; /** - *The virtual device name (ephemeralN).
+ *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.
*/ VirtualName?: string; /** - *Information about the block device for an EBS volume.
+ *Parameters used to automatically set up EBS volumes when the instance is launched.
*/ - Ebs?: LaunchTemplateEbsBlockDevice; + Ebs?: LaunchTemplateEbsBlockDeviceRequest; /** *To omit the device from the block device mapping, specify an empty string.
@@ -3123,43 +3603,49 @@ export interface LaunchTemplateBlockDeviceMapping { NoDevice?: string; } -export namespace LaunchTemplateBlockDeviceMapping { +export namespace LaunchTemplateBlockDeviceMappingRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateBlockDeviceMapping): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateBlockDeviceMappingRequest): any => ({ ...obj, }); } +export type CapacityReservationPreference = "none" | "open"; + /** *Describes a target Capacity Reservation or Capacity Reservation group.
*/ -export interface CapacityReservationTargetResponse { +export interface CapacityReservationTarget { /** - *The ID of the targeted Capacity Reservation.
+ *The ID of the Capacity Reservation in which to run the instance.
*/ CapacityReservationId?: string; /** - *The ARN of the targeted Capacity Reservation group.
+ *The ARN of the Capacity Reservation resource group in which to run the instance.
*/ CapacityReservationResourceGroupArn?: string; } -export namespace CapacityReservationTargetResponse { +export namespace CapacityReservationTarget { /** * @internal */ - export const filterSensitiveLog = (obj: CapacityReservationTargetResponse): any => ({ + export const filterSensitiveLog = (obj: CapacityReservationTarget): any => ({ ...obj, }); } /** - *Information about the Capacity Reservation targeting option.
+ *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.
Indicates the instance's Capacity Reservation preferences. Possible preferences include:
*Information about the target Capacity Reservation or Capacity Reservation group.
*/ - CapacityReservationTarget?: CapacityReservationTargetResponse; + CapacityReservationTarget?: CapacityReservationTarget; } -export namespace LaunchTemplateCapacityReservationSpecificationResponse { +export namespace LaunchTemplateCapacityReservationSpecificationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateCapacityReservationSpecificationResponse): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateCapacityReservationSpecificationRequest): any => ({ ...obj, }); } /** - *The CPU options for the instance.
+ *The CPU options for the instance. Both the core count and threads per core + * must be specified in the request.
*/ -export interface LaunchTemplateCpuOptions { +export interface LaunchTemplateCpuOptionsRequest { /** *The number of CPU cores for the instance.
*/ CoreCount?: number; /** - *The number of threads per CPU core.
+ *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.
*/ ThreadsPerCore?: number; } -export namespace LaunchTemplateCpuOptions { +export namespace LaunchTemplateCpuOptionsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateCpuOptions): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateCpuOptionsRequest): any => ({ ...obj, }); } /** - *Describes the credit option for CPU usage of a T2, T3, or T3a instance.
+ *The credit option for CPU usage of a T2, T3, or T3a instance.
*/ -export interface CreditSpecification { +export interface CreditSpecificationRequest { /** *The credit option for CPU usage of a T2, T3, or T3a instance. Valid values are
* standard
and unlimited
.
Describes an elastic GPU.
+ *A specification for an Elastic Graphics accelerator.
*/ -export interface ElasticGpuSpecificationResponse { +export interface ElasticGpuSpecification { /** - *The elastic GPU type.
+ *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.
* The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge. *
*/ - Type?: string; + Type: string | undefined; /** *@@ -3277,58 +3767,63 @@ export interface LaunchTemplateElasticInferenceAcceleratorResponse { Count?: number; } -export namespace LaunchTemplateElasticInferenceAcceleratorResponse { +export namespace LaunchTemplateElasticInferenceAccelerator { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateElasticInferenceAcceleratorResponse): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateElasticInferenceAccelerator): any => ({ ...obj, }); } /** - *
Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.
+ *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.
*/ -export interface LaunchTemplateEnclaveOptions { +export interface LaunchTemplateEnclaveOptionsRequest { /** - *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.
To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to true
.
Indicates whether an instance is configured for hibernation.
+ *Indicates whether the instance is configured for hibernation. This parameter is valid only + * if the instance meets the hibernation + * prerequisites.
*/ -export interface LaunchTemplateHibernationOptions { +export interface LaunchTemplateHibernationOptionsRequest { /** - *If this parameter is set to true
, the instance is enabled for hibernation; otherwise, it is not enabled for hibernation.
If you set this parameter to true
, the instance is enabled for hibernation.
Default: false
+ *
Describes an IAM instance profile.
+ *An IAM instance profile.
*/ -export interface LaunchTemplateIamInstanceProfileSpecification { +export interface LaunchTemplateIamInstanceProfileSpecificationRequest { /** *The Amazon Resource Name (ARN) of the instance profile.
*/ @@ -3340,19 +3835,27 @@ export interface LaunchTemplateIamInstanceProfileSpecification { Name?: string; } -export namespace LaunchTemplateIamInstanceProfileSpecification { +export namespace LaunchTemplateIamInstanceProfileSpecificationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateIamInstanceProfileSpecification): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateIamInstanceProfileSpecificationRequest): any => ({ ...obj, }); } +export type ShutdownBehavior = "stop" | "terminate"; + +export type MarketType = "spot"; + +export type InstanceInterruptionBehavior = "hibernate" | "stop" | "terminate"; + +export type SpotInstanceType = "one-time" | "persistent"; + /** *The options for Spot Instances.
*/ -export interface LaunchTemplateSpotMarketOptions { +export interface LaunchTemplateSpotMarketOptionsRequest { /** *The maximum hourly price you're willing to pay for the Spot Instances.
*/ @@ -3369,21 +3872,24 @@ export interface LaunchTemplateSpotMarketOptions { BlockDurationMinutes?: number; /** - *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.
+ *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. + * The default end date is 7 days from the current date.
*/ ValidUntil?: Date; /** - *The behavior when a Spot Instance is interrupted.
+ *The behavior when a Spot Instance is interrupted. The default is terminate
.
The market (purchasing) option for the instances.
*/ -export interface LaunchTemplateInstanceMarketOptions { +export interface LaunchTemplateInstanceMarketOptionsRequest { /** *The market type.
*/ @@ -3400,14 +3906,14 @@ export interface LaunchTemplateInstanceMarketOptions { /** *The options for Spot Instances.
*/ - SpotOptions?: LaunchTemplateSpotMarketOptions; + SpotOptions?: LaunchTemplateSpotMarketOptionsRequest; } -export namespace LaunchTemplateInstanceMarketOptions { +export namespace LaunchTemplateInstanceMarketOptionsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateInstanceMarketOptions): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateInstanceMarketOptionsRequest): any => ({ ...obj, }); } @@ -3415,58 +3921,59 @@ export namespace LaunchTemplateInstanceMarketOptions { /** *Describes a license configuration.
*/ -export interface LaunchTemplateLicenseConfiguration { +export interface LaunchTemplateLicenseConfigurationRequest { /** *The Amazon Resource Name (ARN) of the license configuration.
*/ LicenseConfigurationArn?: string; } -export namespace LaunchTemplateLicenseConfiguration { +export namespace LaunchTemplateLicenseConfigurationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateLicenseConfiguration): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateLicenseConfigurationRequest): any => ({ ...obj, }); } -export type LaunchTemplateInstanceMetadataOptionsState = "applied" | "pending"; +export type LaunchTemplateInstanceMetadataEndpointState = "disabled" | "enabled"; + +export enum LaunchTemplateInstanceMetadataProtocolIpv6 { + disabled = "disabled", + enabled = "enabled", +} + +export enum LaunchTemplateHttpTokensState { + optional = "optional", + required = "required", +} /** *The metadata options for the instance. For more information, see Instance Metadata and User Data in the - * Amazon Elastic Compute Cloud User Guide.
+ * Amazon Elastic Compute Cloud User Guide. */ -export interface LaunchTemplateInstanceMetadataOptions { - /** - *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.
The state of token usage for your instance metadata requests. If the parameter is not specified in the request, the default state is optional
.
If the state is optional
, you can choose to retrieve instance metadata with or without a signed token header on your request. If you retrieve the IAM role credentials without a token, the version 1.0 role credentials are returned. If you retrieve the IAM role credentials using a valid signed token, the version 2.0 role credentials are returned.
If the state is required
, you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns the version 2.0 credentials; the version 1.0 credentials are not available.
If the state is required
, you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns the version 2.0 credentials; the version 1.0 credentials are not available.
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
+ *Default: 1
+ *Possible values: Integers from 1 to 64
*/ HttpPutResponseHopLimit?: number; /** *This parameter 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.
- *
Describes the monitoring for the instance.
*/ -export interface LaunchTemplatesMonitoring { +export interface LaunchTemplatesMonitoringRequest { /** - *Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is - * enabled.
+ *Specify true
to enable detailed monitoring. Otherwise, basic monitoring is enabled.
Information about the IPv4 delegated prefixes assigned - * to a network interface.
+ *Describes the IPv4 prefix option for a network interface.
*/ -export interface Ipv4PrefixSpecificationResponse { +export interface Ipv4PrefixSpecificationRequest { /** - *One or more IPv4 delegated prefixes assigned to the network interface.
+ *The IPv4 prefix. For information, see + * Assigning prefixes to Amazon EC2 network interfaces in the + * Amazon Elastic Compute Cloud User Guide.
+ */ + Ipv4Prefix?: string; +} + +export namespace Ipv4PrefixSpecificationRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: Ipv4PrefixSpecificationRequest): any => ({ + ...obj, + }); +} + +/** + *Describes an IPv6 address.
+ */ +export interface InstanceIpv6AddressRequest { + /** + *The IPv6 address.
*/ - Ipv4Prefix?: string; + Ipv6Address?: string; } -export namespace Ipv4PrefixSpecificationResponse { +export namespace InstanceIpv6AddressRequest { /** * @internal */ - export const filterSensitiveLog = (obj: Ipv4PrefixSpecificationResponse): any => ({ + export const filterSensitiveLog = (obj: InstanceIpv6AddressRequest): any => ({ ...obj, }); } /** - *Describes an IPv6 address.
+ *Describes the IPv4 prefix option for a network interface.
*/ -export interface InstanceIpv6Address { +export interface Ipv6PrefixSpecificationRequest { /** - *The IPv6 address.
+ *The IPv6 prefix.
*/ - Ipv6Address?: string; + Ipv6Prefix?: string; } -export namespace InstanceIpv6Address { +export namespace Ipv6PrefixSpecificationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceIpv6Address): any => ({ + export const filterSensitiveLog = (obj: Ipv6PrefixSpecificationRequest): any => ({ ...obj, }); } /** - *Information about the IPv6 delegated prefixes assigned - * to a network interface.
+ *Describes a secondary private IPv4 address for a network interface.
*/ -export interface Ipv6PrefixSpecificationResponse { +export interface PrivateIpAddressSpecification { /** - *One or more IPv6 delegated prefixes assigned to the network interface.
+ *Indicates whether the private IPv4 address is the primary private IPv4 address. Only + * one IPv4 address can be designated as primary.
*/ - Ipv6Prefix?: string; + Primary?: boolean; + + /** + *The private IPv4 addresses.
+ */ + PrivateIpAddress?: string; } -export namespace Ipv6PrefixSpecificationResponse { +export namespace PrivateIpAddressSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: Ipv6PrefixSpecificationResponse): any => ({ + export const filterSensitiveLog = (obj: PrivateIpAddressSpecification): any => ({ ...obj, }); } /** - *Describes a network interface.
+ *The parameters for a network interface.
*/ -export interface LaunchTemplateInstanceNetworkInterfaceSpecification { +export interface LaunchTemplateInstanceNetworkInterfaceSpecificationRequest { /** - *Indicates whether to associate a Carrier IP address with eth0 for a new network interface.
+ *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.
+ * Guide. */ AssociateCarrierIpAddress?: boolean; /** - *Indicates whether to associate a public IPv4 address with eth0 for a new network interface.
+ *Associates a public IPv4 address with eth0 for a new network interface.
*/ AssociatePublicIpAddress?: boolean; @@ -3605,19 +4136,24 @@ export interface LaunchTemplateInstanceNetworkInterfaceSpecification { Groups?: string[]; /** - *The type of network interface.
+ *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
+ *
The number of IPv6 addresses for the network interface.
+ *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.
*/ Ipv6AddressCount?: number; /** - *The IPv6 addresses for the network interface.
+ *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.
*/ - Ipv6Addresses?: InstanceIpv6Address[]; + Ipv6Addresses?: InstanceIpv6AddressRequest[]; /** *The ID of the network interface.
@@ -3635,7 +4171,7 @@ export interface LaunchTemplateInstanceNetworkInterfaceSpecification { PrivateIpAddresses?: PrivateIpAddressSpecification[]; /** - *The number of secondary private IPv4 addresses for the network interface.
+ *The number of secondary private IPv4 addresses to assign to a network interface.
*/ SecondaryPrivateIpAddressCount?: number; @@ -3645,38 +4181,42 @@ export interface LaunchTemplateInstanceNetworkInterfaceSpecification { SubnetId?: string; /** - *The index of the network card.
+ *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.
*/ NetworkCardIndex?: number; /** - *One or more IPv4 prefixes assigned to the network interface.
+ *One or more IPv4 prefixes to be assigned to the network interface. You cannot use
+ * this option if you use the Ipv4PrefixCount
option.
The number of IPv4 prefixes that Amazon Web Services automatically assigned to the - * network interface.
+ *The number of IPv4 prefixes to be automatically assigned to the
+ * network interface. You cannot use this option if you use the Ipv4Prefix
option.
One or more IPv6 prefixes assigned to the network interface.
+ *One or more IPv6 prefixes to be assigned to the network interface. You cannot
+ * use this option if you use the Ipv6PrefixCount
option.
The number of IPv6 prefixes that Amazon Web Services automatically assigned to the network - * interface.
+ *The number of IPv6 prefixes to be automatically assigned to the network
+ * interface. You cannot use this option if you use the Ipv6Prefix
option.
Describes the placement of an instance.
*/ -export interface LaunchTemplatePlacement { +export interface LaunchTemplatePlacementRequest { /** - *The Availability Zone of the instance.
+ *The Availability Zone for the instance.
*/ AvailabilityZone?: string; /** - *The affinity setting for the instance on the Dedicated Host.
+ *The affinity setting for an instance on a Dedicated Host.
*/ Affinity?: string; @@ -3706,7 +4246,8 @@ export interface LaunchTemplatePlacement { HostId?: string; /** - *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 tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy + * of dedicated runs on single-tenant hardware.
*/ Tenancy?: Tenancy | string; @@ -3716,8 +4257,9 @@ export interface LaunchTemplatePlacement { SpreadDomain?: string; /** - *The ARN of the host resource group in which to launch the instances. - *
+ *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
.
Describes the options for instance hostnames.
*/ -export interface LaunchTemplatePrivateDnsNameOptions { +export interface LaunchTemplatePrivateDnsNameOptionsRequest { /** - *The type of hostname to assign to an instance.
+ *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.
*/ HostnameType?: HostnameType | string; @@ -3756,2111 +4301,2107 @@ export interface LaunchTemplatePrivateDnsNameOptions { EnableResourceNameDnsAAAARecord?: boolean; } -export namespace LaunchTemplatePrivateDnsNameOptions { +export namespace LaunchTemplatePrivateDnsNameOptionsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplatePrivateDnsNameOptions): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplatePrivateDnsNameOptionsRequest): any => ({ ...obj, }); } /** - *The tag specification for the launch template.
+ *The tags specification for the launch template.
*/ -export interface LaunchTemplateTagSpecification { +export interface LaunchTemplateTagSpecificationRequest { /** - *The type of resource.
+ *The type of resource to tag. Currently, the resource types that support tagging on
+ * creation are instance
and volume
. To tag a resource after it
+ * has been created, see CreateTags.
The tags for the resource.
+ *The tags to apply to the resource.
*/ Tags?: Tag[]; } -export namespace LaunchTemplateTagSpecification { +export namespace LaunchTemplateTagSpecificationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateTagSpecification): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateTagSpecificationRequest): any => ({ ...obj, }); } /** - *The information for a launch template.
+ *The information to include in the launch template.
*/ -export interface ResponseLaunchTemplateData { +export interface RequestLaunchTemplateData { /** - *The ID of the kernel, if applicable.
+ *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.
+ *Indicates whether the instance is optimized for Amazon EBS I/O.
+ *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.
*/ EbsOptimized?: boolean; /** - *The IAM instance profile.
+ *The name or Amazon Resource Name (ARN) of an IAM instance profile.
*/ - IamInstanceProfile?: LaunchTemplateIamInstanceProfileSpecification; + IamInstanceProfile?: LaunchTemplateIamInstanceProfileSpecificationRequest; /** - *The block device mappings.
+ *The block device mapping.
*/ - BlockDeviceMappings?: LaunchTemplateBlockDeviceMapping[]; + BlockDeviceMappings?: LaunchTemplateBlockDeviceMappingRequest[]; /** - *The network interfaces.
+ *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.
*/ - NetworkInterfaces?: LaunchTemplateInstanceNetworkInterfaceSpecification[]; + NetworkInterfaces?: LaunchTemplateInstanceNetworkInterfaceSpecificationRequest[]; /** - *The ID of the AMI that was used to launch the instance.
+ *The ID of the AMI.
*/ ImageId?: string; /** - *The instance type.
+ *The instance type. For more information, see Instance Types in the + * Amazon Elastic Compute Cloud User Guide.
+ *If you specify InstanceTypes
, you can't specify
+ * InstanceRequirements
.
The name of the key pair.
+ *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.
+ *The monitoring for the instance.
*/ - Monitoring?: LaunchTemplatesMonitoring; + Monitoring?: LaunchTemplatesMonitoringRequest; /** - *The placement of the instance.
+ *The placement for the instance.
*/ - Placement?: LaunchTemplatePlacement; + Placement?: LaunchTemplatePlacementRequest; /** - *The ID of the RAM disk, if applicable.
+ *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.
+ *If set to true
, indicates that the instance cannot be terminated using
- * the Amazon EC2 console, command line tool, or API.
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.
Indicates whether an instance stops or terminates when you initiate shutdown from * the instance (using the operating system command for system shutdown).
+ *Default: stop
+ *
The user data for the instance.
+ *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 Running Commands on Your Linux Instance + * at Launch (Linux) or Adding User Data (Windows).
+ * + *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.
*/ UserData?: string; /** - *The tags.
+ *The tags to apply to the resources during launch. You can only tag instances and + * volumes on launch. The specified tags are applied to all instances or volumes that are + * created during launch. To tag a resource after it has been created, see CreateTags.
*/ - TagSpecifications?: LaunchTemplateTagSpecification[]; + TagSpecifications?: LaunchTemplateTagSpecificationRequest[]; /** - *The elastic GPU specification.
+ *An elastic GPU to associate with the instance.
*/ - ElasticGpuSpecifications?: ElasticGpuSpecificationResponse[]; + ElasticGpuSpecifications?: ElasticGpuSpecification[]; /** ** The elastic inference accelerator for the instance. *
*/ - ElasticInferenceAccelerators?: LaunchTemplateElasticInferenceAcceleratorResponse[]; + ElasticInferenceAccelerators?: LaunchTemplateElasticInferenceAccelerator[]; /** - *The security group IDs.
+ *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.
*/ SecurityGroupIds?: string[]; /** - *The security group names.
+ *[EC2-Classic, default VPC] 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.
*/ SecurityGroups?: string[]; /** *The market (purchasing) option for the instances.
*/ - InstanceMarketOptions?: LaunchTemplateInstanceMarketOptions; + InstanceMarketOptions?: LaunchTemplateInstanceMarketOptionsRequest; /** - *The credit option for CPU usage of the instance.
+ *The credit option for CPU usage of the instance. Valid for T2, T3, or T3a instances + * only.
*/ - CreditSpecification?: CreditSpecification; + CreditSpecification?: CreditSpecificationRequest; /** - *The CPU options for the instance. For more information, see Optimizing CPU options in the Amazon Elastic Compute Cloud User + *
The CPU options for the instance. For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User * Guide.
*/ - CpuOptions?: LaunchTemplateCpuOptions; + CpuOptions?: LaunchTemplateCpuOptionsRequest; /** - *Information about the Capacity Reservation targeting option.
+ *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).
The license configurations.
*/ - LicenseSpecifications?: LaunchTemplateLicenseConfiguration[]; + LicenseSpecifications?: LaunchTemplateLicenseConfigurationRequest[]; /** - *Indicates whether an instance is configured for hibernation. For more information, see - * Hibernate - * your instance in the Amazon Elastic Compute Cloud User Guide.
+ *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.
*/ - HibernationOptions?: LaunchTemplateHibernationOptions; + HibernationOptions?: LaunchTemplateHibernationOptionsRequest; /** *The metadata options for the instance. For more information, see Instance metadata and user data in the * Amazon Elastic Compute Cloud User Guide.
*/ - MetadataOptions?: LaunchTemplateInstanceMetadataOptions; + MetadataOptions?: LaunchTemplateInstanceMetadataOptionsRequest; /** - *Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.
+ *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.
*/ - EnclaveOptions?: LaunchTemplateEnclaveOptions; + EnclaveOptions?: LaunchTemplateEnclaveOptionsRequest; /** *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
.
InstanceTypes
.
*/
- InstanceRequirements?: InstanceRequirements;
+ InstanceRequirements?: InstanceRequirementsRequest;
/**
- * The options for the instance hostname.
+ *The options for the instance hostname. The default values are inherited from the subnet.
*/ - PrivateDnsNameOptions?: LaunchTemplatePrivateDnsNameOptions; + PrivateDnsNameOptions?: LaunchTemplatePrivateDnsNameOptionsRequest; } -export namespace ResponseLaunchTemplateData { +export namespace RequestLaunchTemplateData { /** * @internal */ - export const filterSensitiveLog = (obj: ResponseLaunchTemplateData): any => ({ + export const filterSensitiveLog = (obj: RequestLaunchTemplateData): any => ({ ...obj, }); } -/** - *Describes a launch template version.
- */ -export interface LaunchTemplateVersion { +export interface CreateLaunchTemplateRequest { /** - *The ID of the launch template.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The name of the launch template.
+ *Unique, case-sensitive identifier you provide to ensure the idempotency of the + * request. For more information, see Ensuring + * Idempotency.
+ *Constraint: Maximum 128 ASCII characters.
*/ - LaunchTemplateName?: string; + ClientToken?: string; /** - *The version number.
+ *A name for the launch template.
*/ - VersionNumber?: number; + LaunchTemplateName: string | undefined; /** - *The description for the version.
+ *A description for the first version of the launch template.
*/ VersionDescription?: string; /** - *The time the version was created.
- */ - CreateTime?: Date; - - /** - *The principal that created the version.
- */ - CreatedBy?: string; - - /** - *Indicates whether the version is the default version.
+ *The information for the launch template.
*/ - DefaultVersion?: boolean; + LaunchTemplateData: RequestLaunchTemplateData | undefined; /** - *Information about the launch template.
+ *The tags to apply to the launch template during creation.
*/ - LaunchTemplateData?: ResponseLaunchTemplateData; + TagSpecifications?: TagSpecification[]; } -export namespace LaunchTemplateVersion { +export namespace CreateLaunchTemplateRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateVersion): any => ({ + export const filterSensitiveLog = (obj: CreateLaunchTemplateRequest): any => ({ ...obj, }); } -export interface CreateLaunchTemplateVersionResult { +/** + *Describes a launch template.
+ */ +export interface LaunchTemplate { /** - *Information about the launch template version.
+ *The ID of the launch template.
*/ - LaunchTemplateVersion?: LaunchTemplateVersion; + LaunchTemplateId?: string; /** - *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.
+ *The name of the launch template.
*/ - Warning?: ValidationWarning; -} + LaunchTemplateName?: string; -export namespace CreateLaunchTemplateVersionResult { /** - * @internal + *The time launch template was created.
*/ - export const filterSensitiveLog = (obj: CreateLaunchTemplateVersionResult): any => ({ - ...obj, - }); -} + CreateTime?: Date; -export interface CreateLocalGatewayRouteRequest { /** - *The CIDR range used for destination matches. Routing decisions are based on - * the most specific match.
+ *The principal that created the launch template.
*/ - DestinationCidrBlock: string | undefined; + CreatedBy?: string; /** - *The ID of the local gateway route table.
+ *The version number of the default version of the launch template.
*/ - LocalGatewayRouteTableId: string | undefined; + DefaultVersionNumber?: number; /** - *The ID of the virtual interface group.
+ *The version number of the latest version of the launch template.
*/ - LocalGatewayVirtualInterfaceGroupId: string | undefined; + LatestVersionNumber?: number; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The tags for the launch template.
*/ - DryRun?: boolean; + Tags?: Tag[]; } -export namespace CreateLocalGatewayRouteRequest { +export namespace LaunchTemplate { /** * @internal */ - export const filterSensitiveLog = (obj: CreateLocalGatewayRouteRequest): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplate): any => ({ ...obj, }); } -export type LocalGatewayRouteState = "active" | "blackhole" | "deleted" | "deleting" | "pending"; - -export type LocalGatewayRouteType = "propagated" | "static"; - /** - *Describes a route for a local gateway route table.
+ *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.
*/ -export interface LocalGatewayRoute { - /** - *The CIDR block used for destination matches.
- */ - DestinationCidrBlock?: string; - - /** - *The ID of the virtual interface group.
- */ - LocalGatewayVirtualInterfaceGroupId?: string; - - /** - *The route type.
- */ - Type?: LocalGatewayRouteType | string; - - /** - *The state of the route.
- */ - State?: LocalGatewayRouteState | string; - - /** - *The ID of the local gateway route table.
- */ - LocalGatewayRouteTableId?: string; - +export interface ValidationError { /** - *The Amazon Resource Name (ARN) of the local gateway route table.
+ *The error code that indicates why the parameter or parameter combination is not valid. For more information about error codes, see Error Codes.
*/ - LocalGatewayRouteTableArn?: string; + Code?: string; /** - *The ID of the Amazon Web Services account that owns the local gateway route.
+ *The error message that describes why the parameter or parameter combination is not valid. For more + * information about error messages, see Error Codes.
*/ - OwnerId?: string; + Message?: string; } -export namespace LocalGatewayRoute { +export namespace ValidationError { /** * @internal */ - export const filterSensitiveLog = (obj: LocalGatewayRoute): any => ({ + export const filterSensitiveLog = (obj: ValidationError): any => ({ ...obj, }); } -export interface CreateLocalGatewayRouteResult { +/** + *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.
+ */ +export interface ValidationWarning { /** - *Information about the route.
+ *The error codes and error messages.
*/ - Route?: LocalGatewayRoute; + Errors?: ValidationError[]; } -export namespace CreateLocalGatewayRouteResult { +export namespace ValidationWarning { /** * @internal */ - export const filterSensitiveLog = (obj: CreateLocalGatewayRouteResult): any => ({ + export const filterSensitiveLog = (obj: ValidationWarning): any => ({ ...obj, }); } -export interface CreateLocalGatewayRouteTableVpcAssociationRequest { - /** - *The ID of the local gateway route table.
- */ - LocalGatewayRouteTableId: string | undefined; - - /** - *The ID of the VPC.
- */ - VpcId: string | undefined; - +export interface CreateLaunchTemplateResult { /** - *The tags to assign to the local gateway route table VPC association.
+ *Information about the launch template.
*/ - TagSpecifications?: TagSpecification[]; + LaunchTemplate?: LaunchTemplate; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
*/ - DryRun?: boolean; + Warning?: ValidationWarning; } -export namespace CreateLocalGatewayRouteTableVpcAssociationRequest { +export namespace CreateLaunchTemplateResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateLocalGatewayRouteTableVpcAssociationRequest): any => ({ + export const filterSensitiveLog = (obj: CreateLaunchTemplateResult): any => ({ ...obj, }); } -/** - *Describes an association between a local gateway route table and a VPC.
- */ -export interface LocalGatewayRouteTableVpcAssociation { - /** - *The ID of the association.
- */ - LocalGatewayRouteTableVpcAssociationId?: string; - - /** - *The ID of the local gateway route table.
- */ - LocalGatewayRouteTableId?: string; - - /** - *The Amazon Resource Name (ARN) of the local gateway route table for the association.
- */ - LocalGatewayRouteTableArn?: string; - +export interface CreateLaunchTemplateVersionRequest { /** - *The ID of the local gateway.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The ID of the VPC.
+ *Unique, case-sensitive identifier you provide to ensure the idempotency of the + * request. For more information, see Ensuring + * Idempotency.
+ *Constraint: Maximum 128 ASCII characters.
*/ - VpcId?: string; + ClientToken?: string; /** - *The ID of the Amazon Web Services account that owns the local gateway route table for the association.
+ *The ID of the launch template. You must specify either the launch template ID or + * launch template name in the request.
*/ - OwnerId?: string; + LaunchTemplateId?: string; /** - *The state of the association.
+ *The name of the launch template. You must specify either the launch template ID or + * launch template name in the request.
*/ - State?: string; + LaunchTemplateName?: string; /** - *The tags assigned to the association.
+ *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.
A description for the version of the launch template.
*/ - export const filterSensitiveLog = (obj: LocalGatewayRouteTableVpcAssociation): any => ({ - ...obj, - }); -} + VersionDescription?: string; -export interface CreateLocalGatewayRouteTableVpcAssociationResult { /** - *Information about the association.
+ *The information for the launch template.
*/ - LocalGatewayRouteTableVpcAssociation?: LocalGatewayRouteTableVpcAssociation; + LaunchTemplateData: RequestLaunchTemplateData | undefined; } -export namespace CreateLocalGatewayRouteTableVpcAssociationResult { +export namespace CreateLaunchTemplateVersionRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateLocalGatewayRouteTableVpcAssociationResult): any => ({ + export const filterSensitiveLog = (obj: CreateLaunchTemplateVersionRequest): any => ({ ...obj, }); } -export interface CreateManagedPrefixListRequest { +/** + *Describes a block device for an EBS volume.
+ */ +export interface LaunchTemplateEbsBlockDevice { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Indicates whether the EBS volume is encrypted.
*/ - DryRun?: boolean; + Encrypted?: boolean; /** - *A name for the prefix list.
- *Constraints: Up to 255 characters in length. The name cannot start with com.amazonaws
.
Indicates whether the EBS volume is deleted on instance termination.
*/ - PrefixListName: string | undefined; + DeleteOnTermination?: boolean; /** - *One or more entries for the prefix list.
+ *The number of I/O operations per second (IOPS) that the volume supports.
*/ - Entries?: AddPrefixListEntry[]; + Iops?: number; /** - *The maximum number of entries for the prefix list.
+ *The ARN of the Key Management Service (KMS) CMK used for encryption.
*/ - MaxEntries: number | undefined; + KmsKeyId?: string; /** - *The tags to apply to the prefix list during creation.
+ *The ID of the snapshot.
*/ - TagSpecifications?: TagSpecification[]; + SnapshotId?: string; /** - *The IP address type.
- *Valid Values: IPv4
| IPv6
- *
The size of the volume, in GiB.
*/ - AddressFamily: string | undefined; + VolumeSize?: number; /** - *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.
+ *The volume type.
*/ - ClientToken?: string; + VolumeType?: VolumeType | string; + + /** + *The throughput that the volume supports, in MiB/s.
+ */ + Throughput?: number; } -export namespace CreateManagedPrefixListRequest { +export namespace LaunchTemplateEbsBlockDevice { /** * @internal */ - export const filterSensitiveLog = (obj: CreateManagedPrefixListRequest): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateEbsBlockDevice): any => ({ ...obj, }); } -export type PrefixListState = - | "create-complete" - | "create-failed" - | "create-in-progress" - | "delete-complete" - | "delete-failed" - | "delete-in-progress" - | "modify-complete" - | "modify-failed" - | "modify-in-progress" - | "restore-complete" - | "restore-failed" - | "restore-in-progress"; - /** - *Describes a managed prefix list.
+ *Describes a block device mapping.
*/ -export interface ManagedPrefixList { +export interface LaunchTemplateBlockDeviceMapping { /** - *The ID of the prefix list.
+ *The device name.
*/ - PrefixListId?: string; + DeviceName?: string; /** - *The IP address version.
+ *The virtual device name (ephemeralN).
*/ - AddressFamily?: string; + VirtualName?: string; /** - *The current state of the prefix list.
+ *Information about the block device for an EBS volume.
*/ - State?: PrefixListState | string; + Ebs?: LaunchTemplateEbsBlockDevice; /** - *The state message.
+ *To omit the device from the block device mapping, specify an empty string.
*/ - StateMessage?: string; + NoDevice?: string; +} +export namespace LaunchTemplateBlockDeviceMapping { /** - *The Amazon Resource Name (ARN) for the prefix list.
+ * @internal */ - PrefixListArn?: string; + export const filterSensitiveLog = (obj: LaunchTemplateBlockDeviceMapping): any => ({ + ...obj, + }); +} +/** + *Describes a target Capacity Reservation or Capacity Reservation group.
+ */ +export interface CapacityReservationTargetResponse { /** - *The name of the prefix list.
+ *The ID of the targeted Capacity Reservation.
*/ - PrefixListName?: string; + CapacityReservationId?: string; /** - *The maximum number of entries for the prefix list.
+ *The ARN of the targeted Capacity Reservation group.
*/ - MaxEntries?: number; + CapacityReservationResourceGroupArn?: string; +} +export namespace CapacityReservationTargetResponse { /** - *The version of the prefix list.
+ * @internal */ - Version?: number; + export const filterSensitiveLog = (obj: CapacityReservationTargetResponse): any => ({ + ...obj, + }); +} +/** + *Information about the Capacity Reservation targeting option.
+ */ +export interface LaunchTemplateCapacityReservationSpecificationResponse { /** - *The tags for the prefix list.
+ *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.
The ID of the owner of the prefix list.
+ *Information about the target Capacity Reservation or Capacity Reservation group.
*/ - OwnerId?: string; + CapacityReservationTarget?: CapacityReservationTargetResponse; } -export namespace ManagedPrefixList { +export namespace LaunchTemplateCapacityReservationSpecificationResponse { /** * @internal */ - export const filterSensitiveLog = (obj: ManagedPrefixList): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateCapacityReservationSpecificationResponse): any => ({ ...obj, }); } -export interface CreateManagedPrefixListResult { +/** + *The CPU options for the instance.
+ */ +export interface LaunchTemplateCpuOptions { /** - *Information about the prefix list.
+ *The number of CPU cores for the instance.
*/ - PrefixList?: ManagedPrefixList; + CoreCount?: number; + + /** + *The number of threads per CPU core.
+ */ + ThreadsPerCore?: number; } -export namespace CreateManagedPrefixListResult { +export namespace LaunchTemplateCpuOptions { /** * @internal */ - export const filterSensitiveLog = (obj: CreateManagedPrefixListResult): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateCpuOptions): any => ({ ...obj, }); } -export enum ConnectivityType { - PRIVATE = "private", - PUBLIC = "public", +/** + *Describes the credit option for CPU usage of a T2, T3, or T3a instance.
+ */ +export interface CreditSpecification { + /** + *The credit option for CPU usage of a T2, T3, or T3a instance. Valid values are
+ * standard
and unlimited
.
[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.
+ * @internal */ - AllocationId?: string; + export const filterSensitiveLog = (obj: CreditSpecification): any => ({ + ...obj, + }); +} +/** + *Describes an elastic GPU.
+ */ +export interface ElasticGpuSpecificationResponse { /** - *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.
+ *The elastic GPU type.
*/ - ClientToken?: string; + Type?: string; +} +export namespace ElasticGpuSpecificationResponse { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
+ * Describes an elastic inference accelerator. + *
+ */ +export interface LaunchTemplateElasticInferenceAcceleratorResponse { + /** + *+ * The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge. + *
+ */ + Type?: string; /** - *The subnet in which to create the NAT gateway.
+ *+ * The number of elastic inference accelerators to attach to the instance. + *
+ *Default: 1
*/ - SubnetId: string | undefined; + Count?: number; +} +export namespace LaunchTemplateElasticInferenceAcceleratorResponse { /** - *The tags to assign to the NAT gateway.
+ * @internal */ - TagSpecifications?: TagSpecification[]; + export const filterSensitiveLog = (obj: LaunchTemplateElasticInferenceAcceleratorResponse): any => ({ + ...obj, + }); +} +/** + *Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.
+ */ +export interface LaunchTemplateEnclaveOptions { /** - *Indicates whether the NAT gateway supports public or private connectivity. - * The default is public connectivity.
+ *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.
Describes the IP addresses and network interface associated with a NAT gateway.
+ *Indicates whether an instance is configured for hibernation.
*/ -export interface NatGatewayAddress { +export interface LaunchTemplateHibernationOptions { /** - *[Public NAT gateway only] The allocation ID of the Elastic IP address that's associated with the NAT gateway.
+ *If this parameter is set to true
, the instance is enabled for hibernation; otherwise, it is not enabled for hibernation.
The ID of the network interface associated with the NAT gateway.
+ * @internal */ - NetworkInterfaceId?: string; + export const filterSensitiveLog = (obj: LaunchTemplateHibernationOptions): any => ({ + ...obj, + }); +} +/** + *Describes an IAM instance profile.
+ */ +export interface LaunchTemplateIamInstanceProfileSpecification { /** - *The private IP address associated with the NAT gateway.
+ *The Amazon Resource Name (ARN) of the instance profile.
*/ - PrivateIp?: string; + Arn?: string; /** - *[Public NAT gateway only] The Elastic IP address associated with the NAT gateway.
+ *The name of the instance profile.
*/ - PublicIp?: string; + Name?: string; } -export namespace NatGatewayAddress { +export namespace LaunchTemplateIamInstanceProfileSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: NatGatewayAddress): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateIamInstanceProfileSpecification): any => ({ ...obj, }); } /** - *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
+ *The options for Spot Instances.
*/ -export interface ProvisionedBandwidth { +export interface LaunchTemplateSpotMarketOptions { /** - *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
+ *The maximum hourly price you're willing to pay for the Spot Instances.
*/ - ProvisionTime?: Date; + MaxPrice?: string; /** - *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
+ *The Spot Instance request type.
*/ - Provisioned?: string; + SpotInstanceType?: SpotInstanceType | string; /** - *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
+ *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).
*/ - RequestTime?: Date; + BlockDurationMinutes?: number; /** - *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
+ *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.
*/ - Requested?: string; + ValidUntil?: Date; /** - *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
+ *The behavior when a Spot Instance is interrupted.
*/ - Status?: string; + InstanceInterruptionBehavior?: InstanceInterruptionBehavior | string; } -export namespace ProvisionedBandwidth { +export namespace LaunchTemplateSpotMarketOptions { /** * @internal */ - export const filterSensitiveLog = (obj: ProvisionedBandwidth): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateSpotMarketOptions): any => ({ ...obj, }); } -export enum NatGatewayState { - AVAILABLE = "available", - DELETED = "deleted", - DELETING = "deleting", - FAILED = "failed", - PENDING = "pending", -} - /** - *Describes a NAT gateway.
+ *The market (purchasing) option for the instances.
*/ -export interface NatGateway { - /** - *The date and time the NAT gateway was created.
- */ - CreateTime?: Date; - +export interface LaunchTemplateInstanceMarketOptions { /** - *The date and time the NAT gateway was deleted, if applicable.
+ *The market type.
*/ - DeleteTime?: Date; + MarketType?: MarketType | string; /** - *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
)
The options for Spot Instances.
*/ - FailureCode?: string; + SpotOptions?: LaunchTemplateSpotMarketOptions; +} +export namespace LaunchTemplateInstanceMarketOptions { /** - *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."
- *Describes a license configuration.
+ */ +export interface LaunchTemplateLicenseConfiguration { /** - *Information about the IP addresses and network interface associated with the NAT gateway.
+ *The Amazon Resource Name (ARN) of the license configuration.
*/ - NatGatewayAddresses?: NatGatewayAddress[]; + LicenseConfigurationArn?: string; +} +export namespace LaunchTemplateLicenseConfiguration { /** - *The ID of the NAT gateway.
+ * @internal */ - NatGatewayId?: string; + export const filterSensitiveLog = (obj: LaunchTemplateLicenseConfiguration): any => ({ + ...obj, + }); +} - /** - *Reserved. If you need to sustain traffic greater than the documented limits, contact us through - * the Support Center.
- */ - ProvisionedBandwidth?: ProvisionedBandwidth; +export type LaunchTemplateInstanceMetadataOptionsState = "applied" | "pending"; +/** + *The metadata options for the instance. For more information, see Instance Metadata and User Data in the + * Amazon Elastic Compute Cloud User Guide.
+ */ +export interface LaunchTemplateInstanceMetadataOptions { /** - *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.
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.
The ID of the subnet in which the NAT gateway is located.
+ *The state of token usage for your instance metadata requests. If the parameter is not specified in the request, the default state is optional
.
If the state is optional
, you can choose to retrieve instance metadata with or without a signed token header on your request. If you retrieve the IAM role credentials without a token, the version 1.0 role credentials are returned. If you retrieve the IAM role credentials using a valid signed token, the version 2.0 role credentials are returned.
If the state is required
, you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns the version 2.0 credentials; the version 1.0 credentials are not available.
The ID of the VPC in which the NAT gateway is located.
+ *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
*/ - VpcId?: string; + HttpPutResponseHopLimit?: number; /** - *The tags for the NAT gateway.
+ *This parameter 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.
+ *
Indicates whether the NAT gateway supports public or private connectivity.
+ *Enables or disables the IPv6 endpoint for the instance metadata service.
+ *Default: disabled
+ *
Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.
- */ - ClientToken?: string; - +/** + *Describes the monitoring for the instance.
+ */ +export interface LaunchTemplatesMonitoring { /** - *Information about the NAT gateway.
+ *Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is + * enabled.
*/ - NatGateway?: NatGateway; + Enabled?: boolean; } -export namespace CreateNatGatewayResult { +export namespace LaunchTemplatesMonitoring { /** * @internal */ - export const filterSensitiveLog = (obj: CreateNatGatewayResult): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplatesMonitoring): any => ({ ...obj, }); } -export interface CreateNetworkAclRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the VPC.
- */ - VpcId: string | undefined; - +/** + *Information about the IPv4 delegated prefixes assigned + * to a network interface.
+ */ +export interface Ipv4PrefixSpecificationResponse { /** - *The tags to assign to the network ACL.
+ *One or more IPv4 delegated prefixes assigned to the network interface.
*/ - TagSpecifications?: TagSpecification[]; + Ipv4Prefix?: string; } -export namespace CreateNetworkAclRequest { +export namespace Ipv4PrefixSpecificationResponse { /** * @internal */ - export const filterSensitiveLog = (obj: CreateNetworkAclRequest): any => ({ + export const filterSensitiveLog = (obj: Ipv4PrefixSpecificationResponse): any => ({ ...obj, }); } /** - *Describes an association between a network ACL and a subnet.
+ *Describes an IPv6 address.
*/ -export interface NetworkAclAssociation { - /** - *The ID of the association between a network ACL and a subnet.
- */ - NetworkAclAssociationId?: string; - - /** - *The ID of the network ACL.
- */ - NetworkAclId?: string; - +export interface InstanceIpv6Address { /** - *The ID of the subnet.
+ *The IPv6 address.
*/ - SubnetId?: string; + Ipv6Address?: string; } -export namespace NetworkAclAssociation { +export namespace InstanceIpv6Address { /** * @internal */ - export const filterSensitiveLog = (obj: NetworkAclAssociation): any => ({ + export const filterSensitiveLog = (obj: InstanceIpv6Address): any => ({ ...obj, }); } /** - *Describes the ICMP type and code.
+ *Information about the IPv6 delegated prefixes assigned + * to a network interface.
*/ -export interface IcmpTypeCode { - /** - *The ICMP code. A value of -1 means all codes for the specified ICMP type.
- */ - Code?: number; - +export interface Ipv6PrefixSpecificationResponse { /** - *The ICMP type. A value of -1 means all types.
+ *One or more IPv6 delegated prefixes assigned to the network interface.
*/ - Type?: number; + Ipv6Prefix?: string; } -export namespace IcmpTypeCode { +export namespace Ipv6PrefixSpecificationResponse { /** * @internal */ - export const filterSensitiveLog = (obj: IcmpTypeCode): any => ({ + export const filterSensitiveLog = (obj: Ipv6PrefixSpecificationResponse): any => ({ ...obj, }); } /** - *Describes a range of ports.
+ *Describes a network interface.
*/ -export interface PortRange { +export interface LaunchTemplateInstanceNetworkInterfaceSpecification { /** - *The first port in the range.
+ *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.
*/ - From?: number; + AssociateCarrierIpAddress?: boolean; /** - *The last port in the range.
+ *Indicates whether to associate a public IPv4 address with eth0 for a new network interface.
*/ - To?: number; -} + AssociatePublicIpAddress?: boolean; -export namespace PortRange { /** - * @internal + *Indicates whether the network interface is deleted when the instance is terminated.
*/ - export const filterSensitiveLog = (obj: PortRange): any => ({ - ...obj, - }); -} - -export type RuleAction = "allow" | "deny"; + DeleteOnTermination?: boolean; -/** - *Describes an entry in a network ACL.
- */ -export interface NetworkAclEntry { /** - *The IPv4 network range to allow or deny, in CIDR notation.
+ *A description for the network interface.
*/ - CidrBlock?: string; + Description?: string; /** - *Indicates whether the rule is an egress rule (applied to traffic leaving the subnet).
+ *The device index for the network interface attachment.
*/ - Egress?: boolean; + DeviceIndex?: number; /** - *ICMP protocol: The ICMP type and code.
+ *The IDs of one or more security groups.
*/ - IcmpTypeCode?: IcmpTypeCode; + Groups?: string[]; /** - *The IPv6 network range to allow or deny, in CIDR notation.
+ *The type of network interface.
*/ - Ipv6CidrBlock?: string; + InterfaceType?: string; /** - *TCP or UDP protocols: The range of ports the rule applies to.
+ *The number of IPv6 addresses for the network interface.
*/ - PortRange?: PortRange; + Ipv6AddressCount?: number; /** - *The protocol number. A value of "-1" means all protocols.
+ *The IPv6 addresses for the network interface.
*/ - Protocol?: string; + Ipv6Addresses?: InstanceIpv6Address[]; /** - *Indicates whether to allow or deny the traffic that matches the rule.
+ *The ID of the network interface.
*/ - RuleAction?: RuleAction | string; + NetworkInterfaceId?: string; /** - *The rule number for the entry. ACL entries are processed in ascending order by rule number.
+ *The primary private IPv4 address of the network interface.
*/ - RuleNumber?: number; -} + PrivateIpAddress?: string; -export namespace NetworkAclEntry { /** - * @internal + *One or more private IPv4 addresses.
*/ - export const filterSensitiveLog = (obj: NetworkAclEntry): any => ({ - ...obj, - }); -} + PrivateIpAddresses?: PrivateIpAddressSpecification[]; -/** - *Describes a network ACL.
- */ -export interface NetworkAcl { /** - *Any associations between the network ACL and one or more subnets
+ *The number of secondary private IPv4 addresses for the network interface.
*/ - Associations?: NetworkAclAssociation[]; + SecondaryPrivateIpAddressCount?: number; /** - *One or more entries (rules) in the network ACL.
+ *The ID of the subnet for the network interface.
*/ - Entries?: NetworkAclEntry[]; + SubnetId?: string; /** - *Indicates whether this is the default network ACL for the VPC.
+ *The index of the network card.
*/ - IsDefault?: boolean; + NetworkCardIndex?: number; /** - *The ID of the network ACL.
+ *One or more IPv4 prefixes assigned to the network interface.
*/ - NetworkAclId?: string; + Ipv4Prefixes?: Ipv4PrefixSpecificationResponse[]; /** - *Any tags assigned to the network ACL.
+ *The number of IPv4 prefixes that Amazon Web Services automatically assigned to the + * network interface.
*/ - Tags?: Tag[]; + Ipv4PrefixCount?: number; /** - *The ID of the VPC for the network ACL.
+ *One or more IPv6 prefixes assigned to the network interface.
*/ - VpcId?: string; + Ipv6Prefixes?: Ipv6PrefixSpecificationResponse[]; /** - *The ID of the Amazon Web Services account that owns the network ACL.
+ *The number of IPv6 prefixes that Amazon Web Services automatically assigned to the network + * interface.
*/ - OwnerId?: string; + Ipv6PrefixCount?: number; } -export namespace NetworkAcl { +export namespace LaunchTemplateInstanceNetworkInterfaceSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: NetworkAcl): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateInstanceNetworkInterfaceSpecification): any => ({ ...obj, }); } -export interface CreateNetworkAclResult { +/** + *Describes the placement of an instance.
+ */ +export interface LaunchTemplatePlacement { /** - *Information about the network ACL.
+ *The Availability Zone of the instance.
*/ - NetworkAcl?: NetworkAcl; -} + AvailabilityZone?: string; -export namespace CreateNetworkAclResult { /** - * @internal + *The affinity setting for the instance on the Dedicated Host.
*/ - export const filterSensitiveLog = (obj: CreateNetworkAclResult): any => ({ - ...obj, - }); -} + Affinity?: string; -export interface CreateNetworkAclEntryRequest { /** - *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
.
The name of the placement group for the instance.
*/ - CidrBlock?: string; + GroupName?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the Dedicated Host for the instance.
*/ - DryRun?: boolean; + HostId?: string; /** - *Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).
+ *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.
ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol - * 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.
+ *Reserved for future use.
*/ - IcmpTypeCode?: IcmpTypeCode; + SpreadDomain?: string; /** - *The IPv6 network range to allow or deny, in CIDR notation (for example
- * 2001:db8:1234:1a00::/64
).
The ARN of the host resource group in which to launch the instances. + *
*/ - Ipv6CidrBlock?: string; + HostResourceGroupArn?: string; /** - *The ID of the network ACL.
+ *The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition
.
TCP or UDP protocols: The range of ports the rule applies to. - * Required if specifying protocol 6 (TCP) or 17 (UDP).
+ * @internal */ - PortRange?: PortRange; + export const filterSensitiveLog = (obj: LaunchTemplatePlacement): any => ({ + ...obj, + }); +} +/** + *Describes the options for instance hostnames.
+ */ +export interface LaunchTemplatePrivateDnsNameOptions { /** - *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.
+ *The type of hostname to assign to an instance.
*/ - Protocol: string | undefined; + HostnameType?: HostnameType | string; /** - *Indicates whether to allow or deny the traffic that matches the rule.
+ *Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
*/ - RuleAction: RuleAction | string | undefined; + EnableResourceNameDnsARecord?: boolean; /** - *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.
+ *Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
*/ - RuleNumber: number | undefined; + EnableResourceNameDnsAAAARecord?: boolean; } -export namespace CreateNetworkAclEntryRequest { +export namespace LaunchTemplatePrivateDnsNameOptions { /** * @internal */ - export const filterSensitiveLog = (obj: CreateNetworkAclEntryRequest): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplatePrivateDnsNameOptions): any => ({ ...obj, }); } -export type Protocol = "tcp" | "udp"; +/** + *The tag specification for the launch template.
+ */ +export interface LaunchTemplateTagSpecification { + /** + *The type of resource.
+ */ + ResourceType?: ResourceType | string; + + /** + *The tags for the resource.
+ */ + Tags?: Tag[]; +} -export interface CreateNetworkInsightsPathRequest { +export namespace LaunchTemplateTagSpecification { /** - *The IP address of the Amazon Web Services resource that is the source of the path.
+ * @internal */ - SourceIp?: string; + export const filterSensitiveLog = (obj: LaunchTemplateTagSpecification): any => ({ + ...obj, + }); +} +/** + *The information for a launch template.
+ */ +export interface ResponseLaunchTemplateData { /** - *The IP address of the Amazon Web Services resource that is the destination of the path.
+ *The ID of the kernel, if applicable.
*/ - DestinationIp?: string; + KernelId?: string; /** - *The Amazon Web Services resource that is the source of the path.
+ *Indicates whether the instance is optimized for Amazon EBS I/O.
*/ - Source: string | undefined; + EbsOptimized?: boolean; /** - *The Amazon Web Services resource that is the destination of the path.
+ *The IAM instance profile.
*/ - Destination: string | undefined; + IamInstanceProfile?: LaunchTemplateIamInstanceProfileSpecification; /** - *The protocol.
+ *The block device mappings.
*/ - Protocol: Protocol | string | undefined; + BlockDeviceMappings?: LaunchTemplateBlockDeviceMapping[]; /** - *The destination port.
+ *The network interfaces.
*/ - DestinationPort?: number; + NetworkInterfaces?: LaunchTemplateInstanceNetworkInterfaceSpecification[]; /** - *The tags to add to the path.
+ *The ID of the AMI that was used to launch the instance.
*/ - TagSpecifications?: TagSpecification[]; + ImageId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The instance type.
*/ - DryRun?: boolean; + InstanceType?: _InstanceType | string; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, - * see How to ensure idempotency.
+ *The name of the key pair.
*/ - ClientToken?: string; -} + KeyName?: string; -export namespace CreateNetworkInsightsPathRequest { /** - * @internal + *The monitoring for the instance.
*/ - export const filterSensitiveLog = (obj: CreateNetworkInsightsPathRequest): any => ({ - ...obj, - }); -} + Monitoring?: LaunchTemplatesMonitoring; -/** - *Describes a path.
- */ -export interface NetworkInsightsPath { /** - *The ID of the path.
+ *The placement of the instance.
*/ - NetworkInsightsPathId?: string; + Placement?: LaunchTemplatePlacement; /** - *The Amazon Resource Name (ARN) of the path.
+ *The ID of the RAM disk, if applicable.
*/ - NetworkInsightsPathArn?: string; + RamDiskId?: string; /** - *The time stamp when the path was created.
+ *If set to true
, indicates that the instance cannot be terminated using
+ * the Amazon EC2 console, command line tool, or API.
The Amazon Web Services resource that is the source of the path.
+ *Indicates whether an instance stops or terminates when you initiate shutdown from + * the instance (using the operating system command for system shutdown).
*/ - Source?: string; + InstanceInitiatedShutdownBehavior?: ShutdownBehavior | string; /** - *The Amazon Web Services resource that is the destination of the path.
+ *The user data for the instance.
*/ - Destination?: string; + UserData?: string; /** - *The IP address of the Amazon Web Services resource that is the source of the path.
+ *The tags.
*/ - SourceIp?: string; + TagSpecifications?: LaunchTemplateTagSpecification[]; /** - *The IP address of the Amazon Web Services resource that is the destination of the path.
+ *The elastic GPU specification.
*/ - DestinationIp?: string; + ElasticGpuSpecifications?: ElasticGpuSpecificationResponse[]; /** - *The protocol.
+ *+ * The elastic inference accelerator for the instance. + *
*/ - Protocol?: Protocol | string; + ElasticInferenceAccelerators?: LaunchTemplateElasticInferenceAcceleratorResponse[]; /** - *The destination port.
+ *The security group IDs.
*/ - DestinationPort?: number; + SecurityGroupIds?: string[]; /** - *The tags associated with the path.
+ *The security group names.
*/ - Tags?: Tag[]; -} + SecurityGroups?: string[]; -export namespace NetworkInsightsPath { /** - * @internal + *The market (purchasing) option for the instances.
*/ - export const filterSensitiveLog = (obj: NetworkInsightsPath): any => ({ - ...obj, - }); -} + InstanceMarketOptions?: LaunchTemplateInstanceMarketOptions; -export interface CreateNetworkInsightsPathResult { /** - *Information about the path.
+ *The credit option for CPU usage of the instance.
*/ - NetworkInsightsPath?: NetworkInsightsPath; -} + CreditSpecification?: CreditSpecification; -export namespace CreateNetworkInsightsPathResult { /** - * @internal + *The CPU options for the instance. For more information, see Optimizing CPU options in the Amazon Elastic Compute Cloud User + * Guide.
*/ - export const filterSensitiveLog = (obj: CreateNetworkInsightsPathResult): any => ({ - ...obj, - }); -} - -export type NetworkInterfaceCreationType = "branch" | "efa" | "trunk"; + CpuOptions?: LaunchTemplateCpuOptions; -/** - *Contains the parameters for CreateNetworkInterface.
- */ -export interface CreateNetworkInterfaceRequest { /** - *A description for the network interface.
+ *Information about the Capacity Reservation targeting option.
*/ - Description?: string; + CapacityReservationSpecification?: LaunchTemplateCapacityReservationSpecificationResponse; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The license configurations.
*/ - DryRun?: boolean; + LicenseSpecifications?: LaunchTemplateLicenseConfiguration[]; /** - *The IDs of one or more security groups.
+ *Indicates whether an instance is configured for hibernation. For more information, see + * Hibernate + * your instance in the Amazon Elastic Compute Cloud User Guide.
*/ - Groups?: string[]; + HibernationOptions?: LaunchTemplateHibernationOptions; /** - *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. If your subnet has the AssignIpv6AddressOnCreation
attribute set
- * to true
, you can specify 0
to override this setting.
The metadata options for the instance. For more information, see Instance metadata and user data in the + * Amazon Elastic Compute Cloud User Guide.
*/ - Ipv6AddressCount?: number; + MetadataOptions?: LaunchTemplateInstanceMetadataOptions; /** - *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.
+ *Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.
*/ - Ipv6Addresses?: InstanceIpv6Address[]; + EnclaveOptions?: LaunchTemplateEnclaveOptions; /** - *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).
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
.
One or more private IPv4 addresses.
+ *The options for the instance hostname.
*/ - PrivateIpAddresses?: PrivateIpAddressSpecification[]; + PrivateDnsNameOptions?: LaunchTemplatePrivateDnsNameOptions; +} +export namespace ResponseLaunchTemplateData { /** - *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
.
The number of IP addresses you can assign to a network interface varies by instance - * type. For more information, see IP Addresses Per ENI Per - * Instance Type in the Amazon Virtual Private Cloud User Guide.
+ * @internal */ - SecondaryPrivateIpAddressCount?: number; + export const filterSensitiveLog = (obj: ResponseLaunchTemplateData): any => ({ + ...obj, + }); +} +/** + *Describes a launch template version.
+ */ +export interface LaunchTemplateVersion { /** - *One or more IPv4 prefixes assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount
option.
The ID of the launch template.
*/ - Ipv4Prefixes?: Ipv4PrefixSpecificationRequest[]; + LaunchTemplateId?: string; /** - *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.
The name of the launch template.
*/ - Ipv4PrefixCount?: number; + LaunchTemplateName?: string; /** - *One or more IPv6 prefixes assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount
option.
The version number.
*/ - Ipv6Prefixes?: Ipv6PrefixSpecificationRequest[]; + VersionNumber?: number; /** - *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.
The description for the version.
*/ - Ipv6PrefixCount?: number; + VersionDescription?: string; /** - *Indicates 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. To create a trunk network interface, specify
- * efa
. For more information, see
- * Network interface trunking in the Amazon Elastic Compute Cloud User Guide.
The time the version was created.
*/ - InterfaceType?: NetworkInterfaceCreationType | string; + CreateTime?: Date; /** - *The ID of the subnet to associate with the network interface.
+ *The principal that created the version.
*/ - SubnetId: string | undefined; + CreatedBy?: string; /** - *The tags to apply to the new network interface.
+ *Indicates whether the version is the default version.
*/ - TagSpecifications?: TagSpecification[]; + DefaultVersion?: boolean; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
+ *Information about the launch template.
*/ - ClientToken?: string; + LaunchTemplateData?: ResponseLaunchTemplateData; } -export namespace CreateNetworkInterfaceRequest { +export namespace LaunchTemplateVersion { /** * @internal */ - export const filterSensitiveLog = (obj: CreateNetworkInterfaceRequest): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateVersion): any => ({ ...obj, }); } -/** - *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).
- */ -export interface NetworkInterfaceAssociation { +export interface CreateLaunchTemplateVersionResult { /** - *The allocation ID.
+ *Information about the launch template version.
*/ - AllocationId?: string; + LaunchTemplateVersion?: LaunchTemplateVersion; /** - *The association ID.
+ *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.
*/ - AssociationId?: string; + Warning?: ValidationWarning; +} +export namespace CreateLaunchTemplateVersionResult { /** - *The ID of the Elastic IP address owner.
+ * @internal */ - IpOwnerId?: string; + export const filterSensitiveLog = (obj: CreateLaunchTemplateVersionResult): any => ({ + ...obj, + }); +} +export interface CreateLocalGatewayRouteRequest { /** - *The public DNS name.
+ *The CIDR range used for destination matches. Routing decisions are based on + * the most specific match.
*/ - PublicDnsName?: string; + DestinationCidrBlock: string | undefined; /** - *The address of the Elastic IP address bound to the network - * interface.
+ *The ID of the local gateway route table.
*/ - PublicIp?: string; + LocalGatewayRouteTableId: string | undefined; /** - *The customer-owned IP address associated with the network interface.
+ *The ID of the virtual interface group.
*/ - CustomerOwnedIp?: string; + LocalGatewayVirtualInterfaceGroupId: string | undefined; /** - *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.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a network interface attachment.
+ *Describes a route for a local gateway route table.
*/ -export interface NetworkInterfaceAttachment { - /** - *The timestamp indicating when the attachment initiated.
- */ - AttachTime?: Date; - +export interface LocalGatewayRoute { /** - *The ID of the network interface attachment.
+ *The CIDR block used for destination matches.
*/ - AttachmentId?: string; + DestinationCidrBlock?: string; /** - *Indicates whether the network interface is deleted when the instance is terminated.
+ *The ID of the virtual interface group.
*/ - DeleteOnTermination?: boolean; + LocalGatewayVirtualInterfaceGroupId?: string; /** - *The device index of the network interface attachment on the instance.
+ *The route type.
*/ - DeviceIndex?: number; + Type?: LocalGatewayRouteType | string; /** - *The index of the network card.
+ *The state of the route.
*/ - NetworkCardIndex?: number; + State?: LocalGatewayRouteState | string; /** - *The ID of the instance.
+ *The ID of the local gateway route table.
*/ - InstanceId?: string; + LocalGatewayRouteTableId?: string; /** - *The Amazon Web Services account ID of the owner of the instance.
+ *The Amazon Resource Name (ARN) of the local gateway route table.
*/ - InstanceOwnerId?: string; + LocalGatewayRouteTableArn?: string; /** - *The attachment state.
+ *The ID of the Amazon Web Services account that owns the local gateway route.
*/ - Status?: AttachmentStatus | string; + OwnerId?: string; } -export namespace NetworkInterfaceAttachment { +export namespace LocalGatewayRoute { /** * @internal */ - export const filterSensitiveLog = (obj: NetworkInterfaceAttachment): any => ({ + export const filterSensitiveLog = (obj: LocalGatewayRoute): any => ({ ...obj, }); } -/** - *Describes a security group.
- */ -export interface GroupIdentifier { - /** - *The name of the security group.
- */ - GroupName?: string; - +export interface CreateLocalGatewayRouteResult { /** - *The ID of the security group.
+ *Information about the route.
*/ - GroupId?: string; + Route?: LocalGatewayRoute; } -export namespace GroupIdentifier { +export namespace CreateLocalGatewayRouteResult { /** * @internal */ - export const filterSensitiveLog = (obj: GroupIdentifier): any => ({ + export const filterSensitiveLog = (obj: CreateLocalGatewayRouteResult): any => ({ ...obj, }); } -export type NetworkInterfaceType = "efa" | "interface" | "natGateway" | "trunk"; +export interface CreateLocalGatewayRouteTableVpcAssociationRequest { + /** + *The ID of the local gateway route table.
+ */ + LocalGatewayRouteTableId: string | undefined; -/** - *Describes an IPv6 address associated with a network interface.
- */ -export interface NetworkInterfaceIpv6Address { /** - *The IPv6 address.
+ *The ID of the VPC.
*/ - Ipv6Address?: string; -} + VpcId: string | undefined; -export namespace NetworkInterfaceIpv6Address { /** - * @internal + *The tags to assign to the local gateway route table VPC association.
*/ - export const filterSensitiveLog = (obj: NetworkInterfaceIpv6Address): any => ({ - ...obj, - }); -} + TagSpecifications?: TagSpecification[]; -/** - *Describes the IPv6 prefix.
- */ -export interface Ipv6PrefixSpecification { /** - *The IPv6 prefix.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes the private IPv4 address of a network interface.
+ *Describes an association between a local gateway route table and a VPC.
*/ -export interface NetworkInterfacePrivateIpAddress { - /** - *The association information for an Elastic IP address (IPv4) associated with the network interface.
- */ - Association?: NetworkInterfaceAssociation; - +export interface LocalGatewayRouteTableVpcAssociation { /** - *Indicates whether this IPv4 address is the primary private IPv4 address of the network interface.
+ *The ID of the association.
*/ - Primary?: boolean; + LocalGatewayRouteTableVpcAssociationId?: string; /** - *The private DNS name.
+ *The ID of the local gateway route table.
*/ - PrivateDnsName?: string; + LocalGatewayRouteTableId?: string; /** - *The private IPv4 address.
+ *The Amazon Resource Name (ARN) of the local gateway route table for the association.
*/ - PrivateIpAddress?: string; -} + LocalGatewayRouteTableArn?: string; -export namespace NetworkInterfacePrivateIpAddress { /** - * @internal + *The ID of the local gateway.
*/ - export const filterSensitiveLog = (obj: NetworkInterfacePrivateIpAddress): any => ({ - ...obj, - }); -} - -export type NetworkInterfaceStatus = "associated" | "attaching" | "available" | "detaching" | "in-use"; + LocalGatewayId?: string; -/** - *Describes a network interface.
- */ -export interface NetworkInterface { /** - *The association information for an Elastic IP address (IPv4) associated with the network interface.
+ *The ID of the VPC.
*/ - Association?: NetworkInterfaceAssociation; + VpcId?: string; /** - *The network interface attachment.
+ *The ID of the Amazon Web Services account that owns the local gateway route table for the association.
*/ - Attachment?: NetworkInterfaceAttachment; + OwnerId?: string; /** - *The Availability Zone.
+ *The state of the association.
*/ - AvailabilityZone?: string; + State?: string; /** - *A description.
+ *The tags assigned to the association.
*/ - Description?: string; + Tags?: Tag[]; +} +export namespace LocalGatewayRouteTableVpcAssociation { /** - *Any security groups for the network interface.
+ * @internal */ - Groups?: GroupIdentifier[]; + export const filterSensitiveLog = (obj: LocalGatewayRouteTableVpcAssociation): any => ({ + ...obj, + }); +} +export interface CreateLocalGatewayRouteTableVpcAssociationResult { /** - *The type of network interface.
+ *Information about the association.
*/ - InterfaceType?: NetworkInterfaceType | string; + LocalGatewayRouteTableVpcAssociation?: LocalGatewayRouteTableVpcAssociation; +} +export namespace CreateLocalGatewayRouteTableVpcAssociationResult { /** - *The IPv6 addresses associated with the network interface.
+ * @internal */ - Ipv6Addresses?: NetworkInterfaceIpv6Address[]; + export const filterSensitiveLog = (obj: CreateLocalGatewayRouteTableVpcAssociationResult): any => ({ + ...obj, + }); +} +export interface CreateManagedPrefixListRequest { /** - *The MAC 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
.
The ID of the network interface.
+ *A name for the prefix list.
+ *Constraints: Up to 255 characters in length. The name cannot start with com.amazonaws
.
The Amazon Resource Name (ARN) of the Outpost.
+ *One or more entries for the prefix list.
*/ - OutpostArn?: string; + Entries?: AddPrefixListEntry[]; /** - *The Amazon Web Services account ID of the owner of the network interface.
+ *The maximum number of entries for the prefix list.
*/ - OwnerId?: string; + MaxEntries: number | undefined; /** - *The private DNS name.
+ *The tags to apply to the prefix list during creation.
*/ - PrivateDnsName?: string; + TagSpecifications?: TagSpecification[]; /** - *The IPv4 address of the network interface within the subnet.
+ *The IP address type.
+ *Valid Values: IPv4
| IPv6
+ *
The private IPv4 addresses associated with the network interface.
+ *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.
*/ - PrivateIpAddresses?: NetworkInterfacePrivateIpAddress[]; + ClientToken?: string; +} +export namespace CreateManagedPrefixListRequest { /** - *The IPv4 prefixes that are assigned to the network interface.
+ * @internal */ - Ipv4Prefixes?: Ipv4PrefixSpecification[]; + export const filterSensitiveLog = (obj: CreateManagedPrefixListRequest): any => ({ + ...obj, + }); +} - /** - *The IPv6 prefixes that are assigned to the network interface.
- */ - Ipv6Prefixes?: Ipv6PrefixSpecification[]; +export type PrefixListState = + | "create-complete" + | "create-failed" + | "create-in-progress" + | "delete-complete" + | "delete-failed" + | "delete-in-progress" + | "modify-complete" + | "modify-failed" + | "modify-in-progress" + | "restore-complete" + | "restore-failed" + | "restore-in-progress"; +/** + *Describes a managed prefix list.
+ */ +export interface ManagedPrefixList { /** - *The alias or Amazon Web Services account ID of the principal or service that created the network interface.
+ *The ID of the prefix list.
*/ - RequesterId?: string; + PrefixListId?: string; /** - *Indicates whether the network interface is being managed by Amazon Web Services.
+ *The IP address version.
*/ - RequesterManaged?: boolean; + AddressFamily?: string; /** - *Indicates whether source/destination checking is enabled.
+ *The current state of the prefix list.
*/ - SourceDestCheck?: boolean; + State?: PrefixListState | string; /** - *The status of the network interface.
+ *The state message.
*/ - Status?: NetworkInterfaceStatus | string; + StateMessage?: string; /** - *The ID of the subnet.
+ *The Amazon Resource Name (ARN) for the prefix list.
*/ - SubnetId?: string; + PrefixListArn?: string; /** - *Any tags assigned to the network interface.
+ *The name of the prefix list.
*/ - TagSet?: Tag[]; + PrefixListName?: string; /** - *The ID of the VPC.
+ *The maximum number of entries for the prefix list.
*/ - VpcId?: string; + MaxEntries?: number; /** - *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.
The version of the prefix list.
*/ - DenyAllIgwTraffic?: boolean; + Version?: number; /** - *Indicates whether this is an IPv6 only network interface.
+ *The tags for the prefix list.
*/ - Ipv6Native?: boolean; + Tags?: Tag[]; /** - *The IPv6 globally unique address associated with the network interface.
+ *The ID of the owner of the prefix list.
*/ - Ipv6Address?: string; + OwnerId?: string; } -export namespace NetworkInterface { +export namespace ManagedPrefixList { /** * @internal */ - export const filterSensitiveLog = (obj: NetworkInterface): any => ({ + export const filterSensitiveLog = (obj: ManagedPrefixList): any => ({ ...obj, }); } -/** - *Contains the output of CreateNetworkInterface.
- */ -export interface CreateNetworkInterfaceResult { - /** - *Information about the network interface.
- */ - NetworkInterface?: NetworkInterface; - +export interface CreateManagedPrefixListResult { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the prefix list.
*/ - ClientToken?: string; + PrefixList?: ManagedPrefixList; } -export namespace CreateNetworkInterfaceResult { +export namespace CreateManagedPrefixListResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateNetworkInterfaceResult): any => ({ + export const filterSensitiveLog = (obj: CreateManagedPrefixListResult): any => ({ ...obj, }); } -export type InterfacePermissionType = "EIP-ASSOCIATE" | "INSTANCE-ATTACH"; +export enum ConnectivityType { + PRIVATE = "private", + PUBLIC = "public", +} -/** - *Contains the parameters for CreateNetworkInterfacePermission.
- */ -export interface CreateNetworkInterfacePermissionRequest { +export interface CreateNatGatewayRequest { /** - *The ID of the network interface.
+ *[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.
*/ - NetworkInterfaceId: string | undefined; + AllocationId?: string; /** - *The Amazon Web Services account ID.
+ *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.
*/ - AwsAccountId?: string; + ClientToken?: string; /** - *The Amazon Web Service. Currently not supported.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The type of permission to grant.
+ *The subnet in which to create the NAT gateway.
*/ - Permission: InterfacePermissionType | string | undefined; + SubnetId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The tags to assign to the NAT gateway.
*/ - DryRun?: boolean; + TagSpecifications?: TagSpecification[]; + + /** + *Indicates whether the NAT gateway supports public or private connectivity. + * The default is public connectivity.
+ */ + ConnectivityType?: ConnectivityType | string; } -export namespace CreateNetworkInterfacePermissionRequest { +export namespace CreateNatGatewayRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateNetworkInterfacePermissionRequest): any => ({ + export const filterSensitiveLog = (obj: CreateNatGatewayRequest): any => ({ ...obj, }); } -export type NetworkInterfacePermissionStateCode = "granted" | "pending" | "revoked" | "revoking"; - /** - *Describes the state of a network interface permission.
+ *Describes the IP addresses and network interface associated with a NAT gateway.
*/ -export interface NetworkInterfacePermissionState { +export interface NatGatewayAddress { /** - *The state of the permission.
+ *[Public NAT gateway only] The allocation ID of the Elastic IP address that's associated with the NAT gateway.
*/ - State?: NetworkInterfacePermissionStateCode | string; + AllocationId?: string; /** - *A status message, if applicable.
+ *The ID of the network interface associated with the NAT gateway.
*/ - StatusMessage?: string; + NetworkInterfaceId?: string; + + /** + *The private IP address associated with the NAT gateway.
+ */ + PrivateIp?: string; + + /** + *[Public NAT gateway only] The Elastic IP address associated with the NAT gateway.
+ */ + PublicIp?: string; } -export namespace NetworkInterfacePermissionState { +export namespace NatGatewayAddress { /** * @internal */ - export const filterSensitiveLog = (obj: NetworkInterfacePermissionState): any => ({ + export const filterSensitiveLog = (obj: NatGatewayAddress): any => ({ ...obj, }); } /** - *Describes a permission for a network interface.
+ *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
*/ -export interface NetworkInterfacePermission { - /** - *The ID of the network interface permission.
- */ - NetworkInterfacePermissionId?: string; - +export interface ProvisionedBandwidth { /** - *The ID of the network interface.
+ *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
*/ - NetworkInterfaceId?: string; + ProvisionTime?: Date; /** - *The Amazon Web Services account ID.
+ *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
*/ - AwsAccountId?: string; + Provisioned?: string; /** - *The Amazon Web Service.
+ *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
*/ - AwsService?: string; + RequestTime?: Date; /** - *The type of permission.
+ *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
*/ - Permission?: InterfacePermissionType | string; + Requested?: string; /** - *Information about the state of the permission.
+ *Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
*/ - PermissionState?: NetworkInterfacePermissionState; + Status?: string; } -export namespace NetworkInterfacePermission { +export namespace ProvisionedBandwidth { /** * @internal */ - export const filterSensitiveLog = (obj: NetworkInterfacePermission): any => ({ + export const filterSensitiveLog = (obj: ProvisionedBandwidth): any => ({ ...obj, }); } -/** - *Contains the output of CreateNetworkInterfacePermission.
- */ -export interface CreateNetworkInterfacePermissionResult { - /** - *Information about the permission for the network interface.
- */ - InterfacePermission?: NetworkInterfacePermission; -} - -export namespace CreateNetworkInterfacePermissionResult { - /** - * @internal - */ - export const filterSensitiveLog = (obj: CreateNetworkInterfacePermissionResult): any => ({ - ...obj, - }); +export enum NatGatewayState { + AVAILABLE = "available", + DELETED = "deleted", + DELETING = "deleting", + FAILED = "failed", + PENDING = "pending", } -export type PlacementStrategy = "cluster" | "partition" | "spread"; - -export interface CreatePlacementGroupRequest { +/** + *Describes a NAT gateway.
+ */ +export interface NatGateway { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The date and time the NAT gateway was created.
*/ - DryRun?: boolean; + CreateTime?: Date; /** - *A name for the placement group. Must be unique within the scope of your account for - * the Region.
- *Constraints: Up to 255 ASCII characters
+ *The date and time the NAT gateway was deleted, if applicable.
*/ - GroupName?: string; + DeleteTime?: Date; /** - *The placement strategy.
+ *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
)
The number of partitions. Valid only when Strategy is
- * set to partition
.
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."
+ *The tags to apply to the new placement group.
+ *Information about the IP addresses and network interface associated with the NAT gateway.
*/ - TagSpecifications?: TagSpecification[]; -} + NatGatewayAddresses?: NatGatewayAddress[]; -export namespace CreatePlacementGroupRequest { /** - * @internal + *The ID of the NAT gateway.
*/ - export const filterSensitiveLog = (obj: CreatePlacementGroupRequest): any => ({ - ...obj, - }); -} - -export type PlacementGroupState = "available" | "deleted" | "deleting" | "pending"; + NatGatewayId?: string; -/** - *Describes a placement group.
- */ -export interface PlacementGroup { /** - *The name of the placement group.
+ *Reserved. If you need to sustain traffic greater than the documented limits, contact us through + * the Support Center.
*/ - GroupName?: string; + ProvisionedBandwidth?: ProvisionedBandwidth; /** - *The state of the placement group.
+ *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.
The placement strategy.
+ *The ID of the subnet in which the NAT gateway is located.
*/ - Strategy?: PlacementStrategy | string; + SubnetId?: string; /** - *The number of partitions. Valid only if strategy is
- * set to partition
.
The ID of the VPC in which the NAT gateway is located.
*/ - PartitionCount?: number; + VpcId?: string; /** - *The ID of the placement group.
+ *The tags for the NAT gateway.
*/ - GroupId?: string; + Tags?: Tag[]; /** - *Any tags applied to the placement group.
+ *Indicates whether the NAT gateway supports public or private connectivity.
*/ - Tags?: Tag[]; + ConnectivityType?: ConnectivityType | string; } -export namespace PlacementGroup { +export namespace NatGateway { /** * @internal */ - export const filterSensitiveLog = (obj: PlacementGroup): any => ({ + export const filterSensitiveLog = (obj: NatGateway): any => ({ ...obj, }); } -export interface CreatePlacementGroupResult { +export interface CreateNatGatewayResult { /** - *Describes a placement group.
+ *Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.
*/ - PlacementGroup?: PlacementGroup; + ClientToken?: string; + + /** + *Information about the NAT gateway.
+ */ + NatGateway?: NatGateway; } -export namespace CreatePlacementGroupResult { +export namespace CreateNatGatewayResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreatePlacementGroupResult): any => ({ + export const filterSensitiveLog = (obj: CreateNatGatewayResult): any => ({ ...obj, }); } -export interface CreateReplaceRootVolumeTaskRequest { - /** - *The ID of the instance for which to replace the root volume.
- */ - InstanceId: string | undefined; - - /** - *The ID of the snapshot from which to restore the replacement root volume. If you want to - * restore the volume to the initial launch state, omit this parameter.
- */ - SnapshotId?: string; - - /** - *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.
- */ - ClientToken?: string; - +export interface CreateNetworkAclRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -5869,1325 +6410,1330 @@ export interface CreateReplaceRootVolumeTaskRequest {
DryRun?: boolean;
/**
- *
The tags to apply to the root volume replacement task.
+ *The ID of the VPC.
+ */ + VpcId: string | undefined; + + /** + *The tags to assign to the network ACL.
*/ TagSpecifications?: TagSpecification[]; } -export namespace CreateReplaceRootVolumeTaskRequest { +export namespace CreateNetworkAclRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateReplaceRootVolumeTaskRequest): any => ({ + export const filterSensitiveLog = (obj: CreateNetworkAclRequest): any => ({ ...obj, }); } -export enum ReplaceRootVolumeTaskState { - failed = "failed", - failed_detached = "failed-detached", - failing = "failing", - in_progress = "in-progress", - pending = "pending", - succeeded = "succeeded", -} - /** - *Information about a root volume replacement task.
+ *Describes an association between a network ACL and a subnet.
*/ -export interface ReplaceRootVolumeTask { - /** - *The ID of the root volume replacement task.
- */ - ReplaceRootVolumeTaskId?: string; - - /** - *The ID of the instance for which the root volume replacement task was created.
- */ - InstanceId?: string; - - /** - *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.
The time the task was started.
+ *The ID of the association between a network ACL and a subnet.
*/ - StartTime?: string; + NetworkAclAssociationId?: string; /** - *The time the task completed.
+ *The ID of the network ACL.
*/ - CompleteTime?: string; + NetworkAclId?: string; /** - *The tags assigned to the task.
+ *The ID of the subnet.
*/ - Tags?: Tag[]; + SubnetId?: string; } -export namespace ReplaceRootVolumeTask { +export namespace NetworkAclAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: ReplaceRootVolumeTask): any => ({ + export const filterSensitiveLog = (obj: NetworkAclAssociation): any => ({ ...obj, }); } -export interface CreateReplaceRootVolumeTaskResult { +/** + *Describes the ICMP type and code.
+ */ +export interface IcmpTypeCode { /** - *Information about the root volume replacement task.
+ *The ICMP code. A value of -1 means all codes for the specified ICMP type.
*/ - ReplaceRootVolumeTask?: ReplaceRootVolumeTask; + Code?: number; + + /** + *The ICMP type. A value of -1 means all types.
+ */ + Type?: number; } -export namespace CreateReplaceRootVolumeTaskResult { +export namespace IcmpTypeCode { /** * @internal */ - export const filterSensitiveLog = (obj: CreateReplaceRootVolumeTaskResult): any => ({ + export const filterSensitiveLog = (obj: IcmpTypeCode): any => ({ ...obj, }); } +export type RuleAction = "allow" | "deny"; + /** - *Describes the price for a Reserved Instance.
+ *Describes an entry in a network ACL.
*/ -export interface PriceScheduleSpecification { +export interface NetworkAclEntry { /** - *The currency for transacting the Reserved Instance resale.
- * At this time, the only supported currency is USD
.
The IPv4 network range to allow or deny, in CIDR notation.
*/ - CurrencyCode?: CurrencyCodeValues | string; + CidrBlock?: string; /** - *The fixed price for the term.
+ *Indicates whether the rule is an egress rule (applied to traffic leaving the subnet).
*/ - Price?: number; + Egress?: boolean; /** - *The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.
+ *ICMP protocol: The ICMP type and code.
*/ - Term?: number; -} + IcmpTypeCode?: IcmpTypeCode; -export namespace PriceScheduleSpecification { /** - * @internal + *The IPv6 network range to allow or deny, in CIDR notation.
*/ - export const filterSensitiveLog = (obj: PriceScheduleSpecification): any => ({ - ...obj, - }); -} - -/** - *Contains the parameters for CreateReservedInstancesListing.
- */ -export interface CreateReservedInstancesListingRequest { + Ipv6CidrBlock?: string; + /** - *Unique, case-sensitive identifier you provide to ensure idempotency of your - * listings. This helps avoid duplicate listings. For more information, see - * Ensuring Idempotency.
+ *TCP or UDP protocols: The range of ports the rule applies to.
*/ - ClientToken: string | undefined; + PortRange?: PortRange; /** - *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.
+ *The protocol number. A value of "-1" means all protocols.
*/ - InstanceCount: number | undefined; + Protocol?: string; /** - *A list specifying the price of the Standard Reserved Instance for each month remaining in the Reserved Instance term.
+ *Indicates whether to allow or deny the traffic that matches the rule.
*/ - PriceSchedules: PriceScheduleSpecification[] | undefined; + RuleAction?: RuleAction | string; /** - *The ID of the active Standard Reserved Instance.
+ *The rule number for the entry. ACL entries are processed in ascending order by rule number.
*/ - ReservedInstancesId: string | undefined; + RuleNumber?: number; } -export namespace CreateReservedInstancesListingRequest { +export namespace NetworkAclEntry { /** * @internal */ - export const filterSensitiveLog = (obj: CreateReservedInstancesListingRequest): any => ({ + export const filterSensitiveLog = (obj: NetworkAclEntry): any => ({ ...obj, }); } /** - *Contains the output of CreateReservedInstancesListing.
+ *Describes a network ACL.
*/ -export interface CreateReservedInstancesListingResult { +export interface NetworkAcl { /** - *Information about the Standard Reserved Instance listing.
+ *Any associations between the network ACL and one or more subnets
*/ - ReservedInstancesListings?: ReservedInstancesListing[]; -} + Associations?: NetworkAclAssociation[]; -export namespace CreateReservedInstancesListingResult { /** - * @internal + *One or more entries (rules) in the network ACL.
*/ - export const filterSensitiveLog = (obj: CreateReservedInstancesListingResult): any => ({ - ...obj, - }); -} + Entries?: NetworkAclEntry[]; -export interface CreateRestoreImageTaskRequest { /** - *The name of the Amazon S3 bucket that contains the stored AMI object.
+ *Indicates whether this is the default network ACL for the VPC.
*/ - Bucket: string | undefined; + IsDefault?: boolean; /** - *The name of the stored AMI object in the bucket.
+ *The ID of the network ACL.
*/ - ObjectKey: string | undefined; + NetworkAclId?: string; /** - *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.
+ *Any tags assigned to the network ACL.
*/ - Name?: string; + Tags?: Tag[]; /** - *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.
The ID of the VPC for the network ACL.
*/ - TagSpecifications?: TagSpecification[]; + VpcId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the Amazon Web Services account that owns the network ACL.
*/ - DryRun?: boolean; + OwnerId?: string; } -export namespace CreateRestoreImageTaskRequest { +export namespace NetworkAcl { /** * @internal */ - export const filterSensitiveLog = (obj: CreateRestoreImageTaskRequest): any => ({ + export const filterSensitiveLog = (obj: NetworkAcl): any => ({ ...obj, }); } -export interface CreateRestoreImageTaskResult { +export interface CreateNetworkAclResult { /** - *The AMI ID.
+ *Information about the network ACL.
*/ - ImageId?: string; + NetworkAcl?: NetworkAcl; } -export namespace CreateRestoreImageTaskResult { +export namespace CreateNetworkAclResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateRestoreImageTaskResult): any => ({ + export const filterSensitiveLog = (obj: CreateNetworkAclResult): any => ({ ...obj, }); } -export interface CreateRouteRequest { +export interface CreateNetworkAclEntryRequest { /** - *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
.
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
.
The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of a prefix list used for the destination match.
+ *Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).
*/ - DestinationPrefixListId?: string; + Egress: boolean | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol + * 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.
*/ - DryRun?: boolean; + IcmpTypeCode?: IcmpTypeCode; /** - *The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.
+ *The IPv6 network range to allow or deny, in CIDR notation (for example
+ * 2001:db8:1234:1a00::/64
).
[IPv6 traffic only] The ID of an egress-only internet gateway.
+ *The ID of the network ACL.
*/ - EgressOnlyInternetGatewayId?: string; + NetworkAclId: string | undefined; /** - *The ID of an internet gateway or virtual private gateway attached to your - * VPC.
+ *TCP or UDP protocols: The range of ports the rule applies to. + * Required if specifying protocol 6 (TCP) or 17 (UDP).
*/ - GatewayId?: string; + PortRange?: PortRange; /** - *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.
+ *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.
*/ - InstanceId?: string; + Protocol: string | undefined; /** - *[IPv4 traffic only] The ID of a NAT gateway.
+ *Indicates whether to allow or deny the traffic that matches the rule.
*/ - NatGatewayId?: string; + RuleAction: RuleAction | string | undefined; /** - *The ID of a transit gateway.
+ *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.
*/ - TransitGatewayId?: string; + RuleNumber: number | undefined; +} +export namespace CreateNetworkAclEntryRequest { /** - *The ID of the local gateway.
+ * @internal */ - LocalGatewayId?: string; + export const filterSensitiveLog = (obj: CreateNetworkAclEntryRequest): any => ({ + ...obj, + }); +} +export interface CreateNetworkInsightsAccessScopeRequest { /** - *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.
+ *The paths to match.
*/ - CarrierGatewayId?: string; + MatchPaths?: AccessScopePathRequest[]; /** - *The ID of a network interface.
+ *The paths to exclude.
*/ - NetworkInterfaceId?: string; + ExcludePaths?: AccessScopePathRequest[]; /** - *The ID of the route table for the route.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, + * see How to ensure idempotency.
*/ - RouteTableId: string | undefined; + ClientToken?: string; /** - *The ID of a VPC peering connection.
+ *The tags to apply.
*/ - VpcPeeringConnectionId?: string; + TagSpecifications?: TagSpecification[]; /** - *The Amazon Resource Name (ARN) of the core network.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a Network Access Scope.
+ */ +export interface NetworkInsightsAccessScope { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
The ID of the Network Access Scope.
*/ - Return?: boolean; -} + NetworkInsightsAccessScopeId?: string; -export namespace CreateRouteResult { /** - * @internal + *The Amazon Resource Name (ARN) of the Network Access Scope.
*/ - export const filterSensitiveLog = (obj: CreateRouteResult): any => ({ - ...obj, - }); -} + NetworkInsightsAccessScopeArn?: string; -export interface CreateRouteTableRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The creation date.
*/ - DryRun?: boolean; + CreatedDate?: Date; /** - *The ID of the VPC.
+ *The last updated date.
*/ - VpcId: string | undefined; + UpdatedDate?: Date; /** - *The tags to assign to the route table.
+ *The tags.
*/ - TagSpecifications?: TagSpecification[]; + Tags?: Tag[]; } -export namespace CreateRouteTableRequest { +export namespace NetworkInsightsAccessScope { /** * @internal */ - export const filterSensitiveLog = (obj: CreateRouteTableRequest): any => ({ + export const filterSensitiveLog = (obj: NetworkInsightsAccessScope): any => ({ ...obj, }); } /** - *Describes an association between a route table and a subnet or gateway.
+ *Describes the Network Access Scope content.
*/ -export interface RouteTableAssociation { +export interface NetworkInsightsAccessScopeContent { /** - *Indicates whether this is the main route table.
+ *The ID of the Network Access Scope.
*/ - Main?: boolean; + NetworkInsightsAccessScopeId?: string; /** - *The ID of the association.
+ *The paths to match.
*/ - RouteTableAssociationId?: string; + MatchPaths?: AccessScopePath[]; /** - *The ID of the route table.
+ *The paths to exclude.
*/ - RouteTableId?: string; + ExcludePaths?: AccessScopePath[]; +} +export namespace NetworkInsightsAccessScopeContent { /** - *The ID of the subnet. A subnet ID is not returned for an implicit association.
+ * @internal */ - SubnetId?: string; + export const filterSensitiveLog = (obj: NetworkInsightsAccessScopeContent): any => ({ + ...obj, + }); +} +export interface CreateNetworkInsightsAccessScopeResult { /** - *The ID of the internet gateway or virtual private gateway.
+ *The Network Access Scope.
*/ - GatewayId?: string; + NetworkInsightsAccessScope?: NetworkInsightsAccessScope; /** - *The state of the association.
+ *The Network Access Scope content.
*/ - AssociationState?: RouteTableAssociationState; + NetworkInsightsAccessScopeContent?: NetworkInsightsAccessScopeContent; } -export namespace RouteTableAssociation { +export namespace CreateNetworkInsightsAccessScopeResult { /** * @internal */ - export const filterSensitiveLog = (obj: RouteTableAssociation): any => ({ + export const filterSensitiveLog = (obj: CreateNetworkInsightsAccessScopeResult): any => ({ ...obj, }); } -/** - *Describes a virtual private gateway propagating route.
- */ -export interface PropagatingVgw { +export interface CreateNetworkInsightsPathRequest { /** - *The ID of the virtual private gateway.
+ *The IP address of the Amazon Web Services resource that is the source of the path.
*/ - GatewayId?: string; -} + SourceIp?: string; -export namespace PropagatingVgw { /** - * @internal + *The IP address of the Amazon Web Services resource that is the destination of the path.
*/ - export const filterSensitiveLog = (obj: PropagatingVgw): any => ({ - ...obj, - }); -} + DestinationIp?: string; -export type RouteOrigin = "CreateRoute" | "CreateRouteTable" | "EnableVgwRoutePropagation"; + /** + *The Amazon Web Services resource that is the source of the path.
+ */ + Source: string | undefined; + + /** + *The Amazon Web Services resource that is the destination of the path.
+ */ + Destination: string | undefined; + + /** + *The protocol.
+ */ + Protocol: Protocol | string | undefined; -export type RouteState = "active" | "blackhole"; + /** + *The destination port.
+ */ + DestinationPort?: number; -/** - *Describes a route in a route table.
- */ -export interface Route { /** - *The IPv4 CIDR block used for the destination match.
+ *The tags to add to the path.
*/ - DestinationCidrBlock?: string; + TagSpecifications?: TagSpecification[]; /** - *The IPv6 CIDR block used for the destination match.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The prefix of the Amazon Web Service.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, + * see How to ensure idempotency.
*/ - DestinationPrefixListId?: string; + ClientToken?: string; +} +export namespace CreateNetworkInsightsPathRequest { /** - *The ID of the egress-only internet gateway.
+ * @internal */ - EgressOnlyInternetGatewayId?: string; + export const filterSensitiveLog = (obj: CreateNetworkInsightsPathRequest): any => ({ + ...obj, + }); +} +/** + *Describes a path.
+ */ +export interface NetworkInsightsPath { /** - *The ID of a gateway attached to your VPC.
+ *The ID of the path.
*/ - GatewayId?: string; + NetworkInsightsPathId?: string; /** - *The ID of a NAT instance in your VPC.
+ *The Amazon Resource Name (ARN) of the path.
*/ - InstanceId?: string; + NetworkInsightsPathArn?: string; /** - *The ID of Amazon Web Services account that owns the instance.
+ *The time stamp when the path was created.
*/ - InstanceOwnerId?: string; + CreatedDate?: Date; /** - *The ID of a NAT gateway.
+ *The Amazon Web Services resource that is the source of the path.
*/ - NatGatewayId?: string; + Source?: string; /** - *The ID of a transit gateway.
+ *The Amazon Web Services resource that is the destination of the path.
*/ - TransitGatewayId?: string; + Destination?: string; /** - *The ID of the local gateway.
+ *The IP address of the Amazon Web Services resource that is the source of the path.
*/ - LocalGatewayId?: string; + SourceIp?: string; /** - *The ID of the carrier gateway.
+ *The IP address of the Amazon Web Services resource that is the destination of the path.
*/ - CarrierGatewayId?: string; + DestinationIp?: string; /** - *The ID of the network interface.
+ *The protocol.
*/ - NetworkInterfaceId?: string; + Protocol?: Protocol | string; /** - *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.
The destination port.
*/ - Origin?: RouteOrigin | string; + DestinationPort?: number; /** - *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).
The tags associated with the path.
*/ - State?: RouteState | string; + Tags?: Tag[]; +} +export namespace NetworkInsightsPath { /** - *The ID of a VPC peering connection.
+ * @internal */ - VpcPeeringConnectionId?: string; + export const filterSensitiveLog = (obj: NetworkInsightsPath): any => ({ + ...obj, + }); +} +export interface CreateNetworkInsightsPathResult { /** - *The Amazon Resource Name (ARN) of the core network.
+ *Information about the path.
*/ - CoreNetworkArn?: string; + NetworkInsightsPath?: NetworkInsightsPath; } -export namespace Route { +export namespace CreateNetworkInsightsPathResult { /** * @internal */ - export const filterSensitiveLog = (obj: Route): any => ({ + export const filterSensitiveLog = (obj: CreateNetworkInsightsPathResult): any => ({ ...obj, }); } +export type NetworkInterfaceCreationType = "branch" | "efa" | "trunk"; + /** - *Describes a route table.
+ *Contains the parameters for CreateNetworkInterface.
*/ -export interface RouteTable { +export interface CreateNetworkInterfaceRequest { /** - *The associations between the route table and one or more subnets or a gateway.
+ *A description for the network interface.
*/ - Associations?: RouteTableAssociation[]; + Description?: string; /** - *Any virtual private gateway (VGW) propagating routes.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the route table.
+ *The IDs of one or more security groups.
*/ - RouteTableId?: string; + Groups?: string[]; /** - *The routes in the route table.
+ *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. If your subnet has the AssignIpv6AddressOnCreation
attribute set
+ * to true
, you can specify 0
to override this setting.
Any tags assigned to the route table.
+ *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.
*/ - Tags?: Tag[]; + Ipv6Addresses?: InstanceIpv6Address[]; /** - *The ID of the VPC.
+ *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).
The ID of the Amazon Web Services account that owns the route table.
+ *One or more private IPv4 addresses.
*/ - OwnerId?: string; -} + PrivateIpAddresses?: PrivateIpAddressSpecification[]; -export namespace RouteTable { /** - * @internal + *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
.
The number of IP addresses you can assign to a network interface varies by instance + * type. For more information, see IP Addresses Per ENI Per + * Instance Type in the Amazon Virtual Private Cloud User Guide.
*/ - export const filterSensitiveLog = (obj: RouteTable): any => ({ - ...obj, - }); -} + SecondaryPrivateIpAddressCount?: number; -export interface CreateRouteTableResult { /** - *Information about the route table.
+ *One or more IPv4 prefixes assigned to the network interface. You cannot use this option if you use the Ipv4PrefixCount
option.
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.
A description for the security group. This is informational only.
- *Constraints: Up to 255 characters in length
- *Constraints for EC2-Classic: ASCII characters
- *Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
+ *One or more IPv6 prefixes assigned to the network interface. You cannot use this option if you use the Ipv6PrefixCount
option.
The name of the security group.
- *Constraints: Up to 255 characters in length. Cannot start with
- * sg-
.
Constraints for EC2-Classic: ASCII characters
- *Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
+ *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.
[EC2-VPC] The ID of the VPC. Required for EC2-VPC.
+ *Indicates 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. To create a trunk network interface, specify
+ * efa
. For more information, see
+ * Network interface trunking in the Amazon Elastic Compute Cloud User Guide.
The tags to assign to the security group.
+ *The ID of the subnet to associate with the network interface.
+ */ + SubnetId: string | undefined; + + /** + *The tags to apply to the new network interface.
*/ TagSpecifications?: TagSpecification[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
*/ - DryRun?: boolean; + ClientToken?: string; } -export namespace CreateSecurityGroupRequest { +export namespace CreateNetworkInterfaceRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateSecurityGroupRequest): any => ({ + export const filterSensitiveLog = (obj: CreateNetworkInterfaceRequest): any => ({ ...obj, }); } -export interface CreateSecurityGroupResult { - /** - *The ID of the security group.
- */ - GroupId?: string; - +/** + *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).
+ */ +export interface NetworkInterfaceAssociation { /** - *The tags assigned to the security group.
+ *The allocation ID.
*/ - Tags?: Tag[]; -} + AllocationId?: string; -export namespace CreateSecurityGroupResult { /** - * @internal + *The association ID.
*/ - export const filterSensitiveLog = (obj: CreateSecurityGroupResult): any => ({ - ...obj, - }); -} + AssociationId?: string; -export interface CreateSnapshotRequest { /** - *A description for the snapshot.
+ *The ID of the Elastic IP address owner.
*/ - Description?: string; + IpOwnerId?: string; /** - *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.
+ *The public DNS name.
*/ - OutpostArn?: string; + PublicDnsName?: string; /** - *The ID of the Amazon EBS volume.
+ *The address of the Elastic IP address bound to the network + * interface.
*/ - VolumeId: string | undefined; + PublicIp?: string; /** - *The tags to apply to the snapshot during creation.
+ *The customer-owned IP address associated with the network interface.
*/ - TagSpecifications?: TagSpecification[]; + CustomerOwnedIp?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
*/ - DryRun?: boolean; + CarrierIp?: string; } -export namespace CreateSnapshotRequest { +export namespace NetworkInterfaceAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: CreateSnapshotRequest): any => ({ + export const filterSensitiveLog = (obj: NetworkInterfaceAssociation): any => ({ ...obj, }); } -export type SnapshotState = "completed" | "error" | "pending" | "recoverable" | "recovering"; - -export enum StorageTier { - archive = "archive", - standard = "standard", -} - /** - *Describes a snapshot.
+ *Describes a network interface attachment.
*/ -export interface Snapshot { +export interface NetworkInterfaceAttachment { /** - *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.
+ *The timestamp indicating when the attachment initiated.
*/ - DataEncryptionKeyId?: string; + AttachTime?: Date; /** - *The description for the snapshot.
+ *The ID of the network interface attachment.
*/ - Description?: string; + AttachmentId?: string; /** - *Indicates whether the snapshot is encrypted.
+ *Indicates whether the network interface is deleted when the instance is terminated.
*/ - Encrypted?: boolean; + DeleteOnTermination?: boolean; /** - *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.
+ *The device index of the network interface attachment on the instance.
*/ - KmsKeyId?: string; + DeviceIndex?: number; /** - *The ID of the Amazon Web Services account that owns the EBS snapshot.
+ *The index of the network card.
*/ - OwnerId?: string; + NetworkCardIndex?: number; /** - *The progress of the snapshot, as a percentage.
+ *The ID of the instance.
*/ - Progress?: string; + InstanceId?: string; /** - *The ID of the snapshot. Each snapshot receives a unique identifier when it is - * created.
+ *The Amazon Web Services account ID of the owner of the instance.
*/ - SnapshotId?: string; + InstanceOwnerId?: string; /** - *The time stamp when the snapshot was initiated.
+ *The attachment state.
*/ - StartTime?: Date; + Status?: AttachmentStatus | string; +} +export namespace NetworkInterfaceAttachment { /** - *The snapshot state.
+ * @internal */ - State?: SnapshotState | string; + export const filterSensitiveLog = (obj: NetworkInterfaceAttachment): any => ({ + ...obj, + }); +} +/** + *Describes a security group.
+ */ +export interface GroupIdentifier { /** - *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.
+ *The name of the security group.
*/ - StateMessage?: string; + GroupName?: string; /** - *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.
+ *The ID of the security group.
*/ - VolumeId?: string; + GroupId?: string; +} +export namespace GroupIdentifier { /** - *The size of the volume, in GiB.
+ * @internal */ - VolumeSize?: number; + export const filterSensitiveLog = (obj: GroupIdentifier): any => ({ + ...obj, + }); +} + +export type NetworkInterfaceType = "efa" | "interface" | "natGateway" | "trunk"; + +/** + *Describes an IPv6 address associated with a network interface.
+ */ +export interface NetworkInterfaceIpv6Address { + /** + *The IPv6 address.
+ */ + Ipv6Address?: string; +} +export namespace NetworkInterfaceIpv6Address { /** - *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.
Describes the IPv6 prefix.
+ */ +export interface Ipv6PrefixSpecification { /** - *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.
+ *The IPv6 prefix.
*/ - OutpostArn?: string; + Ipv6Prefix?: string; +} +export namespace Ipv6PrefixSpecification { /** - *Any tags assigned to the snapshot.
+ * @internal */ - Tags?: Tag[]; + export const filterSensitiveLog = (obj: Ipv6PrefixSpecification): any => ({ + ...obj, + }); +} +/** + *Describes the private IPv4 address of a network interface.
+ */ +export interface NetworkInterfacePrivateIpAddress { /** - *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.
The association information for an Elastic IP address (IPv4) associated with the network interface.
*/ - StorageTier?: StorageTier | string; + Association?: NetworkInterfaceAssociation; /** - *Only for archived snapshots that are temporarily restored. Indicates the date and - * time when a temporarily restored snapshot will be automatically re-archived.
+ *Indicates whether this IPv4 address is the primary private IPv4 address of the network interface.
*/ - RestoreExpiryTime?: Date; + Primary?: boolean; + + /** + *The private DNS name.
+ */ + PrivateDnsName?: string; + + /** + *The private IPv4 address.
+ */ + PrivateIpAddress?: string; } -export namespace Snapshot { +export namespace NetworkInterfacePrivateIpAddress { /** * @internal */ - export const filterSensitiveLog = (obj: Snapshot): any => ({ + export const filterSensitiveLog = (obj: NetworkInterfacePrivateIpAddress): any => ({ ...obj, }); } -export type CopyTagsFromSource = "volume"; +export type NetworkInterfaceStatus = "associated" | "attaching" | "available" | "detaching" | "in-use"; /** - *The instance details to specify which volumes should be snapshotted.
+ *Describes a network interface.
*/ -export interface InstanceSpecification { +export interface NetworkInterface { /** - *The instance to specify which volumes should be snapshotted.
+ *The association information for an Elastic IP address (IPv4) associated with the network interface.
*/ - InstanceId?: string; + Association?: NetworkInterfaceAssociation; /** - *Excludes the root volume from being snapshotted.
+ *The network interface attachment.
*/ - ExcludeBootVolume?: boolean; -} + Attachment?: NetworkInterfaceAttachment; -export namespace InstanceSpecification { /** - * @internal + *The Availability Zone.
*/ - export const filterSensitiveLog = (obj: InstanceSpecification): any => ({ - ...obj, - }); -} + AvailabilityZone?: string; -export interface CreateSnapshotsRequest { /** - *A description propagated to every snapshot specified by the instance.
+ *A description.
*/ Description?: string; /** - *The instance to specify which volumes should be included in the snapshots.
+ *Any security groups for the network interface.
*/ - InstanceSpecification: InstanceSpecification | undefined; + Groups?: GroupIdentifier[]; /** - *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.
+ *The type of network interface.
+ */ + InterfaceType?: NetworkInterfaceType | string; + + /** + *The IPv6 addresses associated with the network interface.
+ */ + Ipv6Addresses?: NetworkInterfaceIpv6Address[]; + + /** + *The MAC address.
+ */ + MacAddress?: string; + + /** + *The ID of the network interface.
+ */ + NetworkInterfaceId?: string; + + /** + *The Amazon Resource Name (ARN) of the Outpost.
*/ OutpostArn?: string; /** - *Tags to apply to every snapshot specified by the instance.
+ *The Amazon Web Services account ID of the owner of the network interface.
*/ - TagSpecifications?: TagSpecification[]; + OwnerId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The private DNS name.
*/ - DryRun?: boolean; + PrivateDnsName?: string; /** - *Copies the tags from the specified volume to corresponding snapshot.
+ *The IPv4 address of the network interface within the subnet.
*/ - CopyTagsFromSource?: CopyTagsFromSource | string; -} + PrivateIpAddress?: string; -export namespace CreateSnapshotsRequest { /** - * @internal + *The private IPv4 addresses associated with the network interface.
*/ - export const filterSensitiveLog = (obj: CreateSnapshotsRequest): any => ({ - ...obj, - }); -} + PrivateIpAddresses?: NetworkInterfacePrivateIpAddress[]; -/** - *Information about a snapshot.
- */ -export interface SnapshotInfo { /** - *Description specified by the CreateSnapshotRequest that has been applied to all - * snapshots.
+ *The IPv4 prefixes that are assigned to the network interface.
*/ - Description?: string; + Ipv4Prefixes?: Ipv4PrefixSpecification[]; /** - *Tags associated with this snapshot.
+ *The IPv6 prefixes that are assigned to the network interface.
*/ - Tags?: Tag[]; + Ipv6Prefixes?: Ipv6PrefixSpecification[]; /** - *Indicates whether the snapshot is encrypted.
+ *The alias or Amazon Web Services account ID of the principal or service that created the network interface.
*/ - Encrypted?: boolean; + RequesterId?: string; /** - *Source volume from which this snapshot was created.
+ *Indicates whether the network interface is being managed by Amazon Web Services.
*/ - VolumeId?: string; + RequesterManaged?: boolean; /** - *Current state of the snapshot.
+ *Indicates whether source/destination checking is enabled.
*/ - State?: SnapshotState | string; + SourceDestCheck?: boolean; /** - *Size of the volume from which this snapshot was created.
+ *The status of the network interface.
*/ - VolumeSize?: number; + Status?: NetworkInterfaceStatus | string; /** - *Time this snapshot was started. This is the same for all snapshots initiated by the - * same request.
+ *The ID of the subnet.
*/ - StartTime?: Date; + SubnetId?: string; /** - *Progress this snapshot has made towards completing.
+ *Any tags assigned to the network interface.
*/ - Progress?: string; + TagSet?: Tag[]; /** - *Account id used when creating this snapshot.
+ *The ID of the VPC.
*/ - OwnerId?: string; + VpcId?: string; /** - *Snapshot id that can be used to describe this snapshot.
+ *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.
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.
+ *Indicates whether this is an IPv6 only network interface.
*/ - OutpostArn?: string; + Ipv6Native?: boolean; + + /** + *The IPv6 globally unique address associated with the network interface.
+ */ + Ipv6Address?: string; } -export namespace SnapshotInfo { +export namespace NetworkInterface { /** * @internal */ - export const filterSensitiveLog = (obj: SnapshotInfo): any => ({ + export const filterSensitiveLog = (obj: NetworkInterface): any => ({ ...obj, }); } -export interface CreateSnapshotsResult { +/** + *Contains the output of CreateNetworkInterface.
+ */ +export interface CreateNetworkInterfaceResult { /** - *List of snapshots.
+ *Information about the network interface.
*/ - Snapshots?: SnapshotInfo[]; + NetworkInterface?: NetworkInterface; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for CreateSpotDatafeedSubscription.
+ *Contains the parameters for CreateNetworkInterfacePermission.
*/ -export interface CreateSpotDatafeedSubscriptionRequest { +export interface CreateNetworkInterfacePermissionRequest { /** - *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.
+ *The ID of the network interface.
*/ - Bucket: string | undefined; + NetworkInterfaceId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The Amazon Web Services account ID.
*/ - DryRun?: boolean; + AwsAccountId?: string; /** - *The prefix for the data feed file names.
+ *The Amazon Web Service. Currently not supported.
*/ - Prefix?: string; + AwsService?: string; + + /** + *The type of permission to grant.
+ */ + Permission: InterfacePermissionType | string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a Spot Instance state change.
+ *Describes the state of a network interface permission.
*/ -export interface SpotInstanceStateFault { +export interface NetworkInterfacePermissionState { /** - *The reason code for the Spot Instance state change.
+ *The state of the permission.
*/ - Code?: string; + State?: NetworkInterfacePermissionStateCode | string; /** - *The message for the Spot Instance state change.
+ *A status message, if applicable.
*/ - Message?: string; + StatusMessage?: string; } -export namespace SpotInstanceStateFault { +export namespace NetworkInterfacePermissionState { /** * @internal */ - export const filterSensitiveLog = (obj: SpotInstanceStateFault): any => ({ + export const filterSensitiveLog = (obj: NetworkInterfacePermissionState): any => ({ ...obj, }); } -export type DatafeedSubscriptionState = "Active" | "Inactive"; - /** - *Describes the data feed for a Spot Instance.
+ *Describes a permission for a network interface.
*/ -export interface SpotDatafeedSubscription { +export interface NetworkInterfacePermission { /** - *The name of the Amazon S3 bucket where the Spot Instance data feed is located.
+ *The ID of the network interface permission.
*/ - Bucket?: string; + NetworkInterfacePermissionId?: string; /** - *The fault codes for the Spot Instance request, if any.
+ *The ID of the network interface.
*/ - Fault?: SpotInstanceStateFault; + NetworkInterfaceId?: string; /** - *The Amazon Web Services account ID of the account.
+ *The Amazon Web Services account ID.
*/ - OwnerId?: string; + AwsAccountId?: string; /** - *The prefix for the data feed files.
+ *The Amazon Web Service.
*/ - Prefix?: string; + AwsService?: string; /** - *The state of the Spot Instance data feed subscription.
+ *The type of permission.
*/ - State?: DatafeedSubscriptionState | string; + Permission?: InterfacePermissionType | string; + + /** + *Information about the state of the permission.
+ */ + PermissionState?: NetworkInterfacePermissionState; } -export namespace SpotDatafeedSubscription { +export namespace NetworkInterfacePermission { /** * @internal */ - export const filterSensitiveLog = (obj: SpotDatafeedSubscription): any => ({ + export const filterSensitiveLog = (obj: NetworkInterfacePermission): any => ({ ...obj, }); } /** - *Contains the output of CreateSpotDatafeedSubscription.
+ *Contains the output of CreateNetworkInterfacePermission.
*/ -export interface CreateSpotDatafeedSubscriptionResult { +export interface CreateNetworkInterfacePermissionResult { /** - *The Spot Instance data feed subscription.
+ *Information about the permission for the network interface.
+ */ + InterfacePermission?: NetworkInterfacePermission; +} + +export namespace CreateNetworkInterfacePermissionResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: CreateNetworkInterfacePermissionResult): any => ({ + ...obj, + }); +} + +export type PlacementStrategy = "cluster" | "partition" | "spread"; + +export interface CreatePlacementGroupRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
A name for the placement group. Must be unique within the scope of your account for + * the Region.
+ *Constraints: Up to 255 ASCII characters
+ */ + GroupName?: string; + + /** + *The placement strategy.
+ */ + Strategy?: PlacementStrategy | string; + + /** + *The number of partitions. Valid only when Strategy is
+ * set to partition
.
The tags to apply to the new placement group.
*/ - SpotDatafeedSubscription?: SpotDatafeedSubscription; + TagSpecifications?: TagSpecification[]; } -export namespace CreateSpotDatafeedSubscriptionResult { +export namespace CreatePlacementGroupRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateSpotDatafeedSubscriptionResult): any => ({ + export const filterSensitiveLog = (obj: CreatePlacementGroupRequest): any => ({ ...obj, }); } +export type PlacementGroupState = "available" | "deleted" | "deleting" | "pending"; + /** - *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.
+ *Describes a placement group.
*/ -export interface S3ObjectTag { - /** - *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
:.
The value of the tag.
- *Constraints: Tag values are case-sensitive and can be up to 256 Unicode characters in - * length.
+ *The name of the placement group.
*/ - Value?: string; -} + GroupName?: string; -export namespace S3ObjectTag { /** - * @internal + *The state of the placement group.
*/ - export const filterSensitiveLog = (obj: S3ObjectTag): any => ({ - ...obj, - }); -} + State?: PlacementGroupState | string; -export interface CreateStoreImageTaskRequest { /** - *The ID of the AMI.
+ *The placement strategy.
*/ - ImageId: string | undefined; + Strategy?: PlacementStrategy | string; /** - *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.
+ *The number of partitions. Valid only if strategy is
+ * set to partition
.
The tags to apply to the AMI object that will be stored in the Amazon S3 bucket.
+ *The ID of the placement group.
*/ - S3ObjectTags?: S3ObjectTag[]; + GroupId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Any tags applied to the placement group.
*/ - DryRun?: boolean; + Tags?: Tag[]; } -export namespace CreateStoreImageTaskRequest { +export namespace PlacementGroup { /** * @internal */ - export const filterSensitiveLog = (obj: CreateStoreImageTaskRequest): any => ({ + export const filterSensitiveLog = (obj: PlacementGroup): any => ({ ...obj, }); } -export interface CreateStoreImageTaskResult { +export interface CreatePlacementGroupResult { /** - *The name of the stored AMI object in the S3 bucket.
+ *Describes a placement group.
*/ - ObjectKey?: string; + PlacementGroup?: PlacementGroup; } -export namespace CreateStoreImageTaskResult { +export namespace CreatePlacementGroupResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateStoreImageTaskResult): any => ({ + export const filterSensitiveLog = (obj: CreatePlacementGroupResult): any => ({ ...obj, }); } -export interface CreateSubnetRequest { +export interface CreatePublicIpv4PoolRequest { /** - *The tags to assign to the subnet.
+ *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
.
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.
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 Available Regions in the Amazon Elastic Compute Cloud User Guide.
To create a subnet in an Outpost, set this value to the Availability Zone for the - * Outpost and specify the Outpost ARN.
+ * @internal */ - AvailabilityZone?: string; + export const filterSensitiveLog = (obj: CreatePublicIpv4PoolRequest): any => ({ + ...obj, + }); +} +export interface CreatePublicIpv4PoolResult { /** - *The AZ ID or the Local Zone ID of the subnet.
+ *The ID of the public IPv4 pool.
*/ - AvailabilityZoneId?: string; + PoolId?: string; +} +export namespace CreatePublicIpv4PoolResult { /** - *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.
+ * @internal */ - CidrBlock?: string; + export const filterSensitiveLog = (obj: CreatePublicIpv4PoolResult): any => ({ + ...obj, + }); +} +export interface CreateReplaceRootVolumeTaskRequest { /** - *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.
+ *The ID of the instance for which to replace the root volume.
*/ - Ipv6CidrBlock?: string; + InstanceId: string | undefined; /** - *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.
+ *The ID of the snapshot from which to restore the replacement root volume. If you want to + * restore the volume to the initial launch state, omit this parameter.
*/ - OutpostArn?: string; + SnapshotId?: string; /** - *The ID of the VPC.
+ *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.
*/ - VpcId: string | undefined; + ClientToken?: string; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -7197,213 +7743,291 @@ export interface CreateSubnetRequest { DryRun?: boolean; /** - *
Indicates whether to create an IPv6 only subnet.
+ *The tags to apply to the root volume replacement task.
*/ - Ipv6Native?: boolean; + TagSpecifications?: TagSpecification[]; } -export namespace CreateSubnetRequest { +export namespace CreateReplaceRootVolumeTaskRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateSubnetRequest): any => ({ + export const filterSensitiveLog = (obj: CreateReplaceRootVolumeTaskRequest): any => ({ ...obj, }); } -export interface CreateSubnetResult { - /** - *Information about the subnet.
- */ - Subnet?: Subnet; +export enum ReplaceRootVolumeTaskState { + failed = "failed", + failed_detached = "failed-detached", + failing = "failing", + in_progress = "in-progress", + pending = "pending", + succeeded = "succeeded", } -export namespace CreateSubnetResult { +/** + *Information about a root volume replacement task.
+ */ +export interface ReplaceRootVolumeTask { /** - * @internal + *The ID of the root volume replacement task.
*/ - export const filterSensitiveLog = (obj: CreateSubnetResult): any => ({ - ...obj, - }); -} + ReplaceRootVolumeTaskId?: string; -export enum SubnetCidrReservationType { - explicit = "explicit", - prefix = "prefix", -} + /** + *The ID of the instance for which the root volume replacement task was created.
+ */ + InstanceId?: string; -export interface CreateSubnetCidrReservationRequest { /** - *The tags to assign to the subnet CIDR reservation.
+ *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.
The ID of the subnet.
+ *The time the task was started.
*/ - SubnetId: string | undefined; + StartTime?: string; /** - *The IPv4 or IPV6 CIDR range to reserve.
+ *The time the task completed.
*/ - Cidr: string | undefined; + CompleteTime?: string; /** - *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.
The tags assigned to the task.
*/ - ReservationType: SubnetCidrReservationType | string | undefined; + Tags?: Tag[]; +} +export namespace ReplaceRootVolumeTask { /** - *The - * description - * to assign to the subnet CIDR reservation.
+ * @internal */ - Description?: string; + export const filterSensitiveLog = (obj: ReplaceRootVolumeTask): any => ({ + ...obj, + }); +} +export interface CreateReplaceRootVolumeTaskResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the root volume replacement task.
*/ - DryRun?: boolean; + ReplaceRootVolumeTask?: ReplaceRootVolumeTask; } -export namespace CreateSubnetCidrReservationRequest { +export namespace CreateReplaceRootVolumeTaskResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateSubnetCidrReservationRequest): any => ({ + export const filterSensitiveLog = (obj: CreateReplaceRootVolumeTaskResult): any => ({ ...obj, }); } /** - *Describes a subnet CIDR reservation.
+ *Describes the price for a Reserved Instance.
*/ -export interface SubnetCidrReservation { +export interface PriceScheduleSpecification { /** - *The ID of the subnet CIDR reservation.
+ *The currency for transacting the Reserved Instance resale.
+ * At this time, the only supported currency is USD
.
The ID of the subnet.
+ *The fixed price for the term.
*/ - SubnetId?: string; + Price?: number; /** - *The CIDR that has been reserved.
+ *The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.
*/ - Cidr?: string; + Term?: number; +} +export namespace PriceScheduleSpecification { /** - *The type of reservation.
+ * @internal */ - ReservationType?: SubnetCidrReservationType | string; + export const filterSensitiveLog = (obj: PriceScheduleSpecification): any => ({ + ...obj, + }); +} + +/** + *Contains the parameters for CreateReservedInstancesListing.
+ */ +export interface CreateReservedInstancesListingRequest { + /** + *Unique, case-sensitive identifier you provide to ensure idempotency of your + * listings. This helps avoid duplicate listings. For more information, see + * Ensuring Idempotency.
+ */ + ClientToken: string | undefined; /** - *The ID of the account that owns the subnet CIDR reservation.
+ *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.
*/ - OwnerId?: string; + InstanceCount: number | undefined; /** - *The - * description - * assigned to the subnet CIDR - * reservation.
+ *A list specifying the price of the Standard Reserved Instance for each month remaining in the Reserved Instance term.
*/ - Description?: string; + PriceSchedules: PriceScheduleSpecification[] | undefined; /** - *The tags assigned to the subnet CIDR reservation.
+ *The ID of the active Standard Reserved Instance.
*/ - Tags?: Tag[]; + ReservedInstancesId: string | undefined; } -export namespace SubnetCidrReservation { +export namespace CreateReservedInstancesListingRequest { /** * @internal */ - export const filterSensitiveLog = (obj: SubnetCidrReservation): any => ({ + export const filterSensitiveLog = (obj: CreateReservedInstancesListingRequest): any => ({ ...obj, }); } -export interface CreateSubnetCidrReservationResult { +/** + *Contains the output of CreateReservedInstancesListing.
+ */ +export interface CreateReservedInstancesListingResult { /** - *Information about the created subnet CIDR reservation.
+ *Information about the Standard Reserved Instance listing.
*/ - SubnetCidrReservation?: SubnetCidrReservation; + ReservedInstancesListings?: ReservedInstancesListing[]; } -export namespace CreateSubnetCidrReservationResult { +export namespace CreateReservedInstancesListingResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateSubnetCidrReservationResult): any => ({ + export const filterSensitiveLog = (obj: CreateReservedInstancesListingResult): any => ({ ...obj, }); } -export interface CreateTagsRequest { +export interface CreateRestoreImageTaskRequest { + /** + *The name of the Amazon S3 bucket that contains the stored AMI object.
+ */ + Bucket: string | undefined; + + /** + *The name of the stored AMI object in the bucket.
+ */ + ObjectKey: string | undefined; + + /** + *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.
+ */ + Name?: string; + + /** + *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.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
*/
DryRun?: boolean;
+}
+export namespace CreateRestoreImageTaskRequest {
/**
- * The IDs of the resources, separated by spaces.
- *Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.
+ * @internal */ - Resources: string[] | undefined; + export const filterSensitiveLog = (obj: CreateRestoreImageTaskRequest): any => ({ + ...obj, + }); +} +export interface CreateRestoreImageTaskResult { /** - *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.
The AMI ID.
*/ - Tags: Tag[] | undefined; + ImageId?: string; } -export namespace CreateTagsRequest { +export namespace CreateRestoreImageTaskResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTagsRequest): any => ({ + export const filterSensitiveLog = (obj: CreateRestoreImageTaskResult): any => ({ ...obj, }); } -export interface CreateTrafficMirrorFilterRequest { +export interface CreateRouteRequest { /** - *The description of the Traffic Mirror filter.
+ *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
.
The tags to assign to a Traffic Mirror filter.
+ *The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.
*/ - TagSpecifications?: TagSpecification[]; + DestinationIpv6CidrBlock?: string; + + /** + *The ID of a prefix list used for the destination match.
+ */ + DestinationPrefixListId?: string; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -7413,480 +8037,465 @@ export interface CreateTrafficMirrorFilterRequest { DryRun?: boolean; /** - *
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ *The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.
*/ - ClientToken?: string; -} + VpcEndpointId?: string; -export namespace CreateTrafficMirrorFilterRequest { /** - * @internal + *[IPv6 traffic only] The ID of an egress-only internet gateway.
*/ - export const filterSensitiveLog = (obj: CreateTrafficMirrorFilterRequest): any => ({ - ...obj, - }); -} + EgressOnlyInternetGatewayId?: string; -/** - *Describes the Traffic Mirror port range.
- */ -export interface TrafficMirrorPortRange { /** - *The start of the Traffic Mirror port range. This applies to the TCP and UDP protocols.
+ *The ID of an internet gateway or virtual private gateway attached to your + * VPC.
*/ - FromPort?: number; + GatewayId?: string; /** - *The end of the Traffic Mirror port range. This applies to the TCP and UDP protocols.
+ *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.
*/ - ToPort?: number; -} + InstanceId?: string; -export namespace TrafficMirrorPortRange { /** - * @internal + *[IPv4 traffic only] The ID of a NAT gateway.
*/ - export const filterSensitiveLog = (obj: TrafficMirrorPortRange): any => ({ - ...obj, - }); -} + NatGatewayId?: string; -export type TrafficMirrorRuleAction = "accept" | "reject"; + /** + *The ID of a transit gateway.
+ */ + TransitGatewayId?: string; -export type TrafficDirection = "egress" | "ingress"; + /** + *The ID of the local gateway.
+ */ + LocalGatewayId?: string; -/** - *Describes the Traffic Mirror rule.
- */ -export interface TrafficMirrorFilterRule { /** - *The ID of the Traffic Mirror rule.
+ *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.
*/ - TrafficMirrorFilterRuleId?: string; + CarrierGatewayId?: string; /** - *The ID of the Traffic Mirror filter that the rule is associated with.
+ *The ID of a network interface.
*/ - TrafficMirrorFilterId?: string; + NetworkInterfaceId?: string; /** - *The traffic direction assigned to the Traffic Mirror rule.
+ *The ID of the route table for the route.
*/ - TrafficDirection?: TrafficDirection | string; + RouteTableId: string | undefined; /** - *The rule number of the Traffic Mirror rule.
+ *The ID of a VPC peering connection.
*/ - RuleNumber?: number; + VpcPeeringConnectionId?: string; /** - *The action assigned to the Traffic Mirror rule.
+ *The Amazon Resource Name (ARN) of the core network.
*/ - RuleAction?: TrafficMirrorRuleAction | string; + CoreNetworkArn?: string; +} +export namespace CreateRouteRequest { /** - *The protocol assigned to the Traffic Mirror rule.
+ * @internal */ - Protocol?: number; + export const filterSensitiveLog = (obj: CreateRouteRequest): any => ({ + ...obj, + }); +} +export interface CreateRouteResult { /** - *The destination port range assigned to the Traffic Mirror rule.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
The source port range assigned to the Traffic Mirror rule.
+ * @internal */ - SourcePortRange?: TrafficMirrorPortRange; + export const filterSensitiveLog = (obj: CreateRouteResult): any => ({ + ...obj, + }); +} +export interface CreateRouteTableRequest { /** - *The destination CIDR block assigned to the Traffic Mirror rule.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The source CIDR block assigned to the Traffic Mirror rule.
+ *The ID of the VPC.
*/ - SourceCidrBlock?: string; + VpcId: string | undefined; /** - *The description of the Traffic Mirror rule.
+ *The tags to assign to the route table.
*/ - Description?: string; + TagSpecifications?: TagSpecification[]; } -export namespace TrafficMirrorFilterRule { +export namespace CreateRouteTableRequest { /** * @internal */ - export const filterSensitiveLog = (obj: TrafficMirrorFilterRule): any => ({ + export const filterSensitiveLog = (obj: CreateRouteTableRequest): any => ({ ...obj, }); } -export type TrafficMirrorNetworkService = "amazon-dns"; - /** - *Describes the Traffic Mirror filter.
+ *Describes an association between a route table and a subnet or gateway.
*/ -export interface TrafficMirrorFilter { +export interface RouteTableAssociation { /** - *The ID of the Traffic Mirror filter.
+ *Indicates whether this is the main route table.
*/ - TrafficMirrorFilterId?: string; + Main?: boolean; /** - *Information about the ingress rules that are associated with the Traffic Mirror filter.
+ *The ID of the association.
*/ - IngressFilterRules?: TrafficMirrorFilterRule[]; + RouteTableAssociationId?: string; /** - *Information about the egress rules that are associated with the Traffic Mirror filter.
+ *The ID of the route table.
*/ - EgressFilterRules?: TrafficMirrorFilterRule[]; + RouteTableId?: string; /** - *The network service traffic that is associated with the Traffic Mirror filter.
+ *The ID of the subnet. A subnet ID is not returned for an implicit association.
*/ - NetworkServices?: (TrafficMirrorNetworkService | string)[]; + SubnetId?: string; /** - *The description of the Traffic Mirror filter.
+ *The ID of the internet gateway or virtual private gateway.
*/ - Description?: string; + GatewayId?: string; /** - *The tags assigned to the Traffic Mirror filter.
+ *The state of the association.
*/ - Tags?: Tag[]; + AssociationState?: RouteTableAssociationState; } -export namespace TrafficMirrorFilter { +export namespace RouteTableAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: TrafficMirrorFilter): any => ({ + export const filterSensitiveLog = (obj: RouteTableAssociation): any => ({ ...obj, }); } -export interface CreateTrafficMirrorFilterResult { - /** - *Information about the Traffic Mirror filter.
- */ - TrafficMirrorFilter?: TrafficMirrorFilter; - +/** + *Describes a virtual private gateway propagating route.
+ */ +export interface PropagatingVgw { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ *The ID of the virtual private gateway.
*/ - ClientToken?: string; + GatewayId?: string; } -export namespace CreateTrafficMirrorFilterResult { +export namespace PropagatingVgw { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTrafficMirrorFilterResult): any => ({ + export const filterSensitiveLog = (obj: PropagatingVgw): any => ({ ...obj, }); } -/** - *Information about the Traffic Mirror filter rule port range.
- */ -export interface TrafficMirrorPortRangeRequest { - /** - *The first port in the Traffic Mirror port range. This applies to the TCP and UDP protocols.
- */ - FromPort?: number; +export type RouteOrigin = "CreateRoute" | "CreateRouteTable" | "EnableVgwRoutePropagation"; - /** - *The last port in the Traffic Mirror port range. This applies to the TCP and UDP protocols.
- */ - ToPort?: number; -} +export type RouteState = "active" | "blackhole"; -export namespace TrafficMirrorPortRangeRequest { +/** + *Describes a route in a route table.
+ */ +export interface Route { /** - * @internal + *The IPv4 CIDR block used for the destination match.
*/ - export const filterSensitiveLog = (obj: TrafficMirrorPortRangeRequest): any => ({ - ...obj, - }); -} + DestinationCidrBlock?: string; -export interface CreateTrafficMirrorFilterRuleRequest { /** - *The ID of the filter that this rule is associated with.
+ *The IPv6 CIDR block used for the destination match.
*/ - TrafficMirrorFilterId: string | undefined; + DestinationIpv6CidrBlock?: string; /** - *The type of traffic.
+ *The prefix of the Amazon Web Service.
*/ - TrafficDirection: TrafficDirection | string | undefined; + DestinationPrefixListId?: string; /** - *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.
+ *The ID of the egress-only internet gateway.
*/ - RuleNumber: number | undefined; + EgressOnlyInternetGatewayId?: string; /** - *The action to take on the filtered traffic.
+ *The ID of a gateway attached to your VPC.
*/ - RuleAction: TrafficMirrorRuleAction | string | undefined; + GatewayId?: string; /** - *The destination port range.
+ *The ID of a NAT instance in your VPC.
*/ - DestinationPortRange?: TrafficMirrorPortRangeRequest; + InstanceId?: string; /** - *The source port range.
+ *The ID of Amazon Web Services account that owns the instance.
*/ - SourcePortRange?: TrafficMirrorPortRangeRequest; + InstanceOwnerId?: string; /** - *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.
+ *The ID of a NAT gateway.
*/ - Protocol?: number; + NatGatewayId?: string; /** - *The destination CIDR block to assign to the Traffic Mirror rule.
+ *The ID of a transit gateway.
*/ - DestinationCidrBlock: string | undefined; + TransitGatewayId?: string; /** - *The source CIDR block to assign to the Traffic Mirror rule.
+ *The ID of the local gateway.
*/ - SourceCidrBlock: string | undefined; + LocalGatewayId?: string; /** - *The description of the Traffic Mirror rule.
+ *The ID of the carrier gateway.
*/ - Description?: string; + CarrierGatewayId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the network interface.
*/ - DryRun?: boolean; + NetworkInterfaceId?: string; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ *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.
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).
The Traffic Mirror rule.
+ *The ID of a VPC peering connection.
*/ - TrafficMirrorFilterRule?: TrafficMirrorFilterRule; + VpcPeeringConnectionId?: string; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ *The Amazon Resource Name (ARN) of the core network.
*/ - ClientToken?: string; + CoreNetworkArn?: string; } -export namespace CreateTrafficMirrorFilterRuleResult { +export namespace Route { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTrafficMirrorFilterRuleResult): any => ({ + export const filterSensitiveLog = (obj: Route): any => ({ ...obj, }); } -export interface CreateTrafficMirrorSessionRequest { - /** - *The ID of the source network interface.
- */ - NetworkInterfaceId: string | undefined; - - /** - *The ID of the Traffic Mirror target.
- */ - TrafficMirrorTargetId: string | undefined; - - /** - *The ID of the Traffic Mirror filter.
- */ - TrafficMirrorFilterId: string | undefined; - +/** + *Describes a route table.
+ */ +export interface RouteTable { /** - *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.
The associations between the route table and one or more subnets or a gateway.
*/ - PacketLength?: number; + Associations?: RouteTableAssociation[]; /** - *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.
+ *Any virtual private gateway (VGW) propagating routes.
*/ - SessionNumber: number | undefined; + PropagatingVgws?: PropagatingVgw[]; /** - *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.
The ID of the route table.
*/ - VirtualNetworkId?: number; + RouteTableId?: string; /** - *The description of the Traffic Mirror session.
+ *The routes in the route table.
*/ - Description?: string; + Routes?: Route[]; /** - *The tags to assign to a Traffic Mirror session.
+ *Any tags assigned to the route table.
*/ - TagSpecifications?: TagSpecification[]; + Tags?: Tag[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the VPC.
*/ - DryRun?: boolean; + VpcId?: string; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ *The ID of the Amazon Web Services account that owns the route table.
*/ - ClientToken?: string; + OwnerId?: string; } -export namespace CreateTrafficMirrorSessionRequest { +export namespace RouteTable { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTrafficMirrorSessionRequest): any => ({ - ...obj, - }); -} - -/** - *Describes a Traffic Mirror session.
- */ -export interface TrafficMirrorSession { - /** - *The ID for the Traffic Mirror session.
- */ - TrafficMirrorSessionId?: string; - - /** - *The ID of the Traffic Mirror target.
- */ - TrafficMirrorTargetId?: string; - - /** - *The ID of the Traffic Mirror filter.
- */ - TrafficMirrorFilterId?: string; + export const filterSensitiveLog = (obj: RouteTable): any => ({ + ...obj, + }); +} +export interface CreateRouteTableResult { /** - *The ID of the Traffic Mirror session's network interface.
+ *Information about the route table.
*/ - NetworkInterfaceId?: string; + RouteTable?: RouteTable; +} +export namespace CreateRouteTableResult { /** - *The ID of the account that owns the Traffic Mirror session.
+ * @internal */ - OwnerId?: string; + export const filterSensitiveLog = (obj: CreateRouteTableResult): any => ({ + ...obj, + }); +} +export interface CreateSecurityGroupRequest { /** - *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
+ *A description for the security group. This is informational only.
+ *Constraints: Up to 255 characters in length
+ *Constraints for EC2-Classic: ASCII characters
+ *Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
*/ - PacketLength?: number; + Description: string | undefined; /** - *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.
+ *The name of the security group.
+ *Constraints: Up to 255 characters in length. Cannot start with
+ * sg-
.
Constraints for EC2-Classic: ASCII characters
+ *Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
*/ - SessionNumber?: number; + GroupName: string | undefined; /** - *The virtual network ID associated with the Traffic Mirror session.
+ *[EC2-VPC] The ID of the VPC. Required for EC2-VPC.
*/ - VirtualNetworkId?: number; + VpcId?: string; /** - *The description of the Traffic Mirror session.
+ *The tags to assign to the security group.
*/ - Description?: string; + TagSpecifications?: TagSpecification[]; /** - *The tags assigned to the Traffic Mirror session.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the Traffic Mirror session.
+ *The ID of the security group.
*/ - TrafficMirrorSession?: TrafficMirrorSession; + GroupId?: string; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ *The tags assigned to the security group.
*/ - ClientToken?: string; + Tags?: Tag[]; } -export namespace CreateTrafficMirrorSessionResult { +export namespace CreateSecurityGroupResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTrafficMirrorSessionResult): any => ({ + export const filterSensitiveLog = (obj: CreateSecurityGroupResult): any => ({ ...obj, }); } -export interface CreateTrafficMirrorTargetRequest { +export interface CreateSnapshotRequest { /** - *The network interface ID that is associated with the target.
+ *A description for the snapshot.
*/ - NetworkInterfaceId?: string; + Description?: string; /** - *The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the target.
+ *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.
*/ - NetworkLoadBalancerArn?: string; + OutpostArn?: string; /** - *The description of the Traffic Mirror target.
+ *The ID of the Amazon EBS volume.
*/ - Description?: string; + VolumeId: string | undefined; /** - *The tags to assign to the Traffic Mirror target.
+ *The tags to apply to the snapshot during creation.
*/ TagSpecifications?: TagSpecification[]; @@ -7896,172 +8505,203 @@ export interface CreateTrafficMirrorTargetRequest { * Otherwise, it isUnauthorizedOperation
.
*/
DryRun?: boolean;
-
- /**
- * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
- */ - ClientToken?: string; } -export namespace CreateTrafficMirrorTargetRequest { +export namespace CreateSnapshotRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTrafficMirrorTargetRequest): any => ({ + export const filterSensitiveLog = (obj: CreateSnapshotRequest): any => ({ ...obj, }); } -export type TrafficMirrorTargetType = "network-interface" | "network-load-balancer"; +export type SnapshotState = "completed" | "error" | "pending" | "recoverable" | "recovering"; + +export enum StorageTier { + archive = "archive", + standard = "standard", +} /** - *Describes a Traffic Mirror target.
+ *Describes a snapshot.
*/ -export interface TrafficMirrorTarget { +export interface Snapshot { /** - *The ID of the Traffic Mirror target.
+ *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.
*/ - TrafficMirrorTargetId?: string; + DataEncryptionKeyId?: string; /** - *The network interface ID that is attached to the target.
+ *The description for the snapshot.
*/ - NetworkInterfaceId?: string; + Description?: string; /** - *The Amazon Resource Name (ARN) of the Network Load Balancer.
+ *Indicates whether the snapshot is encrypted.
*/ - NetworkLoadBalancerArn?: string; + Encrypted?: boolean; /** - *The type of Traffic Mirror target.
+ *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.
*/ - Type?: TrafficMirrorTargetType | string; + KmsKeyId?: string; /** - *Information about the Traffic Mirror target.
+ *The ID of the Amazon Web Services account that owns the EBS snapshot.
*/ - Description?: string; + OwnerId?: string; /** - *The ID of the account that owns the Traffic Mirror target.
+ *The progress of the snapshot, as a percentage.
*/ - OwnerId?: string; + Progress?: string; /** - *The tags assigned to the Traffic Mirror target.
+ *The ID of the snapshot. Each snapshot receives a unique identifier when it is + * created.
*/ - Tags?: Tag[]; -} + SnapshotId?: string; -export namespace TrafficMirrorTarget { /** - * @internal + *The time stamp when the snapshot was initiated.
*/ - export const filterSensitiveLog = (obj: TrafficMirrorTarget): any => ({ - ...obj, - }); -} + StartTime?: Date; -export interface CreateTrafficMirrorTargetResult { /** - *Information about the Traffic Mirror target.
+ *The snapshot state.
*/ - TrafficMirrorTarget?: TrafficMirrorTarget; + State?: SnapshotState | string; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ *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.
*/ - ClientToken?: string; -} + StateMessage?: string; -export namespace CreateTrafficMirrorTargetResult { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: CreateTrafficMirrorTargetResult): any => ({ - ...obj, - }); -} - -export type AutoAcceptSharedAttachmentsValue = "disable" | "enable"; - -export type DefaultRouteTableAssociationValue = "disable" | "enable"; - -export type DefaultRouteTablePropagationValue = "disable" | "enable"; - -export type MulticastSupportValue = "disable" | "enable"; + VolumeId?: string; -export type VpnEcmpSupportValue = "disable" | "enable"; + /** + *The size of the volume, in GiB.
+ */ + VolumeSize?: number; -/** - *Describes the options for a transit gateway.
- */ -export interface TransitGatewayRequestOptions { /** - *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
.
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.
Enable or disable automatic acceptance of attachment requests. Disabled by default.
+ *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.
*/ - AutoAcceptSharedAttachments?: AutoAcceptSharedAttachmentsValue | string; + OutpostArn?: string; /** - *Enable or disable automatic association with the default association route table. Enabled by default.
+ *Any tags assigned to the snapshot.
*/ - DefaultRouteTableAssociation?: DefaultRouteTableAssociationValue | string; + Tags?: Tag[]; /** - *Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default.
+ *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.
Enable or disable Equal Cost Multipath Protocol support. Enabled by default.
+ *Only for archived snapshots that are temporarily restored. Indicates the date and + * time when a temporarily restored snapshot will be automatically re-archived.
*/ - VpnEcmpSupport?: VpnEcmpSupportValue | string; + RestoreExpiryTime?: Date; +} +export namespace Snapshot { /** - *Enable or disable DNS support. Enabled by default.
+ * @internal */ - DnsSupport?: DnsSupportValue | string; + export const filterSensitiveLog = (obj: Snapshot): any => ({ + ...obj, + }); +} + +export type CopyTagsFromSource = "volume"; +/** + *The instance details to specify which volumes should be snapshotted.
+ */ +export interface InstanceSpecification { /** - *Indicates whether multicast is enabled on the transit gateway
+ *The instance to specify which volumes should be snapshotted.
*/ - MulticastSupport?: MulticastSupportValue | string; + InstanceId?: string; /** - *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.
+ *Excludes the root volume from being snapshotted.
*/ - TransitGatewayCidrBlocks?: string[]; + ExcludeBootVolume?: boolean; } -export namespace TransitGatewayRequestOptions { +export namespace InstanceSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayRequestOptions): any => ({ + export const filterSensitiveLog = (obj: InstanceSpecification): any => ({ ...obj, }); } -export interface CreateTransitGatewayRequest { +export interface CreateSnapshotsRequest { /** - *A description of the transit gateway.
+ *A description propagated to every snapshot specified by the instance.
*/ Description?: string; /** - *The transit gateway options.
+ *The instance to specify which volumes should be included in the snapshots.
*/ - Options?: TransitGatewayRequestOptions; + InstanceSpecification: InstanceSpecification | undefined; /** - *The tags to apply to the transit gateway.
+ *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.
+ */ + OutpostArn?: string; + + /** + *Tags to apply to every snapshot specified by the instance.
*/ TagSpecifications?: TagSpecification[]; @@ -8071,347 +8711,357 @@ export interface CreateTransitGatewayRequest { * Otherwise, it isUnauthorizedOperation
.
*/
DryRun?: boolean;
+
+ /**
+ * Copies the tags from the specified volume to corresponding snapshot.
+ */ + CopyTagsFromSource?: CopyTagsFromSource | string; } -export namespace CreateTransitGatewayRequest { +export namespace CreateSnapshotsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayRequest): any => ({ + export const filterSensitiveLog = (obj: CreateSnapshotsRequest): any => ({ ...obj, }); } /** - *Describes the options for a transit gateway.
+ *Information about a snapshot.
*/ -export interface TransitGatewayOptions { +export interface SnapshotInfo { /** - *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.
+ *Description specified by the CreateSnapshotRequest that has been applied to all + * snapshots.
*/ - AmazonSideAsn?: number; + Description?: string; /** - *The transit gateway CIDR blocks.
+ *Tags associated with this snapshot.
*/ - TransitGatewayCidrBlocks?: string[]; + Tags?: Tag[]; /** - *Indicates whether attachment requests are automatically accepted.
+ *Indicates whether the snapshot is encrypted.
*/ - AutoAcceptSharedAttachments?: AutoAcceptSharedAttachmentsValue | string; + Encrypted?: boolean; /** - *Indicates whether resource attachments are automatically associated with the default association route table.
+ *Source volume from which this snapshot was created.
*/ - DefaultRouteTableAssociation?: DefaultRouteTableAssociationValue | string; + VolumeId?: string; /** - *The ID of the default association route table.
+ *Current state of the snapshot.
*/ - AssociationDefaultRouteTableId?: string; + State?: SnapshotState | string; /** - *Indicates whether resource attachments automatically propagate routes to the default propagation route table.
+ *Size of the volume from which this snapshot was created.
*/ - DefaultRouteTablePropagation?: DefaultRouteTablePropagationValue | string; + VolumeSize?: number; /** - *The ID of the default propagation route table.
+ *Time this snapshot was started. This is the same for all snapshots initiated by the + * same request.
*/ - PropagationDefaultRouteTableId?: string; + StartTime?: Date; /** - *Indicates whether Equal Cost Multipath Protocol support is enabled.
+ *Progress this snapshot has made towards completing.
*/ - VpnEcmpSupport?: VpnEcmpSupportValue | string; + Progress?: string; /** - *Indicates whether DNS support is enabled.
+ *Account id used when creating this snapshot.
*/ - DnsSupport?: DnsSupportValue | string; + OwnerId?: string; /** - *Indicates whether multicast is enabled on the transit gateway
+ *Snapshot id that can be used to describe this snapshot.
*/ - MulticastSupport?: MulticastSupportValue | string; + SnapshotId?: string; + + /** + *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.
+ */ + OutpostArn?: string; } -export namespace TransitGatewayOptions { +export namespace SnapshotInfo { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayOptions): any => ({ + export const filterSensitiveLog = (obj: SnapshotInfo): any => ({ ...obj, }); } -export type TransitGatewayState = "available" | "deleted" | "deleting" | "modifying" | "pending"; - -/** - *Describes a transit gateway.
- */ -export interface TransitGateway { - /** - *The ID of the transit gateway.
- */ - TransitGatewayId?: string; - - /** - *The Amazon Resource Name (ARN) of the transit gateway.
- */ - TransitGatewayArn?: string; - - /** - *The state of the transit gateway.
- */ - State?: TransitGatewayState | string; - +export interface CreateSnapshotsResult { /** - *The ID of the Amazon Web Services account that owns the transit gateway.
+ *List of snapshots.
*/ - OwnerId?: string; + Snapshots?: SnapshotInfo[]; +} +export namespace CreateSnapshotsResult { /** - *The description of the transit gateway.
+ * @internal */ - Description?: string; + export const filterSensitiveLog = (obj: CreateSnapshotsResult): any => ({ + ...obj, + }); +} +/** + *Contains the parameters for CreateSpotDatafeedSubscription.
+ */ +export interface CreateSpotDatafeedSubscriptionRequest { /** - *The creation time.
+ *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.
*/ - CreationTime?: Date; + Bucket: string | undefined; /** - *The transit gateway options.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The tags for the transit gateway.
+ *The prefix for the data feed file names.
*/ - Tags?: Tag[]; + Prefix?: string; } -export namespace TransitGateway { +export namespace CreateSpotDatafeedSubscriptionRequest { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGateway): any => ({ + export const filterSensitiveLog = (obj: CreateSpotDatafeedSubscriptionRequest): any => ({ ...obj, }); } -export interface CreateTransitGatewayResult { +/** + *Describes a Spot Instance state change.
+ */ +export interface SpotInstanceStateFault { /** - *Information about the transit gateway.
+ *The reason code for the Spot Instance state change.
*/ - TransitGateway?: TransitGateway; + Code?: string; + + /** + *The message for the Spot Instance state change.
+ */ + Message?: string; } -export namespace CreateTransitGatewayResult { +export namespace SpotInstanceStateFault { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayResult): any => ({ + export const filterSensitiveLog = (obj: SpotInstanceStateFault): any => ({ ...obj, }); } -export type ProtocolValue = "gre"; +export type DatafeedSubscriptionState = "Active" | "Inactive"; /** - *The options for a Connect attachment.
+ *Describes the data feed for a Spot Instance.
*/ -export interface CreateTransitGatewayConnectRequestOptions { - /** - *The tunnel protocol.
- */ - Protocol: ProtocolValue | string | undefined; -} - -export namespace CreateTransitGatewayConnectRequestOptions { +export interface SpotDatafeedSubscription { /** - * @internal + *The name of the Amazon S3 bucket where the Spot Instance data feed is located.
*/ - export const filterSensitiveLog = (obj: CreateTransitGatewayConnectRequestOptions): any => ({ - ...obj, - }); -} + Bucket?: string; -export interface CreateTransitGatewayConnectRequest { /** - *The ID of the transit gateway attachment. You can specify a VPC attachment or Amazon Web Services Direct Connect attachment.
+ *The fault codes for the Spot Instance request, if any.
*/ - TransportTransitGatewayAttachmentId: string | undefined; + Fault?: SpotInstanceStateFault; /** - *The Connect attachment options.
+ *The Amazon Web Services account ID of the account.
*/ - Options: CreateTransitGatewayConnectRequestOptions | undefined; + OwnerId?: string; /** - *The tags to apply to the Connect attachment.
+ *The prefix for the data feed files.
*/ - TagSpecifications?: TagSpecification[]; + Prefix?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The state of the Spot Instance data feed subscription.
*/ - DryRun?: boolean; + State?: DatafeedSubscriptionState | string; } -export namespace CreateTransitGatewayConnectRequest { +export namespace SpotDatafeedSubscription { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayConnectRequest): any => ({ + export const filterSensitiveLog = (obj: SpotDatafeedSubscription): any => ({ ...obj, }); } /** - *Describes the Connect attachment options.
+ *Contains the output of CreateSpotDatafeedSubscription.
*/ -export interface TransitGatewayConnectOptions { +export interface CreateSpotDatafeedSubscriptionResult { /** - *The tunnel protocol.
+ *The Spot Instance data feed subscription.
*/ - Protocol?: ProtocolValue | string; + SpotDatafeedSubscription?: SpotDatafeedSubscription; } -export namespace TransitGatewayConnectOptions { +export namespace CreateSpotDatafeedSubscriptionResult { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayConnectOptions): any => ({ + export const filterSensitiveLog = (obj: CreateSpotDatafeedSubscriptionResult): any => ({ ...obj, }); } /** - *Describes a transit gateway Connect attachment.
+ *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.
*/ -export interface TransitGatewayConnect { +export interface S3ObjectTag { /** - *The ID of the Connect attachment.
+ *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
:.
The ID of the attachment from which the Connect attachment was created.
+ *The value of the tag.
+ *Constraints: Tag values are case-sensitive and can be up to 256 Unicode characters in + * length.
*/ - TransportTransitGatewayAttachmentId?: string; + Value?: string; +} +export namespace S3ObjectTag { /** - *The ID of the transit gateway.
+ * @internal */ - TransitGatewayId?: string; + export const filterSensitiveLog = (obj: S3ObjectTag): any => ({ + ...obj, + }); +} +export interface CreateStoreImageTaskRequest { /** - *The state of the attachment.
+ *The ID of the AMI.
*/ - State?: TransitGatewayAttachmentState | string; + ImageId: string | undefined; /** - *The creation time.
+ *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.
*/ - CreationTime?: Date; + Bucket: string | undefined; /** - *The Connect attachment options.
+ *The tags to apply to the AMI object that will be stored in the Amazon S3 bucket.
*/ - Options?: TransitGatewayConnectOptions; + S3ObjectTags?: S3ObjectTag[]; /** - *The tags for the attachment.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the Connect attachment.
+ *The name of the stored AMI object in the S3 bucket.
*/ - TransitGatewayConnect?: TransitGatewayConnect; + ObjectKey?: string; } -export namespace CreateTransitGatewayConnectResult { +export namespace CreateStoreImageTaskResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayConnectResult): any => ({ + export const filterSensitiveLog = (obj: CreateStoreImageTaskResult): any => ({ ...obj, }); } -/** - *The BGP options for the Connect attachment.
- */ -export interface TransitGatewayConnectRequestBgpOptions { - /** - *The peer Autonomous System Number (ASN).
- */ - PeerAsn?: number; -} - -export namespace TransitGatewayConnectRequestBgpOptions { +export interface CreateSubnetRequest { /** - * @internal + *The tags to assign to the subnet.
*/ - export const filterSensitiveLog = (obj: TransitGatewayConnectRequestBgpOptions): any => ({ - ...obj, - }); -} + TagSpecifications?: TagSpecification[]; -export interface CreateTransitGatewayConnectPeerRequest { /** - *The ID of the Connect attachment.
+ *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 Available Regions in the Amazon Elastic Compute Cloud User Guide.
To create a subnet in an Outpost, set this value to the Availability Zone for the + * Outpost and specify the Outpost ARN.
*/ - TransitGatewayAttachmentId: string | undefined; + AvailabilityZone?: string; /** - *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.
+ *The AZ ID or the Local Zone ID of the subnet.
*/ - TransitGatewayAddress?: string; + AvailabilityZoneId?: string; /** - *The peer IP address (GRE outer IP address) on the appliance side of the Connect peer.
+ *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.
*/ - PeerAddress: string | undefined; + CidrBlock?: string; /** - *The BGP options for the Connect peer.
+ *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.
*/ - BgpOptions?: TransitGatewayConnectRequestBgpOptions; + Ipv6CidrBlock?: string; /** - *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.
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.
*/ - InsideCidrBlocks: string[] | undefined; + OutpostArn?: string; /** - *The tags to apply to the Connect peer.
+ *The ID of the VPC.
*/ - TagSpecifications?: TagSpecification[]; + VpcId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -8419,207 +9069,213 @@ export interface CreateTransitGatewayConnectPeerRequest {
* Otherwise, it is UnauthorizedOperation
.
Indicates whether to create an IPv6 only subnet.
+ */ + Ipv6Native?: boolean; } -export namespace CreateTransitGatewayConnectPeerRequest { +export namespace CreateSubnetRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayConnectPeerRequest): any => ({ + export const filterSensitiveLog = (obj: CreateSubnetRequest): any => ({ ...obj, }); } -export type BgpStatus = "down" | "up"; - -/** - *The BGP configuration information.
- */ -export interface TransitGatewayAttachmentBgpConfiguration { - /** - *The transit gateway Autonomous System Number (ASN).
- */ - TransitGatewayAsn?: number; - - /** - *The peer Autonomous System Number (ASN).
- */ - PeerAsn?: number; - - /** - *The interior BGP peer IP address for the transit gateway.
- */ - TransitGatewayAddress?: string; - - /** - *The interior BGP peer IP address for the appliance.
- */ - PeerAddress?: string; - +export interface CreateSubnetResult { /** - *The BGP status.
+ *Information about the subnet.
*/ - BgpStatus?: BgpStatus | string; + Subnet?: Subnet; } -export namespace TransitGatewayAttachmentBgpConfiguration { +export namespace CreateSubnetResult { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayAttachmentBgpConfiguration): any => ({ + export const filterSensitiveLog = (obj: CreateSubnetResult): any => ({ ...obj, }); } -/** - *Describes the Connect peer details.
- */ -export interface TransitGatewayConnectPeerConfiguration { +export enum SubnetCidrReservationType { + explicit = "explicit", + prefix = "prefix", +} + +export interface CreateSubnetCidrReservationRequest { /** - *The Connect peer IP address on the transit gateway side of the tunnel.
+ *The tags to assign to the subnet CIDR reservation.
*/ - TransitGatewayAddress?: string; + TagSpecifications?: TagSpecification[]; /** - *The Connect peer IP address on the appliance side of the tunnel.
+ *The ID of the subnet.
*/ - PeerAddress?: string; + SubnetId: string | undefined; /** - *The range of interior BGP peer IP addresses.
+ *The IPv4 or IPV6 CIDR range to reserve.
*/ - InsideCidrBlocks?: string[]; + Cidr: string | undefined; /** - *The tunnel protocol.
+ *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.
The + * description + * to assign to the subnet CIDR reservation.
+ */ + Description?: string; /** - *The BGP configuration details.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a transit gateway Connect peer.
+ *Describes a subnet CIDR reservation.
*/ -export interface TransitGatewayConnectPeer { +export interface SubnetCidrReservation { /** - *The ID of the Connect attachment.
+ *The ID of the subnet CIDR reservation.
*/ - TransitGatewayAttachmentId?: string; + SubnetCidrReservationId?: string; + + /** + *The ID of the subnet.
+ */ + SubnetId?: string; /** - *The ID of the Connect peer.
+ *The CIDR that has been reserved.
*/ - TransitGatewayConnectPeerId?: string; + Cidr?: string; /** - *The state of the Connect peer.
+ *The type of reservation.
*/ - State?: TransitGatewayConnectPeerState | string; + ReservationType?: SubnetCidrReservationType | string; /** - *The creation time.
+ *The ID of the account that owns the subnet CIDR reservation.
*/ - CreationTime?: Date; + OwnerId?: string; /** - *The Connect peer details.
+ *The + * description + * assigned to the subnet CIDR + * reservation.
*/ - ConnectPeerConfiguration?: TransitGatewayConnectPeerConfiguration; + Description?: string; /** - *The tags for the Connect peer.
+ *The tags assigned to the subnet CIDR reservation.
*/ Tags?: Tag[]; } -export namespace TransitGatewayConnectPeer { +export namespace SubnetCidrReservation { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayConnectPeer): any => ({ + export const filterSensitiveLog = (obj: SubnetCidrReservation): any => ({ ...obj, }); } -export interface CreateTransitGatewayConnectPeerResult { +export interface CreateSubnetCidrReservationResult { /** - *Information about the Connect peer.
+ *Information about the created subnet CIDR reservation.
*/ - TransitGatewayConnectPeer?: TransitGatewayConnectPeer; + SubnetCidrReservation?: SubnetCidrReservation; } -export namespace CreateTransitGatewayConnectPeerResult { +export namespace CreateSubnetCidrReservationResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayConnectPeerResult): any => ({ + export const filterSensitiveLog = (obj: CreateSubnetCidrReservationResult): any => ({ ...obj, }); } -export type AutoAcceptSharedAssociationsValue = "disable" | "enable"; - -export type Igmpv2SupportValue = "disable" | "enable"; - -export type StaticSourcesSupportValue = "disable" | "enable"; - -/** - *The options for the transit gateway multicast domain.
- */ -export interface CreateTransitGatewayMulticastDomainRequestOptions { +export interface CreateTagsRequest { /** - *Specify whether to enable Internet Group Management Protocol (IGMP) version 2 for the transit gateway multicast 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
.
Specify whether to enable support for statically configuring multicast group sources for a domain.
+ *The IDs of the resources, separated by spaces.
+ *Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.
*/ - StaticSourcesSupport?: StaticSourcesSupportValue | string; + Resources: string[] | undefined; /** - *Indicates whether to automatically accept cross-account subnet associations that are associated with the transit gateway multicast domain.
+ *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.
The ID of the transit gateway.
- */ - TransitGatewayId: string | undefined; + }); +} +export interface CreateTrafficMirrorFilterRequest { /** - *The options for the transit gateway multicast domain.
+ *The description of the Traffic Mirror filter.
*/ - Options?: CreateTransitGatewayMulticastDomainRequestOptions; + Description?: string; /** - *The tags for the transit gateway multicast domain.
+ *The tags to assign to a Traffic Mirror filter.
*/ TagSpecifications?: TagSpecification[]; @@ -8629,327 +9285,262 @@ export interface CreateTransitGatewayMulticastDomainRequest { * Otherwise, it isUnauthorizedOperation
.
*/
DryRun?: boolean;
+
+ /**
+ * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ */ + ClientToken?: string; } -export namespace CreateTransitGatewayMulticastDomainRequest { +export namespace CreateTrafficMirrorFilterRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayMulticastDomainRequest): any => ({ + export const filterSensitiveLog = (obj: CreateTrafficMirrorFilterRequest): any => ({ ...obj, }); } /** - *Describes the options for a transit gateway multicast domain.
+ *Describes the Traffic Mirror port range.
*/ -export interface TransitGatewayMulticastDomainOptions { - /** - *Indicates whether Internet Group Management Protocol (IGMP) version 2 is turned on for the transit gateway multicast domain.
- */ - Igmpv2Support?: Igmpv2SupportValue | string; - +export interface TrafficMirrorPortRange { /** - *Indicates whether support for statically configuring transit gateway multicast group sources is turned on.
+ *The start of the Traffic Mirror port range. This applies to the TCP and UDP protocols.
*/ - StaticSourcesSupport?: StaticSourcesSupportValue | string; + FromPort?: number; /** - *Indicates whether to automatically cross-account subnet associations that are associated with the transit gateway multicast domain.
+ *The end of the Traffic Mirror port range. This applies to the TCP and UDP protocols.
*/ - AutoAcceptSharedAssociations?: AutoAcceptSharedAssociationsValue | string; + ToPort?: number; } -export namespace TransitGatewayMulticastDomainOptions { +export namespace TrafficMirrorPortRange { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayMulticastDomainOptions): any => ({ + export const filterSensitiveLog = (obj: TrafficMirrorPortRange): any => ({ ...obj, }); } -export type TransitGatewayMulticastDomainState = "available" | "deleted" | "deleting" | "pending"; +export type TrafficMirrorRuleAction = "accept" | "reject"; + +export type TrafficDirection = "egress" | "ingress"; /** - *Describes the transit gateway multicast domain.
+ *Describes the Traffic Mirror rule.
*/ -export interface TransitGatewayMulticastDomain { +export interface TrafficMirrorFilterRule { /** - *The ID of the transit gateway multicast domain.
+ *The ID of the Traffic Mirror rule.
*/ - TransitGatewayMulticastDomainId?: string; + TrafficMirrorFilterRuleId?: string; /** - *The ID of the transit gateway.
+ *The ID of the Traffic Mirror filter that the rule is associated with.
*/ - TransitGatewayId?: string; + TrafficMirrorFilterId?: string; /** - *The Amazon Resource Name (ARN) of the transit gateway multicast domain.
+ *The traffic direction assigned to the Traffic Mirror rule.
*/ - TransitGatewayMulticastDomainArn?: string; + TrafficDirection?: TrafficDirection | string; /** - *The ID of the Amazon Web Services account that owns the transit gateway multicast domain.
+ *The rule number of the Traffic Mirror rule.
*/ - OwnerId?: string; + RuleNumber?: number; /** - *The options for the transit gateway multicast domain.
+ *The action assigned to the Traffic Mirror rule.
*/ - Options?: TransitGatewayMulticastDomainOptions; + RuleAction?: TrafficMirrorRuleAction | string; /** - *The state of the transit gateway multicast domain.
+ *The protocol assigned to the Traffic Mirror rule.
*/ - State?: TransitGatewayMulticastDomainState | string; + Protocol?: number; /** - *The time the transit gateway multicast domain was created.
+ *The destination port range assigned to the Traffic Mirror rule.
*/ - CreationTime?: Date; + DestinationPortRange?: TrafficMirrorPortRange; + + /** + *The source port range assigned to the Traffic Mirror rule.
+ */ + SourcePortRange?: TrafficMirrorPortRange; /** - *The tags for the transit gateway multicast domain.
+ *The destination CIDR block assigned to the Traffic Mirror rule.
*/ - Tags?: Tag[]; -} + DestinationCidrBlock?: string; -export namespace TransitGatewayMulticastDomain { /** - * @internal + *The source CIDR block assigned to the Traffic Mirror rule.
*/ - export const filterSensitiveLog = (obj: TransitGatewayMulticastDomain): any => ({ - ...obj, - }); -} + SourceCidrBlock?: string; -export interface CreateTransitGatewayMulticastDomainResult { /** - *Information about the transit gateway multicast domain.
+ *The description of the Traffic Mirror rule.
*/ - TransitGatewayMulticastDomain?: TransitGatewayMulticastDomain; + Description?: string; } -export namespace CreateTransitGatewayMulticastDomainResult { +export namespace TrafficMirrorFilterRule { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayMulticastDomainResult): any => ({ + export const filterSensitiveLog = (obj: TrafficMirrorFilterRule): any => ({ ...obj, }); } -export interface CreateTransitGatewayPeeringAttachmentRequest { - /** - *The ID of the transit gateway.
- */ - TransitGatewayId: string | undefined; - - /** - *The ID of the peer transit gateway with which to create the peering attachment.
- */ - PeerTransitGatewayId: string | undefined; +export type TrafficMirrorNetworkService = "amazon-dns"; +/** + *Describes the Traffic Mirror filter.
+ */ +export interface TrafficMirrorFilter { /** - *The ID of the Amazon Web Services account that owns the peer transit gateway.
+ *The ID of the Traffic Mirror filter.
*/ - PeerAccountId: string | undefined; + TrafficMirrorFilterId?: string; /** - *The Region where the peer transit gateway is located.
+ *Information about the ingress rules that are associated with the Traffic Mirror filter.
*/ - PeerRegion: string | undefined; + IngressFilterRules?: TrafficMirrorFilterRule[]; /** - *The tags to apply to the transit gateway peering attachment.
+ *Information about the egress rules that are associated with the Traffic Mirror filter.
*/ - TagSpecifications?: TagSpecification[]; + EgressFilterRules?: TrafficMirrorFilterRule[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The network service traffic that is associated with the Traffic Mirror filter.
*/ - DryRun?: boolean; -} + NetworkServices?: (TrafficMirrorNetworkService | string)[]; -export namespace CreateTransitGatewayPeeringAttachmentRequest { /** - * @internal + *The description of the Traffic Mirror filter.
*/ - export const filterSensitiveLog = (obj: CreateTransitGatewayPeeringAttachmentRequest): any => ({ - ...obj, - }); -} + Description?: string; -export interface CreateTransitGatewayPeeringAttachmentResult { /** - *The transit gateway peering attachment.
+ *The tags assigned to the Traffic Mirror filter.
*/ - TransitGatewayPeeringAttachment?: TransitGatewayPeeringAttachment; + Tags?: Tag[]; } -export namespace CreateTransitGatewayPeeringAttachmentResult { +export namespace TrafficMirrorFilter { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayPeeringAttachmentResult): any => ({ + export const filterSensitiveLog = (obj: TrafficMirrorFilter): any => ({ ...obj, }); } -export interface CreateTransitGatewayPrefixListReferenceRequest { - /** - *The ID of the transit gateway route table.
- */ - TransitGatewayRouteTableId: string | undefined; - - /** - *The ID of the prefix list that is used for destination matches.
- */ - PrefixListId: string | undefined; - - /** - *The ID of the attachment to which traffic is routed.
- */ - TransitGatewayAttachmentId?: string; - +export interface CreateTrafficMirrorFilterResult { /** - *Indicates whether to drop traffic that matches this route.
+ *Information about the Traffic Mirror filter.
*/ - Blackhole?: boolean; + TrafficMirrorFilter?: TrafficMirrorFilter; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
*/ - DryRun?: boolean; + ClientToken?: string; } -export namespace CreateTransitGatewayPrefixListReferenceRequest { +export namespace CreateTrafficMirrorFilterResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayPrefixListReferenceRequest): any => ({ + export const filterSensitiveLog = (obj: CreateTrafficMirrorFilterResult): any => ({ ...obj, }); } -export type TransitGatewayPrefixListReferenceState = "available" | "deleting" | "modifying" | "pending"; - /** - *Describes a transit gateway prefix list attachment.
+ *Information about the Traffic Mirror filter rule port range.
*/ -export interface TransitGatewayPrefixListAttachment { - /** - *The ID of the attachment.
- */ - TransitGatewayAttachmentId?: string; - +export interface TrafficMirrorPortRangeRequest { /** - *The resource type. Note that the tgw-peering
resource type has been deprecated.
The first port in the Traffic Mirror port range. This applies to the TCP and UDP protocols.
*/ - ResourceType?: TransitGatewayAttachmentResourceType | string; + FromPort?: number; /** - *The ID of the resource.
+ *The last port in the Traffic Mirror port range. This applies to the TCP and UDP protocols.
*/ - ResourceId?: string; + ToPort?: number; } -export namespace TransitGatewayPrefixListAttachment { +export namespace TrafficMirrorPortRangeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayPrefixListAttachment): any => ({ + export const filterSensitiveLog = (obj: TrafficMirrorPortRangeRequest): any => ({ ...obj, }); } -/** - *Describes a prefix list reference.
- */ -export interface TransitGatewayPrefixListReference { - /** - *The ID of the transit gateway route table.
- */ - TransitGatewayRouteTableId?: string; - - /** - *The ID of the prefix list.
- */ - PrefixListId?: string; - +export interface CreateTrafficMirrorFilterRuleRequest { /** - *The ID of the prefix list owner.
+ *The ID of the filter that this rule is associated with.
*/ - PrefixListOwnerId?: string; + TrafficMirrorFilterId: string | undefined; /** - *The state of the prefix list reference.
+ *The type of traffic.
*/ - State?: TransitGatewayPrefixListReferenceState | string; + TrafficDirection: TrafficDirection | string | undefined; /** - *Indicates whether traffic that matches this route is dropped.
+ *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.
*/ - Blackhole?: boolean; + RuleNumber: number | undefined; /** - *Information about the transit gateway attachment.
+ *The action to take on the filtered traffic.
*/ - TransitGatewayAttachment?: TransitGatewayPrefixListAttachment; -} + RuleAction: TrafficMirrorRuleAction | string | undefined; -export namespace TransitGatewayPrefixListReference { /** - * @internal + *The destination port range.
*/ - export const filterSensitiveLog = (obj: TransitGatewayPrefixListReference): any => ({ - ...obj, - }); -} + DestinationPortRange?: TrafficMirrorPortRangeRequest; -export interface CreateTransitGatewayPrefixListReferenceResult { /** - *Information about the prefix list reference.
+ *The source port range.
*/ - TransitGatewayPrefixListReference?: TransitGatewayPrefixListReference; -} + SourcePortRange?: TrafficMirrorPortRangeRequest; -export namespace CreateTransitGatewayPrefixListReferenceResult { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: CreateTransitGatewayPrefixListReferenceResult): any => ({ - ...obj, - }); -} + Protocol?: number; -export interface CreateTransitGatewayRouteRequest { /** - *The CIDR range used for destination matches. Routing decisions are based on the - * most specific match.
+ *The destination CIDR block to assign to the Traffic Mirror rule.
*/ DestinationCidrBlock: string | undefined; /** - *The ID of the transit gateway route table.
- */ - TransitGatewayRouteTableId: string | undefined; - - /** - *The ID of the attachment.
+ *The source CIDR block to assign to the Traffic Mirror rule.
*/ - TransitGatewayAttachmentId?: string; + SourceCidrBlock: string | undefined; /** - *Indicates whether to drop traffic that matches this route.
+ *The description of the Traffic Mirror rule.
*/ - Blackhole?: boolean; + Description?: string; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -8957,113 +9548,90 @@ export interface CreateTransitGatewayRouteRequest {
* Otherwise, it is UnauthorizedOperation
.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ */ + ClientToken?: string; } -export namespace CreateTransitGatewayRouteRequest { +export namespace CreateTrafficMirrorFilterRuleRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayRouteRequest): any => ({ + export const filterSensitiveLog = (obj: CreateTrafficMirrorFilterRuleRequest): any => ({ ...obj, }); } -export type TransitGatewayRouteState = "active" | "blackhole" | "deleted" | "deleting" | "pending"; - -/** - *Describes a route attachment.
- */ -export interface TransitGatewayRouteAttachment { - /** - *The ID of the resource.
- */ - ResourceId?: string; - +export interface CreateTrafficMirrorFilterRuleResult { /** - *The ID of the attachment.
+ *The Traffic Mirror rule.
*/ - TransitGatewayAttachmentId?: string; + TrafficMirrorFilterRule?: TrafficMirrorFilterRule; /** - *The resource type. Note that the tgw-peering
resource type has been deprecated.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
*/ - ResourceType?: TransitGatewayAttachmentResourceType | string; + ClientToken?: string; } -export namespace TransitGatewayRouteAttachment { +export namespace CreateTrafficMirrorFilterRuleResult { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayRouteAttachment): any => ({ + export const filterSensitiveLog = (obj: CreateTrafficMirrorFilterRuleResult): any => ({ ...obj, }); } -export type TransitGatewayRouteType = "propagated" | "static"; - -/** - *Describes a route for a transit gateway route table.
- */ -export interface TransitGatewayRoute { - /** - *The CIDR block used for destination matches.
- */ - DestinationCidrBlock?: string; - - /** - *The ID of the prefix list used for destination matches.
- */ - PrefixListId?: string; - +export interface CreateTrafficMirrorSessionRequest { /** - *The attachments.
+ *The ID of the source network interface.
*/ - TransitGatewayAttachments?: TransitGatewayRouteAttachment[]; + NetworkInterfaceId: string | undefined; /** - *The route type.
+ *The ID of the Traffic Mirror target.
*/ - Type?: TransitGatewayRouteType | string; + TrafficMirrorTargetId: string | undefined; /** - *The state of the route.
+ *The ID of the Traffic Mirror filter.
*/ - State?: TransitGatewayRouteState | string; -} + TrafficMirrorFilterId: string | undefined; -export namespace TransitGatewayRoute { /** - * @internal + *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.
Information about the route.
+ *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.
*/ - Route?: TransitGatewayRoute; -} + SessionNumber: number | undefined; -export namespace CreateTransitGatewayRouteResult { /** - * @internal + *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.
The ID of the transit gateway.
+ *The description of the Traffic Mirror session.
*/ - TransitGatewayId: string | undefined; + Description?: string; /** - *The tags to apply to the transit gateway route table.
+ *The tags to assign to a Traffic Mirror session.
*/ TagSpecifications?: TagSpecification[]; @@ -9072,139 +9640,127 @@ export interface CreateTransitGatewayRouteTableRequest { * and provides an error response. If you have the required permissions, the error response isDryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
*/
- DryRun?: boolean;
+ DryRun?: boolean;
+
+ /**
+ * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
+ */ + ClientToken?: string; } -export namespace CreateTransitGatewayRouteTableRequest { +export namespace CreateTrafficMirrorSessionRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayRouteTableRequest): any => ({ + export const filterSensitiveLog = (obj: CreateTrafficMirrorSessionRequest): any => ({ ...obj, }); } -export type TransitGatewayRouteTableState = "available" | "deleted" | "deleting" | "pending"; - /** - *Describes a transit gateway route table.
+ *Describes a Traffic Mirror session.
*/ -export interface TransitGatewayRouteTable { +export interface TrafficMirrorSession { /** - *The ID of the transit gateway route table.
+ *The ID for the Traffic Mirror session.
*/ - TransitGatewayRouteTableId?: string; + TrafficMirrorSessionId?: string; /** - *The ID of the transit gateway.
+ *The ID of the Traffic Mirror target.
*/ - TransitGatewayId?: string; + TrafficMirrorTargetId?: string; /** - *The state of the transit gateway route table.
+ *The ID of the Traffic Mirror filter.
*/ - State?: TransitGatewayRouteTableState | string; + TrafficMirrorFilterId?: string; /** - *Indicates whether this is the default association route table for the transit gateway.
+ *The ID of the Traffic Mirror session's network interface.
*/ - DefaultAssociationRouteTable?: boolean; + NetworkInterfaceId?: string; /** - *Indicates whether this is the default propagation route table for the transit gateway.
+ *The ID of the account that owns the Traffic Mirror session.
*/ - DefaultPropagationRouteTable?: boolean; + OwnerId?: string; /** - *The creation time.
+ *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
*/ - CreationTime?: Date; + PacketLength?: number; /** - *Any tags assigned to the route table.
+ *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.
*/ - Tags?: Tag[]; -} + SessionNumber?: number; -export namespace TransitGatewayRouteTable { /** - * @internal + *The virtual network ID associated with the Traffic Mirror session.
*/ - export const filterSensitiveLog = (obj: TransitGatewayRouteTable): any => ({ - ...obj, - }); -} + VirtualNetworkId?: number; + + /** + *The description of the Traffic Mirror session.
+ */ + Description?: string; -export interface CreateTransitGatewayRouteTableResult { /** - *Information about the transit gateway route table.
+ *The tags assigned to the Traffic Mirror session.
*/ - TransitGatewayRouteTable?: TransitGatewayRouteTable; + Tags?: Tag[]; } -export namespace CreateTransitGatewayRouteTableResult { +export namespace TrafficMirrorSession { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayRouteTableResult): any => ({ + export const filterSensitiveLog = (obj: TrafficMirrorSession): any => ({ ...obj, }); } -/** - *Describes the options for a VPC attachment.
- */ -export interface CreateTransitGatewayVpcAttachmentRequestOptions { - /** - *Enable or disable DNS support. The default is enable
.
Enable or disable IPv6 support. The default is disable
.
Information about the Traffic Mirror session.
*/ - Ipv6Support?: Ipv6SupportValue | string; + TrafficMirrorSession?: TrafficMirrorSession; /** - *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
.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
*/ - ApplianceModeSupport?: ApplianceModeSupportValue | string; + ClientToken?: string; } -export namespace CreateTransitGatewayVpcAttachmentRequestOptions { +export namespace CreateTrafficMirrorSessionResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayVpcAttachmentRequestOptions): any => ({ + export const filterSensitiveLog = (obj: CreateTrafficMirrorSessionResult): any => ({ ...obj, }); } -export interface CreateTransitGatewayVpcAttachmentRequest { - /** - *The ID of the transit gateway.
- */ - TransitGatewayId: string | undefined; - +export interface CreateTrafficMirrorTargetRequest { /** - *The ID of the VPC.
+ *The network interface ID that is associated with the target.
*/ - VpcId: string | undefined; + NetworkInterfaceId?: string; /** - *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.
+ *The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the target.
*/ - SubnetIds: string[] | undefined; + NetworkLoadBalancerArn?: string; /** - *The VPC attachment options.
+ *The description of the Traffic Mirror target.
*/ - Options?: CreateTransitGatewayVpcAttachmentRequestOptions; + Description?: string; /** - *The tags to apply to the VPC attachment.
+ *The tags to assign to the Traffic Mirror target.
*/ TagSpecifications?: TagSpecification[]; @@ -9214,697 +9770,577 @@ export interface CreateTransitGatewayVpcAttachmentRequest { * Otherwise, it isUnauthorizedOperation
.
*/
DryRun?: boolean;
-}
-
-export namespace CreateTransitGatewayVpcAttachmentRequest {
- /**
- * @internal
- */
- export const filterSensitiveLog = (obj: CreateTransitGatewayVpcAttachmentRequest): any => ({
- ...obj,
- });
-}
-export interface CreateTransitGatewayVpcAttachmentResult {
/**
- * Information about the VPC attachment.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
*/ - TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment; + ClientToken?: string; } -export namespace CreateTransitGatewayVpcAttachmentResult { +export namespace CreateTrafficMirrorTargetRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateTransitGatewayVpcAttachmentResult): any => ({ + export const filterSensitiveLog = (obj: CreateTrafficMirrorTargetRequest): any => ({ ...obj, }); } -export interface CreateVolumeRequest { - /** - *The Availability Zone in which to create the volume.
- */ - AvailabilityZone: string | undefined; - - /** - *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.
- */ - Encrypted?: boolean; - - /** - *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.
Describes a Traffic Mirror target.
+ */ +export interface TrafficMirrorTarget { /** - *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.
+ *The ID of the Traffic Mirror target.
*/ - KmsKeyId?: string; + TrafficMirrorTargetId?: string; /** - *The Amazon Resource Name (ARN) of the Outpost.
+ *The network interface ID that is attached to the target.
*/ - OutpostArn?: string; + NetworkInterfaceId?: string; /** - *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
The Amazon Resource Name (ARN) of the Network Load Balancer.
*/ - Size?: number; + NetworkLoadBalancerArn?: string; /** - *The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.
+ *The type of Traffic Mirror target.
*/ - SnapshotId?: string; + Type?: TrafficMirrorTargetType | string; /** - *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
- *
For more information, see Amazon EBS volume types in the - * Amazon Elastic Compute Cloud User Guide.
- *Default: gp2
- *
Information about the Traffic Mirror target.
*/ - VolumeType?: VolumeType | string; + Description?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the account that owns the Traffic Mirror target.
*/ - DryRun?: boolean; + OwnerId?: string; /** - *The tags to apply to the volume during creation.
+ *The tags assigned to the Traffic Mirror target.
*/ - TagSpecifications?: TagSpecification[]; + Tags?: Tag[]; +} +export namespace TrafficMirrorTarget { /** - *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.
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.
+ *Information about the Traffic Mirror target.
*/ - Throughput?: number; + TrafficMirrorTarget?: TrafficMirrorTarget; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency - * of the request. For more information, see Ensure - * Idempotency.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to ensure idempotency.
*/ ClientToken?: string; } -export namespace CreateVolumeRequest { +export namespace CreateTrafficMirrorTargetResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVolumeRequest): any => ({ + export const filterSensitiveLog = (obj: CreateTrafficMirrorTargetResult): any => ({ ...obj, }); } -export type VolumeState = "available" | "creating" | "deleted" | "deleting" | "error" | "in-use"; +export type AutoAcceptSharedAttachmentsValue = "disable" | "enable"; -/** - *Describes a volume.
- */ -export interface Volume { - /** - *Information about the volume attachments.
- */ - Attachments?: VolumeAttachment[]; +export type DefaultRouteTableAssociationValue = "disable" | "enable"; - /** - *The Availability Zone for the volume.
- */ - AvailabilityZone?: string; +export type DefaultRouteTablePropagationValue = "disable" | "enable"; - /** - *The time stamp when volume creation was initiated.
- */ - CreateTime?: Date; +export type MulticastSupportValue = "disable" | "enable"; + +export type VpnEcmpSupportValue = "disable" | "enable"; +/** + *Describes the options for a transit gateway.
+ */ +export interface TransitGatewayRequestOptions { /** - *Indicates whether the volume is encrypted.
+ *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
.
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.
+ *Enable or disable automatic acceptance of attachment requests. Disabled by default.
*/ - KmsKeyId?: string; + AutoAcceptSharedAttachments?: AutoAcceptSharedAttachmentsValue | string; /** - *The Amazon Resource Name (ARN) of the Outpost.
+ *Enable or disable automatic association with the default association route table. Enabled by default.
*/ - OutpostArn?: string; + DefaultRouteTableAssociation?: DefaultRouteTableAssociationValue | string; /** - *The size of the volume, in GiBs.
+ *Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default.
*/ - Size?: number; + DefaultRouteTablePropagation?: DefaultRouteTablePropagationValue | string; /** - *The snapshot from which the volume was created, if applicable.
+ *Enable or disable Equal Cost Multipath Protocol support. Enabled by default.
*/ - SnapshotId?: string; + VpnEcmpSupport?: VpnEcmpSupportValue | string; /** - *The volume state.
+ *Enable or disable DNS support. Enabled by default.
*/ - State?: VolumeState | string; + DnsSupport?: DnsSupportValue | string; /** - *The ID of the volume.
+ *Indicates whether multicast is enabled on the transit gateway
*/ - VolumeId?: string; + MulticastSupport?: MulticastSupportValue | string; /** - *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.
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.
*/ - Iops?: number; + TransitGatewayCidrBlocks?: string[]; +} +export namespace TransitGatewayRequestOptions { /** - *Any tags assigned to the volume.
+ * @internal */ - Tags?: Tag[]; + export const filterSensitiveLog = (obj: TransitGatewayRequestOptions): any => ({ + ...obj, + }); +} +export interface CreateTransitGatewayRequest { /** - *The volume type.
+ *A description of the transit gateway.
*/ - VolumeType?: VolumeType | string; + Description?: string; /** - *Indicates whether the volume was created using fast snapshot restore.
+ *The transit gateway options.
*/ - FastRestored?: boolean; + Options?: TransitGatewayRequestOptions; /** - *Indicates whether Amazon EBS Multi-Attach is enabled.
+ *The tags to apply to the transit gateway.
*/ - MultiAttachEnabled?: boolean; + TagSpecifications?: TagSpecification[]; /** - *The throughput that the volume supports, in MiB/s.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes the options for a transit gateway.
+ */ +export interface TransitGatewayOptions { /** - *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
.
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.
*/ - CidrBlock: string | undefined; + AmazonSideAsn?: number; /** - *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.
+ *The transit gateway CIDR blocks.
*/ - AmazonProvidedIpv6CidrBlock?: boolean; + TransitGatewayCidrBlocks?: string[]; /** - *The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.
+ *Indicates whether attachment requests are automatically accepted.
*/ - Ipv6Pool?: string; + AutoAcceptSharedAttachments?: AutoAcceptSharedAttachmentsValue | string; /** - *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.
+ *Indicates whether resource attachments are automatically associated with the default association route table.
*/ - Ipv6CidrBlock?: string; + DefaultRouteTableAssociation?: DefaultRouteTableAssociationValue | string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the default association route table.
*/ - DryRun?: boolean; + AssociationDefaultRouteTableId?: string; /** - *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
- *
Indicates whether resource attachments automatically propagate routes to the default propagation route table.
*/ - InstanceTenancy?: Tenancy | string; + DefaultRouteTablePropagation?: DefaultRouteTablePropagationValue | string; /** - *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.
The ID of the default propagation route table.
*/ - Ipv6CidrBlockNetworkBorderGroup?: string; + PropagationDefaultRouteTableId?: string; /** - *The tags to assign to the VPC.
+ *Indicates whether Equal Cost Multipath Protocol support is enabled.
*/ - TagSpecifications?: TagSpecification[]; -} + VpnEcmpSupport?: VpnEcmpSupportValue | string; -export namespace CreateVpcRequest { /** - * @internal + *Indicates whether DNS support is enabled.
*/ - export const filterSensitiveLog = (obj: CreateVpcRequest): any => ({ - ...obj, - }); -} + DnsSupport?: DnsSupportValue | string; -export interface CreateVpcResult { /** - *Information about the VPC.
+ *Indicates whether multicast is enabled on the transit gateway
*/ - Vpc?: Vpc; + MulticastSupport?: MulticastSupportValue | string; } -export namespace CreateVpcResult { +export namespace TransitGatewayOptions { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpcResult): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayOptions): any => ({ ...obj, }); } -export enum VpcEndpointType { - Gateway = "Gateway", - GatewayLoadBalancer = "GatewayLoadBalancer", - Interface = "Interface", -} +export type TransitGatewayState = "available" | "deleted" | "deleting" | "modifying" | "pending"; /** - *Contains the parameters for CreateVpcEndpoint.
+ *Describes a transit gateway.
*/ -export interface CreateVpcEndpointRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The type of endpoint.
- *Default: Gateway
+ *The ID of the transit gateway.
*/ - VpcEndpointType?: VpcEndpointType | string; + TransitGatewayId?: string; /** - *The ID of the VPC in which the endpoint will be used.
+ *The Amazon Resource Name (ARN) of the transit gateway.
*/ - VpcId: string | undefined; + TransitGatewayArn?: string; /** - *The service name. To get a list of available services, use the DescribeVpcEndpointServices request, or get the name from the service - * provider.
+ *The state of the transit gateway.
*/ - ServiceName: string | undefined; + State?: TransitGatewayState | string; /** - *(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.
+ *The ID of the Amazon Web Services account that owns the transit gateway.
*/ - PolicyDocument?: string; + OwnerId?: string; /** - *(Gateway endpoint) One or more route table IDs.
+ *The description of the transit gateway.
*/ - RouteTableIds?: string[]; + Description?: string; /** - *(Interface and Gateway Load Balancer endpoints) The ID of one or more subnets in which to create an endpoint - * network interface. For a Gateway Load Balancer endpoint, you can specify one subnet only.
+ *The creation time.
*/ - SubnetIds?: string[]; + CreationTime?: Date; /** - *(Interface endpoint) The ID of one or more security groups to associate with the - * endpoint network interface.
+ *The transit gateway options.
*/ - SecurityGroupIds?: string[]; + Options?: TransitGatewayOptions; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. For more information, see How to ensure - * idempotency.
+ *The tags for the transit gateway.
*/ - ClientToken?: string; + Tags?: Tag[]; +} +export namespace TransitGateway { /** - *(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
- *
The tags to associate with the endpoint.
+ *Information about the transit gateway.
*/ - TagSpecifications?: TagSpecification[]; + TransitGateway?: TransitGateway; } -export namespace CreateVpcEndpointRequest { +export namespace CreateTransitGatewayResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpcEndpointRequest): any => ({ + export const filterSensitiveLog = (obj: CreateTransitGatewayResult): any => ({ ...obj, }); } +export type ProtocolValue = "gre"; + /** - *Describes a DNS entry.
+ *The options for a Connect attachment.
*/ -export interface DnsEntry { - /** - *The DNS name.
- */ - DnsName?: string; - +export interface CreateTransitGatewayConnectRequestOptions { /** - *The ID of the private hosted zone.
+ *The tunnel protocol.
*/ - HostedZoneId?: string; + Protocol: ProtocolValue | string | undefined; } -export namespace DnsEntry { +export namespace CreateTransitGatewayConnectRequestOptions { /** * @internal */ - export const filterSensitiveLog = (obj: DnsEntry): any => ({ + export const filterSensitiveLog = (obj: CreateTransitGatewayConnectRequestOptions): any => ({ ...obj, }); } -/** - *Describes a security group.
- */ -export interface SecurityGroupIdentifier { +export interface CreateTransitGatewayConnectRequest { /** - *The ID of the security group.
+ *The ID of the transit gateway attachment. You can specify a VPC attachment or Amazon Web Services Direct Connect attachment.
*/ - GroupId?: string; + TransportTransitGatewayAttachmentId: string | undefined; /** - *The name of the security group.
+ *The Connect attachment options.
*/ - GroupName?: string; + Options: CreateTransitGatewayConnectRequestOptions | undefined; + + /** + *The tags to apply to the Connect attachment.
+ */ + TagSpecifications?: TagSpecification[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The last error that occurred for a VPC endpoint.
+ *Describes the Connect attachment options.
*/ -export interface LastError { - /** - *The error message for the VPC endpoint error.
- */ - Message?: string; - +export interface TransitGatewayConnectOptions { /** - *The error code for the VPC endpoint error.
+ *The tunnel protocol.
*/ - Code?: string; + Protocol?: ProtocolValue | string; } -export namespace LastError { +export namespace TransitGatewayConnectOptions { /** * @internal */ - export const filterSensitiveLog = (obj: LastError): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayConnectOptions): any => ({ ...obj, }); } -export enum State { - Available = "Available", - Deleted = "Deleted", - Deleting = "Deleting", - Expired = "Expired", - Failed = "Failed", - Pending = "Pending", - PendingAcceptance = "PendingAcceptance", - Rejected = "Rejected", -} - /** - *Describes a VPC endpoint.
+ *Describes a transit gateway Connect attachment.
*/ -export interface VpcEndpoint { +export interface TransitGatewayConnect { /** - *The ID of the VPC endpoint.
+ *The ID of the Connect attachment.
*/ - VpcEndpointId?: string; + TransitGatewayAttachmentId?: string; /** - *The type of endpoint.
+ *The ID of the attachment from which the Connect attachment was created.
*/ - VpcEndpointType?: VpcEndpointType | string; + TransportTransitGatewayAttachmentId?: string; /** - *The ID of the VPC to which the endpoint is associated.
+ *The ID of the transit gateway.
*/ - VpcId?: string; + TransitGatewayId?: string; /** - *The name of the service to which the endpoint is associated.
+ *The state of the attachment.
*/ - ServiceName?: string; + State?: TransitGatewayAttachmentState | string; /** - *The state of the VPC endpoint.
+ *The creation time.
*/ - State?: State | string; + CreationTime?: Date; /** - *The policy document associated with the endpoint, if applicable.
+ *The Connect attachment options.
*/ - PolicyDocument?: string; + Options?: TransitGatewayConnectOptions; /** - *(Gateway endpoint) One or more route tables associated with the endpoint.
+ *The tags for the attachment.
*/ - RouteTableIds?: string[]; + Tags?: Tag[]; +} +export namespace TransitGatewayConnect { /** - *(Interface endpoint) One or more subnets in which the endpoint is located.
+ * @internal */ - SubnetIds?: string[]; + export const filterSensitiveLog = (obj: TransitGatewayConnect): any => ({ + ...obj, + }); +} +export interface CreateTransitGatewayConnectResult { /** - *(Interface endpoint) Information about the security groups that are associated with - * the network interface.
+ *Information about the Connect attachment.
*/ - Groups?: SecurityGroupIdentifier[]; + TransitGatewayConnect?: TransitGatewayConnect; +} +export namespace CreateTransitGatewayConnectResult { /** - *(Interface endpoint) Indicates whether the VPC is associated with a private hosted zone.
+ * @internal */ - PrivateDnsEnabled?: boolean; + export const filterSensitiveLog = (obj: CreateTransitGatewayConnectResult): any => ({ + ...obj, + }); +} +/** + *The BGP options for the Connect attachment.
+ */ +export interface TransitGatewayConnectRequestBgpOptions { /** - *Indicates whether the VPC endpoint is being managed by its service.
+ *The peer Autonomous System Number (ASN).
*/ - RequesterManaged?: boolean; + PeerAsn?: number; +} + +export namespace TransitGatewayConnectRequestBgpOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: TransitGatewayConnectRequestBgpOptions): any => ({ + ...obj, + }); +} + +export interface CreateTransitGatewayConnectPeerRequest { + /** + *The ID of the Connect attachment.
+ */ + TransitGatewayAttachmentId: string | undefined; /** - *(Interface endpoint) One or more network interfaces for the endpoint.
+ *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.
*/ - NetworkInterfaceIds?: string[]; + TransitGatewayAddress?: string; /** - *(Interface endpoint) The DNS entries for the endpoint.
+ *The peer IP address (GRE outer IP address) on the appliance side of the Connect peer.
*/ - DnsEntries?: DnsEntry[]; + PeerAddress: string | undefined; /** - *The date and time that the VPC endpoint was created.
+ *The BGP options for the Connect peer.
*/ - CreationTimestamp?: Date; + BgpOptions?: TransitGatewayConnectRequestBgpOptions; /** - *Any tags assigned to the VPC endpoint.
+ *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.
The ID of the Amazon Web Services account that owns the VPC endpoint.
+ *The tags to apply to the Connect peer.
*/ - OwnerId?: string; + TagSpecifications?: TagSpecification[]; /** - *The last error that occurred for VPC endpoint.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains the output of CreateVpcEndpoint.
+ *The BGP configuration information.
*/ -export interface CreateVpcEndpointResult { +export interface TransitGatewayAttachmentBgpConfiguration { /** - *Information about the endpoint.
+ *The transit gateway Autonomous System Number (ASN).
*/ - VpcEndpoint?: VpcEndpoint; + TransitGatewayAsn?: number; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request.
+ *The peer Autonomous System Number (ASN).
*/ - ClientToken?: string; + PeerAsn?: number; + + /** + *The interior BGP peer IP address for the transit gateway.
+ */ + TransitGatewayAddress?: string; + + /** + *The interior BGP peer IP address for the appliance.
+ */ + PeerAddress?: string; + + /** + *The BGP status.
+ */ + BgpStatus?: BgpStatus | string; } -export namespace CreateVpcEndpointResult { +export namespace TransitGatewayAttachmentBgpConfiguration { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpcEndpointResult): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayAttachmentBgpConfiguration): any => ({ ...obj, }); } diff --git a/clients/client-ec2/src/models/models_2.ts b/clients/client-ec2/src/models/models_2.ts index ea2e84dd2b4f..ae5d6100575f 100644 --- a/clients/client-ec2/src/models/models_2.ts +++ b/clients/client-ec2/src/models/models_2.ts @@ -1,11 +1,10 @@ import { - _InstanceType, AccountAttribute, AccountAttributeName, - ActiveInstance, Address, AddressAttribute, AddressAttributeName, + ApplianceModeSupportValue, AssociationStatus, BundleTask, ByoipCidr, @@ -16,1822 +15,1868 @@ import { ClientVpnAuthorizationRuleStatus, ClientVpnEndpointStatus, ClientVpnRouteStatus, - CurrencyCodeValues, - CustomerGateway, - DefaultTargetCapacityType, - DhcpOptions, - EgressOnlyInternetGateway, + DnsSupportValue, FleetCapacityReservation, FleetCapacityReservationTenancy, - FleetCapacityReservationUsageStrategy, - FleetExcessCapacityTerminationPolicy, FleetInstanceMatchCriteria, - FleetLaunchTemplateSpecification, - FleetOnDemandAllocationStrategy, - FleetReplacementStrategy, - FleetType, GatewayType, InstanceEventWindowState, - SpotAllocationStrategy, - SpotInstanceInterruptionBehavior, + Ipv6SupportValue, Tag, TagSpecification, - TargetCapacityUnitType, + Tenancy, + TransitGatewayAttachmentResourceType, TransitGatewayPeeringAttachment, TransitGatewayVpcAttachment, TransportProtocol, UnsuccessfulItem, + VolumeAttachment, + Vpc, VpcAttachment, VpcPeeringConnection, } from "./models_0"; import { - DestinationFileFormat, DiskImageFormat, - ExportTask, - FleetLaunchTemplateOverrides, GroupIdentifier, - InstanceLifecycle, + Ipam, + IpamPool, + IpamScope, LaunchTemplate, - LaunchTemplateAndOverridesResponse, LocalGatewayRoute, LocalGatewayRouteTableVpcAssociation, - LogDestinationType, ManagedPrefixList, PlatformValues, + ProtocolValue, SubnetCidrReservation, - TrafficType, TransitGateway, + TransitGatewayAttachmentBgpConfiguration, TransitGatewayConnect, - TransitGatewayConnectPeer, - TransitGatewayMulticastDomain, - TransitGatewayPrefixListReference, - TransitGatewayRoute, - TransitGatewayRouteTable, + VolumeType, } from "./models_1"; -export interface CreateVpcEndpointConnectionNotificationRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes the Connect peer details.
+ */ +export interface TransitGatewayConnectPeerConfiguration { /** - *The ID of the endpoint service.
+ *The Connect peer IP address on the transit gateway side of the tunnel.
*/ - ServiceId?: string; + TransitGatewayAddress?: string; /** - *The ID of the endpoint.
+ *The Connect peer IP address on the appliance side of the tunnel.
*/ - VpcEndpointId?: string; + PeerAddress?: string; /** - *The ARN of the SNS topic for the notifications.
+ *The range of interior BGP peer IP addresses.
*/ - ConnectionNotificationArn: string | undefined; + InsideCidrBlocks?: string[]; /** - *One or more endpoint events for which to receive notifications. Valid values are
- * Accept
, Connect
, Delete
, and
- * Reject
.
The tunnel protocol.
*/ - ConnectionEvents: string[] | undefined; + Protocol?: ProtocolValue | string; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. For more information, see How to ensure - * idempotency.
+ *The BGP configuration details.
*/ - ClientToken?: string; + BgpConfigurations?: TransitGatewayAttachmentBgpConfiguration[]; } -export namespace CreateVpcEndpointConnectionNotificationRequest { +export namespace TransitGatewayConnectPeerConfiguration { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpcEndpointConnectionNotificationRequest): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayConnectPeerConfiguration): any => ({ ...obj, }); } -export enum ConnectionNotificationState { - Disabled = "Disabled", - Enabled = "Enabled", -} - -export enum ConnectionNotificationType { - Topic = "Topic", -} +export type TransitGatewayConnectPeerState = "available" | "deleted" | "deleting" | "pending"; /** - *Describes a connection notification for a VPC endpoint or VPC endpoint - * service.
+ *Describes a transit gateway Connect peer.
*/ -export interface ConnectionNotification { - /** - *The ID of the notification.
- */ - ConnectionNotificationId?: string; - +export interface TransitGatewayConnectPeer { /** - *The ID of the endpoint service.
+ *The ID of the Connect attachment.
*/ - ServiceId?: string; + TransitGatewayAttachmentId?: string; /** - *The ID of the VPC endpoint.
+ *The ID of the Connect peer.
*/ - VpcEndpointId?: string; + TransitGatewayConnectPeerId?: string; /** - *The type of notification.
+ *The state of the Connect peer.
*/ - ConnectionNotificationType?: ConnectionNotificationType | string; + State?: TransitGatewayConnectPeerState | string; /** - *The ARN of the SNS topic for the notification.
+ *The creation time.
*/ - ConnectionNotificationArn?: string; + CreationTime?: Date; /** - *The events for the notification. Valid values are Accept
,
- * Connect
, Delete
, and Reject
.
The Connect peer details.
*/ - ConnectionEvents?: string[]; + ConnectPeerConfiguration?: TransitGatewayConnectPeerConfiguration; /** - *The state of the notification.
+ *The tags for the Connect peer.
*/ - ConnectionNotificationState?: ConnectionNotificationState | string; + Tags?: Tag[]; } -export namespace ConnectionNotification { +export namespace TransitGatewayConnectPeer { /** * @internal */ - export const filterSensitiveLog = (obj: ConnectionNotification): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayConnectPeer): any => ({ ...obj, }); } -export interface CreateVpcEndpointConnectionNotificationResult { - /** - *Information about the notification.
- */ - ConnectionNotification?: ConnectionNotification; - +export interface CreateTransitGatewayConnectPeerResult { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request.
+ *Information about the Connect peer.
*/ - ClientToken?: string; + TransitGatewayConnectPeer?: TransitGatewayConnectPeer; } -export namespace CreateVpcEndpointConnectionNotificationResult { +export namespace CreateTransitGatewayConnectPeerResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpcEndpointConnectionNotificationResult): any => ({ + export const filterSensitiveLog = (obj: CreateTransitGatewayConnectPeerResult): any => ({ ...obj, }); } -export interface CreateVpcEndpointServiceConfigurationRequest { +export type AutoAcceptSharedAssociationsValue = "disable" | "enable"; + +export type Igmpv2SupportValue = "disable" | "enable"; + +export type StaticSourcesSupportValue = "disable" | "enable"; + +/** + *The options for the transit gateway multicast domain.
+ */ +export interface CreateTransitGatewayMulticastDomainRequestOptions { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Specify whether to enable Internet Group Management Protocol (IGMP) version 2 for the transit gateway multicast domain.
*/ - DryRun?: boolean; + Igmpv2Support?: Igmpv2SupportValue | string; /** - *Indicates whether requests from service consumers to create an endpoint to your service must - * be accepted. To accept a request, use AcceptVpcEndpointConnections.
+ *Specify whether to enable support for statically configuring multicast group sources for a domain.
*/ - AcceptanceRequired?: boolean; + StaticSourcesSupport?: StaticSourcesSupportValue | string; /** - *(Interface endpoint configuration) The private DNS name to assign to the VPC endpoint service.
+ *Indicates whether to automatically accept cross-account subnet associations that are associated with the transit gateway multicast domain.
*/ - PrivateDnsName?: string; + AutoAcceptSharedAssociations?: AutoAcceptSharedAssociationsValue | string; +} +export namespace CreateTransitGatewayMulticastDomainRequestOptions { /** - *The Amazon Resource Names (ARNs) of one or more Network Load Balancers for your - * service.
+ * @internal */ - NetworkLoadBalancerArns?: string[]; + export const filterSensitiveLog = (obj: CreateTransitGatewayMulticastDomainRequestOptions): any => ({ + ...obj, + }); +} +export interface CreateTransitGatewayMulticastDomainRequest { /** - *The Amazon Resource Names (ARNs) of one or more Gateway Load Balancers.
+ *The ID of the transit gateway.
*/ - GatewayLoadBalancerArns?: string[]; + TransitGatewayId: string | undefined; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. - * For more information, see How to ensure - * idempotency.
+ *The options for the transit gateway multicast domain.
*/ - ClientToken?: string; + Options?: CreateTransitGatewayMulticastDomainRequestOptions; /** - *The tags to associate with the service.
+ *The tags for the transit gateway multicast domain.
*/ TagSpecifications?: TagSpecification[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the private DNS name for the service endpoint. For more information - * about these parameters, see VPC Endpoint Service - * Private DNS Name Verification in the - * Amazon Virtual Private Cloud User Guide.
+ *Describes the options for a transit gateway multicast domain.
*/ -export interface PrivateDnsNameConfiguration { - /** - *The verification state of the VPC endpoint service.
- *>Consumers
- * of the endpoint service can use the private name only when the state is
- * verified
.
The endpoint service verification type, for example TXT.
+ *Indicates whether Internet Group Management Protocol (IGMP) version 2 is turned on for the transit gateway multicast domain.
*/ - Type?: string; + Igmpv2Support?: Igmpv2SupportValue | string; /** - *The value the service provider adds to the private DNS name domain record before verification.
+ *Indicates whether support for statically configuring transit gateway multicast group sources is turned on.
*/ - Value?: string; + StaticSourcesSupport?: StaticSourcesSupportValue | string; /** - *The name of the record subdomain the service provider needs to create. The service provider adds the value
text to the name
.
Indicates whether to automatically cross-account subnet associations that are associated with the transit gateway multicast domain.
*/ - Name?: string; + AutoAcceptSharedAssociations?: AutoAcceptSharedAssociationsValue | string; } -export namespace PrivateDnsNameConfiguration { +export namespace TransitGatewayMulticastDomainOptions { /** * @internal */ - export const filterSensitiveLog = (obj: PrivateDnsNameConfiguration): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayMulticastDomainOptions): any => ({ ...obj, }); } -export enum ServiceState { - Available = "Available", - Deleted = "Deleted", - Deleting = "Deleting", - Failed = "Failed", - Pending = "Pending", -} - -export enum ServiceType { - Gateway = "Gateway", - GatewayLoadBalancer = "GatewayLoadBalancer", - Interface = "Interface", -} +export type TransitGatewayMulticastDomainState = "available" | "deleted" | "deleting" | "pending"; /** - *Describes the type of service for a VPC endpoint.
+ *Describes the transit gateway multicast domain.
*/ -export interface ServiceTypeDetail { +export interface TransitGatewayMulticastDomain { /** - *The type of service.
+ *The ID of the transit gateway multicast domain.
*/ - ServiceType?: ServiceType | string; -} + TransitGatewayMulticastDomainId?: string; -export namespace ServiceTypeDetail { /** - * @internal + *The ID of the transit gateway.
*/ - export const filterSensitiveLog = (obj: ServiceTypeDetail): any => ({ - ...obj, - }); -} + TransitGatewayId?: string; -/** - *Describes a service configuration for a VPC endpoint service.
- */ -export interface ServiceConfiguration { /** - *The type of service.
+ *The Amazon Resource Name (ARN) of the transit gateway multicast domain.
*/ - ServiceType?: ServiceTypeDetail[]; + TransitGatewayMulticastDomainArn?: string; /** - *The ID of the service.
+ *The ID of the Amazon Web Services account that owns the transit gateway multicast domain.
*/ - ServiceId?: string; + OwnerId?: string; /** - *The name of the service.
+ *The options for the transit gateway multicast domain.
*/ - ServiceName?: string; + Options?: TransitGatewayMulticastDomainOptions; /** - *The service state.
+ *The state of the transit gateway multicast domain.
*/ - ServiceState?: ServiceState | string; + State?: TransitGatewayMulticastDomainState | string; /** - *The Availability Zones in which the service is available.
+ *The time the transit gateway multicast domain was created.
*/ - AvailabilityZones?: string[]; + CreationTime?: Date; /** - *Indicates whether requests from other Amazon Web Services accounts to create an endpoint to the service must first be accepted.
+ *The tags for the transit gateway multicast domain.
*/ - AcceptanceRequired?: boolean; + Tags?: Tag[]; +} +export namespace TransitGatewayMulticastDomain { /** - *Indicates whether the service manages its VPC endpoints. Management of the service VPC - * endpoints using the VPC endpoint API is restricted.
+ * @internal */ - ManagesVpcEndpoints?: boolean; + export const filterSensitiveLog = (obj: TransitGatewayMulticastDomain): any => ({ + ...obj, + }); +} +export interface CreateTransitGatewayMulticastDomainResult { /** - *The Amazon Resource Names (ARNs) of the Network Load Balancers for the service.
+ *Information about the transit gateway multicast domain.
*/ - NetworkLoadBalancerArns?: string[]; + TransitGatewayMulticastDomain?: TransitGatewayMulticastDomain; +} +export namespace CreateTransitGatewayMulticastDomainResult { /** - *The Amazon Resource Names (ARNs) of the Gateway Load Balancers for the service.
+ * @internal */ - GatewayLoadBalancerArns?: string[]; + export const filterSensitiveLog = (obj: CreateTransitGatewayMulticastDomainResult): any => ({ + ...obj, + }); +} +export interface CreateTransitGatewayPeeringAttachmentRequest { /** - *The DNS names for the service.
+ *The ID of the transit gateway.
*/ - BaseEndpointDnsNames?: string[]; + TransitGatewayId: string | undefined; /** - *The private DNS name for the service.
+ *The ID of the peer transit gateway with which to create the peering attachment.
*/ - PrivateDnsName?: string; + PeerTransitGatewayId: string | undefined; /** - *Information about the endpoint service private DNS name configuration.
+ *The ID of the Amazon Web Services account that owns the peer transit gateway.
*/ - PrivateDnsNameConfiguration?: PrivateDnsNameConfiguration; + PeerAccountId: string | undefined; /** - *Any tags assigned to the service.
+ *The Region where the peer transit gateway is located.
*/ - Tags?: Tag[]; + PeerRegion: string | undefined; + + /** + *The tags to apply to the transit gateway peering attachment.
+ */ + TagSpecifications?: TagSpecification[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the service configuration.
- */ - ServiceConfiguration?: ServiceConfiguration; - +export interface CreateTransitGatewayPeeringAttachmentResult { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request.
+ *The transit gateway peering attachment.
*/ - ClientToken?: string; + TransitGatewayPeeringAttachment?: TransitGatewayPeeringAttachment; } -export namespace CreateVpcEndpointServiceConfigurationResult { +export namespace CreateTransitGatewayPeeringAttachmentResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpcEndpointServiceConfigurationResult): any => ({ + export const filterSensitiveLog = (obj: CreateTransitGatewayPeeringAttachmentResult): any => ({ ...obj, }); } -export interface CreateVpcPeeringConnectionRequest { +export interface CreateTransitGatewayPrefixListReferenceRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the transit gateway route table.
*/ - DryRun?: boolean; + TransitGatewayRouteTableId: string | undefined; /** - *The Amazon Web Services account ID of the owner of the accepter VPC.
- *Default: Your Amazon Web Services account ID
+ *The ID of the prefix list that is used for destination matches.
*/ - PeerOwnerId?: string; + PrefixListId: string | undefined; /** - *The ID of the VPC with which you are creating the VPC peering connection. You must - * specify this parameter in the request.
+ *The ID of the attachment to which traffic is routed.
*/ - PeerVpcId?: string; + TransitGatewayAttachmentId?: string; /** - *The ID of the requester VPC. You must specify this parameter in the - * request.
- */ - VpcId?: string; - - /** - *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.
+ *Indicates whether to drop traffic that matches this route.
*/ - PeerRegion?: string; + Blackhole?: boolean; /** - *The tags to assign to the peering connection.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a transit gateway prefix list attachment.
+ */ +export interface TransitGatewayPrefixListAttachment { /** - *Information about the VPC peering connection.
+ *The ID of the attachment.
*/ - VpcPeeringConnection?: VpcPeeringConnection; + TransitGatewayAttachmentId?: string; + + /** + *The resource type. Note that the tgw-peering
resource type has been deprecated.
The ID of the resource.
+ */ + ResourceId?: string; } -export namespace CreateVpcPeeringConnectionResult { +export namespace TransitGatewayPrefixListAttachment { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpcPeeringConnectionResult): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayPrefixListAttachment): any => ({ ...obj, }); } -export type TunnelInsideIpVersion = "ipv4" | "ipv6"; - /** - *The IKE version that is permitted for the VPN tunnel.
+ *Describes a prefix list reference.
*/ -export interface IKEVersionsRequestListValue { +export interface TransitGatewayPrefixListReference { /** - *The IKE version.
+ *The ID of the transit gateway route table.
*/ - Value?: string; + TransitGatewayRouteTableId?: string; + + /** + *The ID of the prefix list.
+ */ + PrefixListId?: string; + + /** + *The ID of the prefix list owner.
+ */ + PrefixListOwnerId?: string; + + /** + *The state of the prefix list reference.
+ */ + State?: TransitGatewayPrefixListReferenceState | string; + + /** + *Indicates whether traffic that matches this route is dropped.
+ */ + Blackhole?: boolean; + + /** + *Information about the transit gateway attachment.
+ */ + TransitGatewayAttachment?: TransitGatewayPrefixListAttachment; } -export namespace IKEVersionsRequestListValue { +export namespace TransitGatewayPrefixListReference { /** * @internal */ - export const filterSensitiveLog = (obj: IKEVersionsRequestListValue): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayPrefixListReference): any => ({ ...obj, }); } -/** - *Specifies a Diffie-Hellman group number for the VPN tunnel for phase 1 IKE - * negotiations.
- */ -export interface Phase1DHGroupNumbersRequestListValue { +export interface CreateTransitGatewayPrefixListReferenceResult { /** - *The Diffie-Hellmann group number.
+ *Information about the prefix list reference.
*/ - Value?: number; + TransitGatewayPrefixListReference?: TransitGatewayPrefixListReference; } -export namespace Phase1DHGroupNumbersRequestListValue { +export namespace CreateTransitGatewayPrefixListReferenceResult { /** * @internal */ - export const filterSensitiveLog = (obj: Phase1DHGroupNumbersRequestListValue): any => ({ + export const filterSensitiveLog = (obj: CreateTransitGatewayPrefixListReferenceResult): any => ({ ...obj, }); } -/** - *Specifies the encryption algorithm for the VPN tunnel for phase 1 IKE - * negotiations.
- */ -export interface Phase1EncryptionAlgorithmsRequestListValue { +export interface CreateTransitGatewayRouteRequest { /** - *The value for the encryption algorithm.
+ *The CIDR range used for destination matches. Routing decisions are based on the + * most specific match.
*/ - Value?: string; + DestinationCidrBlock: string | undefined; + + /** + *The ID of the transit gateway route table.
+ */ + TransitGatewayRouteTableId: string | undefined; + + /** + *The ID of the attachment.
+ */ + TransitGatewayAttachmentId?: string; + + /** + *Indicates whether to drop traffic that matches this route.
+ */ + Blackhole?: boolean; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Specifies the integrity algorithm for the VPN tunnel for phase 1 IKE - * negotiations.
+ *Describes a route attachment.
*/ -export interface Phase1IntegrityAlgorithmsRequestListValue { +export interface TransitGatewayRouteAttachment { /** - *The value for the integrity algorithm.
+ *The ID of the resource.
*/ - Value?: string; + ResourceId?: string; + + /** + *The ID of the attachment.
+ */ + TransitGatewayAttachmentId?: string; + + /** + *The resource type. Note that the tgw-peering
resource type has been deprecated.
Specifies a Diffie-Hellman group number for the VPN tunnel for phase 2 IKE - * negotiations.
+ *Describes a route for a transit gateway route table.
*/ -export interface Phase2DHGroupNumbersRequestListValue { +export interface TransitGatewayRoute { /** - *The Diffie-Hellmann group number.
+ *The CIDR block used for destination matches.
*/ - Value?: number; + DestinationCidrBlock?: string; + + /** + *The ID of the prefix list used for destination matches.
+ */ + PrefixListId?: string; + + /** + *The attachments.
+ */ + TransitGatewayAttachments?: TransitGatewayRouteAttachment[]; + + /** + *The route type.
+ */ + Type?: TransitGatewayRouteType | string; + + /** + *The state of the route.
+ */ + State?: TransitGatewayRouteState | string; } -export namespace Phase2DHGroupNumbersRequestListValue { +export namespace TransitGatewayRoute { /** * @internal */ - export const filterSensitiveLog = (obj: Phase2DHGroupNumbersRequestListValue): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayRoute): any => ({ ...obj, }); } -/** - *Specifies the encryption algorithm for the VPN tunnel for phase 2 IKE - * negotiations.
- */ -export interface Phase2EncryptionAlgorithmsRequestListValue { +export interface CreateTransitGatewayRouteResult { /** - *The encryption algorithm.
+ *Information about the route.
*/ - Value?: string; + Route?: TransitGatewayRoute; } -export namespace Phase2EncryptionAlgorithmsRequestListValue { +export namespace CreateTransitGatewayRouteResult { /** * @internal */ - export const filterSensitiveLog = (obj: Phase2EncryptionAlgorithmsRequestListValue): any => ({ + export const filterSensitiveLog = (obj: CreateTransitGatewayRouteResult): any => ({ ...obj, }); } -/** - *Specifies the integrity algorithm for the VPN tunnel for phase 2 IKE - * negotiations.
- */ -export interface Phase2IntegrityAlgorithmsRequestListValue { +export interface CreateTransitGatewayRouteTableRequest { /** - *The integrity algorithm.
+ *The ID of the transit gateway.
*/ - Value?: string; + TransitGatewayId: string | undefined; + + /** + *The tags to apply to the transit gateway route table.
+ */ + TagSpecifications?: TagSpecification[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The tunnel options for a single VPN tunnel.
+ *Describes a transit gateway route table.
*/ -export interface VpnTunnelOptionsSpecification { +export interface TransitGatewayRouteTable { /** - *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
- *
The ID of the transit gateway route table.
*/ - TunnelInsideCidr?: string; + TransitGatewayRouteTableId?: string; /** - *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.
The ID of the transit gateway.
*/ - TunnelInsideIpv6Cidr?: string; + TransitGatewayId?: string; /** - *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).
+ *The state of the transit gateway route table.
*/ - PreSharedKey?: string; + State?: TransitGatewayRouteTableState | string; /** - *The lifetime for phase 1 of the IKE negotiation, in seconds.
- *Constraints: A value between 900 and 28,800.
- *Default: 28800
- *
Indicates whether this is the default association route table for the transit gateway.
*/ - Phase1LifetimeSeconds?: number; + DefaultAssociationRouteTable?: boolean; /** - *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
- *
Indicates whether this is the default propagation route table for the transit gateway.
*/ - Phase2LifetimeSeconds?: number; + DefaultPropagationRouteTable?: boolean; /** - *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
- *
The creation time.
*/ - RekeyMarginTimeSeconds?: number; + CreationTime?: Date; /** - *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
- *
Any tags assigned to the route table.
*/ - RekeyFuzzPercentage?: number; + Tags?: Tag[]; +} +export namespace TransitGatewayRouteTable { /** - *The number of packets in an IKE replay window.
- *Constraints: A value between 64 and 2048.
- *Default: 1024
- *
The number of seconds after which a DPD timeout occurs.
- *Constraints: A value between 0 and 30.
- *Default: 30
- *
Information about the transit gateway route table.
*/ - DPDTimeoutSeconds?: number; + TransitGatewayRouteTable?: TransitGatewayRouteTable; +} +export namespace CreateTransitGatewayRouteTableResult { /** - *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
- *
Describes the options for a VPC attachment.
+ */ +export interface CreateTransitGatewayVpcAttachmentRequestOptions { /** - *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
- *
Enable or disable DNS support. The default is enable
.
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
- *
Enable or disable IPv6 support. The default is disable
.
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
- *
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
.
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
- *
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
- *
The ID of the transit gateway.
*/ - Phase1DHGroupNumbers?: Phase1DHGroupNumbersRequestListValue[]; + TransitGatewayId: string | undefined; /** - *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
- *
The ID of the VPC.
*/ - Phase2DHGroupNumbers?: Phase2DHGroupNumbersRequestListValue[]; + VpcId: string | undefined; /** - *The IKE versions that are permitted for the VPN tunnel.
- *Valid values: ikev1
| ikev2
- *
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.
*/ - IKEVersions?: IKEVersionsRequestListValue[]; + SubnetIds: string[] | undefined; /** - *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
- *
The VPC attachment options.
*/ - StartupAction?: string; + Options?: CreateTransitGatewayVpcAttachmentRequestOptions; + + /** + *The tags to apply to the VPC attachment.
+ */ + TagSpecifications?: TagSpecification[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes VPN connection options.
- */ -export interface VpnConnectionOptionsSpecification { - /** - *Indicate whether to enable acceleration for the VPN connection.
- *Default: false
- *
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
- *
Information about the VPC attachment.
*/ - StaticRoutesOnly?: boolean; + TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment; +} +export namespace CreateTransitGatewayVpcAttachmentResult { /** - *Indicate whether the VPN tunnels process IPv4 or IPv6 traffic.
- *Default: ipv4
- *
The tunnel options for the VPN connection.
+ *The Availability Zone in which to create the volume.
*/ - TunnelOptions?: VpnTunnelOptionsSpecification[]; + AvailabilityZone: string | undefined; /** - *The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
- *Default: 0.0.0.0/0
- *
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.
*/ - LocalIpv4NetworkCidr?: string; + Encrypted?: boolean; /** - *The IPv4 CIDR on the Amazon Web Services side of the VPN connection.
- *Default: 0.0.0.0/0
- *
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.
The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
- *Default: ::/0
- *
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.
*/ - LocalIpv6NetworkCidr?: string; + KmsKeyId?: string; /** - *The IPv6 CIDR on the Amazon Web Services side of the VPN connection.
- *Default: ::/0
- *
The Amazon Resource Name (ARN) of the Outpost.
*/ - RemoteIpv6NetworkCidr?: string; -} + OutpostArn?: string; -export namespace VpnConnectionOptionsSpecification { /** - * @internal + *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
Contains the parameters for CreateVpnConnection.
- */ -export interface CreateVpnConnectionRequest { /** - *The ID of the customer gateway.
+ *The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.
*/ - CustomerGatewayId: string | undefined; + SnapshotId?: string; /** - *The type of VPN connection (ipsec.1
).
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
+ *
For more information, see Amazon EBS volume types in the + * Amazon Elastic Compute Cloud User Guide.
+ *Default: gp2
+ *
The ID of the virtual private gateway. If you specify a virtual private gateway, you - * cannot specify a transit gateway.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the transit gateway. If you specify a transit gateway, you cannot specify a virtual private - * gateway.
+ *The tags to apply to the volume during creation.
*/ - TransitGatewayId?: string; + TagSpecifications?: TagSpecification[]; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
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.
The options for the VPN connection.
+ *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.
*/ - Options?: VpnConnectionOptionsSpecification; + Throughput?: number; /** - *The tags to apply to the VPN connection.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency + * of the request. For more information, see Ensure + * Idempotency.
*/ - TagSpecifications?: TagSpecification[]; + ClientToken?: string; } -export namespace CreateVpnConnectionRequest { +export namespace CreateVolumeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpnConnectionRequest): any => ({ + export const filterSensitiveLog = (obj: CreateVolumeRequest): any => ({ ...obj, }); } -export enum GatewayAssociationState { - associated = "associated", - associating = "associating", - disassociating = "disassociating", - not_associated = "not-associated", -} +export type VolumeState = "available" | "creating" | "deleted" | "deleting" | "error" | "in-use"; /** - *The internet key exchange (IKE) version permitted for the VPN tunnel.
+ *Describes a volume.
*/ -export interface IKEVersionsListValue { +export interface Volume { /** - *The IKE version.
+ *Information about the volume attachments.
*/ - Value?: string; -} + Attachments?: VolumeAttachment[]; -export namespace IKEVersionsListValue { /** - * @internal + *The Availability Zone for the volume.
*/ - export const filterSensitiveLog = (obj: IKEVersionsListValue): any => ({ - ...obj, - }); -} - -/** - *The Diffie-Hellmann group number for phase 1 IKE negotiations.
- */ -export interface Phase1DHGroupNumbersListValue { - /** - *The Diffie-Hellmann group number.
- */ - Value?: number; -} - -export namespace Phase1DHGroupNumbersListValue { - /** - * @internal - */ - export const filterSensitiveLog = (obj: Phase1DHGroupNumbersListValue): any => ({ - ...obj, - }); -} + AvailabilityZone?: string; -/** - *The encryption algorithm for phase 1 IKE negotiations.
- */ -export interface Phase1EncryptionAlgorithmsListValue { /** - *The value for the encryption algorithm.
+ *The time stamp when volume creation was initiated.
*/ - Value?: string; -} + CreateTime?: Date; -export namespace Phase1EncryptionAlgorithmsListValue { /** - * @internal + *Indicates whether the volume is encrypted.
*/ - export const filterSensitiveLog = (obj: Phase1EncryptionAlgorithmsListValue): any => ({ - ...obj, - }); -} + Encrypted?: boolean; -/** - *The integrity algorithm for phase 1 IKE negotiations.
- */ -export interface Phase1IntegrityAlgorithmsListValue { /** - *The value for the integrity algorithm.
+ *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.
*/ - Value?: string; -} + KmsKeyId?: string; -export namespace Phase1IntegrityAlgorithmsListValue { /** - * @internal + *The Amazon Resource Name (ARN) of the Outpost.
*/ - export const filterSensitiveLog = (obj: Phase1IntegrityAlgorithmsListValue): any => ({ - ...obj, - }); -} + OutpostArn?: string; -/** - *The Diffie-Hellmann group number for phase 2 IKE negotiations.
- */ -export interface Phase2DHGroupNumbersListValue { /** - *The Diffie-Hellmann group number.
+ *The size of the volume, in GiBs.
*/ - Value?: number; -} + Size?: number; -export namespace Phase2DHGroupNumbersListValue { /** - * @internal + *The snapshot from which the volume was created, if applicable.
*/ - export const filterSensitiveLog = (obj: Phase2DHGroupNumbersListValue): any => ({ - ...obj, - }); -} + SnapshotId?: string; -/** - *The encryption algorithm for phase 2 IKE negotiations.
- */ -export interface Phase2EncryptionAlgorithmsListValue { /** - *The encryption algorithm.
+ *The volume state.
*/ - Value?: string; -} + State?: VolumeState | string; -export namespace Phase2EncryptionAlgorithmsListValue { /** - * @internal + *The ID of the volume.
*/ - export const filterSensitiveLog = (obj: Phase2EncryptionAlgorithmsListValue): any => ({ - ...obj, - }); -} + VolumeId?: string; -/** - *The integrity algorithm for phase 2 IKE negotiations.
- */ -export interface Phase2IntegrityAlgorithmsListValue { /** - *The integrity algorithm.
+ *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.
Any tags assigned to the volume.
*/ - export const filterSensitiveLog = (obj: Phase2IntegrityAlgorithmsListValue): any => ({ - ...obj, - }); -} + Tags?: Tag[]; -/** - *The VPN tunnel options.
- */ -export interface TunnelOption { /** - *The external IP address of the VPN tunnel.
+ *The volume type.
*/ - OutsideIpAddress?: string; + VolumeType?: VolumeType | string; /** - *The range of inside IPv4 addresses for the tunnel.
+ *Indicates whether the volume was created using fast snapshot restore.
*/ - TunnelInsideCidr?: string; + FastRestored?: boolean; /** - *The range of inside IPv6 addresses for the tunnel.
+ *Indicates whether Amazon EBS Multi-Attach is enabled.
*/ - TunnelInsideIpv6Cidr?: string; + MultiAttachEnabled?: boolean; /** - *The pre-shared key (PSK) to establish initial authentication between the virtual - * private gateway and the customer gateway.
+ *The throughput that the volume supports, in MiB/s.
*/ - PreSharedKey?: string; + Throughput?: number; +} +export namespace Volume { /** - *The lifetime for phase 1 of the IKE negotiation, in seconds.
+ * @internal */ - Phase1LifetimeSeconds?: number; + export const filterSensitiveLog = (obj: Volume): any => ({ + ...obj, + }); +} +export interface CreateVpcRequest { /** - *The lifetime for phase 2 of the IKE negotiation, in seconds.
+ *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
.
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.
+ *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.
*/ - RekeyMarginTimeSeconds?: number; + AmazonProvidedIpv6CidrBlock?: boolean; /** - *The percentage of the rekey window determined by RekeyMarginTimeSeconds
- * during which the rekey time is randomly selected.
The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.
*/ - RekeyFuzzPercentage?: number; + Ipv6Pool?: string; /** - *The number of packets in an IKE replay window.
+ *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.
*/ - ReplayWindowSize?: number; + Ipv6CidrBlock?: string; /** - *The number of seconds after which a DPD timeout occurs.
+ *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. + * + *
*/ - DpdTimeoutSeconds?: number; + Ipv4IpamPoolId?: string; /** - *The action to take after a DPD timeout occurs.
+ *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.
*/ - DpdTimeoutAction?: string; + Ipv4NetmaskLength?: number; /** - *The permitted encryption algorithms for the VPN tunnel for phase 1 IKE - * negotiations.
+ *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.
*/ - Phase1EncryptionAlgorithms?: Phase1EncryptionAlgorithmsListValue[]; + Ipv6IpamPoolId?: string; /** - *The permitted encryption algorithms for the VPN tunnel for phase 2 IKE - * negotiations.
+ *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.
*/ - Phase2EncryptionAlgorithms?: Phase2EncryptionAlgorithmsListValue[]; + Ipv6NetmaskLength?: number; /** - *The permitted integrity algorithms for the VPN tunnel for phase 1 IKE - * negotiations.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The permitted integrity algorithms for the VPN tunnel for phase 2 IKE - * negotiations.
+ *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
+ *
The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 IKE - * negotiations.
+ *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.
The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE - * negotiations.
+ *The tags to assign to the VPC.
*/ - Phase2DHGroupNumbers?: Phase2DHGroupNumbersListValue[]; + TagSpecifications?: TagSpecification[]; +} +export namespace CreateVpcRequest { /** - *The IKE versions that are permitted for the VPN tunnel.
+ * @internal */ - IkeVersions?: IKEVersionsListValue[]; + export const filterSensitiveLog = (obj: CreateVpcRequest): any => ({ + ...obj, + }); +} +export interface CreateVpcResult { /** - *The action to take when the establishing the VPN tunnels for a VPN connection.
+ *Information about the VPC.
*/ - StartupAction?: string; + Vpc?: Vpc; } -export namespace TunnelOption { +export namespace CreateVpcResult { /** * @internal */ - export const filterSensitiveLog = (obj: TunnelOption): any => ({ + export const filterSensitiveLog = (obj: CreateVpcResult): any => ({ ...obj, }); } +export enum VpcEndpointType { + Gateway = "Gateway", + GatewayLoadBalancer = "GatewayLoadBalancer", + Interface = "Interface", +} + /** - *Describes VPN connection options.
+ *Contains the parameters for CreateVpcEndpoint.
*/ -export interface VpnConnectionOptions { +export interface CreateVpcEndpointRequest { /** - *Indicates whether acceleration is enabled for the VPN connection.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Indicates whether the VPN connection uses static routes only. Static routes must be - * used for devices that don't support BGP.
+ *The type of endpoint.
+ *Default: Gateway
*/ - StaticRoutesOnly?: boolean; + VpcEndpointType?: VpcEndpointType | string; /** - *The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
+ *The ID of the VPC in which the endpoint will be used.
*/ - LocalIpv4NetworkCidr?: string; + VpcId: string | undefined; /** - *The IPv4 CIDR on the Amazon Web Services side of the VPN connection.
+ *The service name. To get a list of available services, use the DescribeVpcEndpointServices request, or get the name from the service + * provider.
*/ - RemoteIpv4NetworkCidr?: string; + ServiceName: string | undefined; /** - *The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
+ *(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.
*/ - LocalIpv6NetworkCidr?: string; + PolicyDocument?: string; /** - *The IPv6 CIDR on the Amazon Web Services side of the VPN connection.
+ *(Gateway endpoint) One or more route table IDs.
*/ - RemoteIpv6NetworkCidr?: string; + RouteTableIds?: string[]; /** - *Indicates whether the VPN tunnels process IPv4 or IPv6 traffic.
+ *(Interface and Gateway Load Balancer endpoints) The ID of one or more subnets in which to create an endpoint + * network interface. For a Gateway Load Balancer endpoint, you can specify one subnet only.
*/ - TunnelInsideIpVersion?: TunnelInsideIpVersion | string; + SubnetIds?: string[]; /** - *Indicates the VPN tunnel options.
+ *(Interface endpoint) The ID of one or more security groups to associate with the + * endpoint network interface.
*/ - TunnelOptions?: TunnelOption[]; + SecurityGroupIds?: string[]; + + /** + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. For more information, see How to ensure + * idempotency.
+ */ + ClientToken?: string; + + /** + *(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
+ *
The tags to associate with the endpoint.
+ */ + TagSpecifications?: TagSpecification[]; } -export namespace VpnConnectionOptions { +export namespace CreateVpcEndpointRequest { /** * @internal */ - export const filterSensitiveLog = (obj: VpnConnectionOptions): any => ({ + export const filterSensitiveLog = (obj: CreateVpcEndpointRequest): any => ({ ...obj, }); } -export type VpnStaticRouteSource = "Static"; - -export type VpnState = "available" | "deleted" | "deleting" | "pending"; - /** - *Describes a static route for a VPN connection.
+ *Describes a DNS entry.
*/ -export interface VpnStaticRoute { +export interface DnsEntry { /** - *The CIDR block associated with the local subnet of the customer data center.
- */ - DestinationCidrBlock?: string; - - /** - *Indicates how the routes were provided.
+ *The DNS name.
*/ - Source?: VpnStaticRouteSource | string; + DnsName?: string; /** - *The current state of the static route.
+ *The ID of the private hosted zone.
*/ - State?: VpnState | string; + HostedZoneId?: string; } -export namespace VpnStaticRoute { +export namespace DnsEntry { /** * @internal */ - export const filterSensitiveLog = (obj: VpnStaticRoute): any => ({ + export const filterSensitiveLog = (obj: DnsEntry): any => ({ ...obj, }); } -export type TelemetryStatus = "DOWN" | "UP"; - /** - *Describes telemetry for a VPN tunnel.
+ *Describes a security group.
*/ -export interface VgwTelemetry { +export interface SecurityGroupIdentifier { /** - *The number of accepted routes.
+ *The ID of the security group.
*/ - AcceptedRouteCount?: number; + GroupId?: string; /** - *The date and time of the last change in status.
+ *The name of the security group.
*/ - LastStatusChange?: Date; + GroupName?: string; +} +export namespace SecurityGroupIdentifier { /** - *The Internet-routable IP address of the virtual private gateway's outside - * interface.
+ * @internal */ - OutsideIpAddress?: string; + export const filterSensitiveLog = (obj: SecurityGroupIdentifier): any => ({ + ...obj, + }); +} +/** + *The last error that occurred for a VPC endpoint.
+ */ +export interface LastError { /** - *The status of the VPN tunnel.
+ *The error message for the VPC endpoint error.
*/ - Status?: TelemetryStatus | string; + Message?: string; /** - *If an error occurs, a description of the error.
+ *The error code for the VPC endpoint error.
*/ - StatusMessage?: string; + Code?: string; +} +export namespace LastError { /** - *The Amazon Resource Name (ARN) of the VPN tunnel endpoint certificate.
+ * @internal */ - CertificateArn?: string; -} - -export namespace VgwTelemetry { - /** - * @internal - */ - export const filterSensitiveLog = (obj: VgwTelemetry): any => ({ + export const filterSensitiveLog = (obj: LastError): any => ({ ...obj, }); } +export enum State { + Available = "Available", + Deleted = "Deleted", + Deleting = "Deleting", + Expired = "Expired", + Failed = "Failed", + Pending = "Pending", + PendingAcceptance = "PendingAcceptance", + Rejected = "Rejected", +} + /** - *Describes a VPN connection.
+ *Describes a VPC endpoint.
*/ -export interface VpnConnection { +export interface VpcEndpoint { /** - *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.
The ID of the VPC endpoint.
*/ - CustomerGatewayConfiguration?: string; + VpcEndpointId?: string; /** - *The ID of the customer gateway at your end of the VPN connection.
+ *The type of endpoint.
*/ - CustomerGatewayId?: string; + VpcEndpointType?: VpcEndpointType | string; /** - *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.
The ID of the VPC to which the endpoint is associated.
*/ - Category?: string; + VpcId?: string; /** - *The current state of the VPN connection.
+ *The name of the service to which the endpoint is associated.
*/ - State?: VpnState | string; + ServiceName?: string; /** - *The type of VPN connection.
+ *The state of the VPC endpoint.
*/ - Type?: GatewayType | string; + State?: State | string; /** - *The ID of the VPN connection.
+ *The policy document associated with the endpoint, if applicable.
*/ - VpnConnectionId?: string; + PolicyDocument?: string; /** - *The ID of the virtual private gateway at the Amazon Web Services side of the VPN - * connection.
+ *(Gateway endpoint) One or more route tables associated with the endpoint.
*/ - VpnGatewayId?: string; + RouteTableIds?: string[]; /** - *The ID of the transit gateway associated with the VPN connection.
+ *(Interface endpoint) One or more subnets in which the endpoint is located.
*/ - TransitGatewayId?: string; + SubnetIds?: string[]; /** - *The ARN of the core network.
+ *(Interface endpoint) Information about the security groups that are associated with + * the network interface.
*/ - CoreNetworkArn?: string; + Groups?: SecurityGroupIdentifier[]; /** - *The ARN of the core network attachment.
+ *(Interface endpoint) Indicates whether the VPC is associated with a private hosted zone.
*/ - CoreNetworkAttachmentArn?: string; + PrivateDnsEnabled?: boolean; /** - *The current state of the gateway association.
+ *Indicates whether the VPC endpoint is being managed by its service.
*/ - GatewayAssociationState?: GatewayAssociationState | string; + RequesterManaged?: boolean; /** - *The VPN connection options.
+ *(Interface endpoint) One or more network interfaces for the endpoint.
*/ - Options?: VpnConnectionOptions; + NetworkInterfaceIds?: string[]; /** - *The static routes associated with the VPN connection.
+ *(Interface endpoint) The DNS entries for the endpoint.
*/ - Routes?: VpnStaticRoute[]; + DnsEntries?: DnsEntry[]; /** - *Any tags assigned to the VPN connection.
+ *The date and time that the VPC endpoint was created.
*/ - Tags?: Tag[]; + CreationTimestamp?: Date; /** - *Information about the VPN tunnel.
+ *Any tags assigned to the VPC endpoint.
*/ - VgwTelemetry?: VgwTelemetry[]; -} + Tags?: Tag[]; -export namespace VpnConnection { /** - * @internal + *The ID of the Amazon Web Services account that owns the VPC endpoint.
*/ - export const filterSensitiveLog = (obj: VpnConnection): any => ({ - ...obj, - }); -} + OwnerId?: string; -/** - *Contains the output of CreateVpnConnection.
- */ -export interface CreateVpnConnectionResult { /** - *Information about the VPN connection.
+ *The last error that occurred for VPC endpoint.
*/ - VpnConnection?: VpnConnection; + LastError?: LastError; } -export namespace CreateVpnConnectionResult { +export namespace VpcEndpoint { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpnConnectionResult): any => ({ + export const filterSensitiveLog = (obj: VpcEndpoint): any => ({ ...obj, }); } /** - *Contains the parameters for CreateVpnConnectionRoute.
+ *Contains the output of CreateVpcEndpoint.
*/ -export interface CreateVpnConnectionRouteRequest { +export interface CreateVpcEndpointResult { /** - *The CIDR block associated with the local subnet of the customer network.
+ *Information about the endpoint.
*/ - DestinationCidrBlock: string | undefined; + VpcEndpoint?: VpcEndpoint; /** - *The ID of the VPN connection.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request.
*/ - VpnConnectionId: string | undefined; + ClientToken?: string; } -export namespace CreateVpnConnectionRouteRequest { +export namespace CreateVpcEndpointResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpnConnectionRouteRequest): any => ({ + export const filterSensitiveLog = (obj: CreateVpcEndpointResult): any => ({ ...obj, }); } -/** - *Contains the parameters for CreateVpnGateway.
- */ -export interface CreateVpnGatewayRequest { +export interface CreateVpcEndpointConnectionNotificationRequest { /** - *The Availability Zone for the virtual private gateway.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The type of VPN connection this virtual private gateway supports.
+ *The ID of the endpoint service.
*/ - Type: GatewayType | string | undefined; + ServiceId?: string; /** - *The tags to apply to the virtual private gateway.
+ *The ID of the endpoint.
*/ - TagSpecifications?: TagSpecification[]; + VpcEndpointId?: string; /** - *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
+ *The ARN of the SNS topic for the notifications.
*/ - AmazonSideAsn?: number; + ConnectionNotificationArn: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
One or more endpoint events for which to receive notifications. Valid values are
+ * Accept
, Connect
, Delete
, and
+ * Reject
.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. For more information, see How to ensure + * idempotency.
+ */ + ClientToken?: string; } -export namespace CreateVpnGatewayRequest { +export namespace CreateVpcEndpointConnectionNotificationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpnGatewayRequest): any => ({ + export const filterSensitiveLog = (obj: CreateVpcEndpointConnectionNotificationRequest): any => ({ ...obj, }); } +export enum ConnectionNotificationState { + Disabled = "Disabled", + Enabled = "Enabled", +} + +export enum ConnectionNotificationType { + Topic = "Topic", +} + /** - *Describes a virtual private gateway.
+ *Describes a connection notification for a VPC endpoint or VPC endpoint + * service.
*/ -export interface VpnGateway { +export interface ConnectionNotification { /** - *The Availability Zone where the virtual private gateway was created, if applicable. - * This field may be empty or not returned.
+ *The ID of the notification.
*/ - AvailabilityZone?: string; + ConnectionNotificationId?: string; /** - *The current state of the virtual private gateway.
+ *The ID of the endpoint service.
*/ - State?: VpnState | string; + ServiceId?: string; /** - *The type of VPN connection the virtual private gateway supports.
+ *The ID of the VPC endpoint.
*/ - Type?: GatewayType | string; + VpcEndpointId?: string; /** - *Any VPCs attached to the virtual private gateway.
+ *The type of notification.
*/ - VpcAttachments?: VpcAttachment[]; + ConnectionNotificationType?: ConnectionNotificationType | string; /** - *The ID of the virtual private gateway.
+ *The ARN of the SNS topic for the notification.
*/ - VpnGatewayId?: string; + ConnectionNotificationArn?: string; /** - *The private Autonomous System Number (ASN) for the Amazon side of a BGP - * session.
+ *The events for the notification. Valid values are Accept
,
+ * Connect
, Delete
, and Reject
.
Any tags assigned to the virtual private gateway.
+ *The state of the notification.
*/ - Tags?: Tag[]; + ConnectionNotificationState?: ConnectionNotificationState | string; } -export namespace VpnGateway { +export namespace ConnectionNotification { /** * @internal */ - export const filterSensitiveLog = (obj: VpnGateway): any => ({ + export const filterSensitiveLog = (obj: ConnectionNotification): any => ({ ...obj, }); } -/** - *Contains the output of CreateVpnGateway.
- */ -export interface CreateVpnGatewayResult { +export interface CreateVpcEndpointConnectionNotificationResult { /** - *Information about the virtual private gateway.
+ *Information about the notification.
*/ - VpnGateway?: VpnGateway; + ConnectionNotification?: ConnectionNotification; + + /** + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request.
+ */ + ClientToken?: string; } -export namespace CreateVpnGatewayResult { +export namespace CreateVpcEndpointConnectionNotificationResult { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVpnGatewayResult): any => ({ + export const filterSensitiveLog = (obj: CreateVpcEndpointConnectionNotificationResult): any => ({ ...obj, }); } -export interface DeleteCarrierGatewayRequest { - /** - *The ID of the carrier gateway.
- */ - CarrierGatewayId: string | undefined; - +export interface CreateVpcEndpointServiceConfigurationRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
Indicates whether requests from service consumers to create an endpoint to your service must + * be accepted. To accept a request, use AcceptVpcEndpointConnections.
*/ - export const filterSensitiveLog = (obj: DeleteCarrierGatewayRequest): any => ({ - ...obj, - }); -} + AcceptanceRequired?: boolean; -export interface DeleteCarrierGatewayResult { /** - *Information about the carrier gateway.
+ *(Interface endpoint configuration) The private DNS name to assign to the VPC endpoint service.
*/ - CarrierGateway?: CarrierGateway; -} + PrivateDnsName?: string; -export namespace DeleteCarrierGatewayResult { /** - * @internal + *The Amazon Resource Names (ARNs) of one or more Network Load Balancers for your + * service.
*/ - export const filterSensitiveLog = (obj: DeleteCarrierGatewayResult): any => ({ - ...obj, - }); -} + NetworkLoadBalancerArns?: string[]; -export interface DeleteClientVpnEndpointRequest { /** - *The ID of the Client VPN to be deleted.
+ *The Amazon Resource Names (ARNs) of one or more Gateway Load Balancers.
*/ - ClientVpnEndpointId: string | undefined; + GatewayLoadBalancerArns?: string[]; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. + * For more information, see How to ensure + * idempotency.
*/ - DryRun?: boolean; + ClientToken?: string; + + /** + *The tags to associate with the service.
+ */ + TagSpecifications?: TagSpecification[]; } -export namespace DeleteClientVpnEndpointRequest { +export namespace CreateVpcEndpointServiceConfigurationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteClientVpnEndpointRequest): any => ({ + export const filterSensitiveLog = (obj: CreateVpcEndpointServiceConfigurationRequest): any => ({ ...obj, }); } -export interface DeleteClientVpnEndpointResult { - /** - *The current state of the Client VPN endpoint.
- */ - Status?: ClientVpnEndpointStatus; -} - -export namespace DeleteClientVpnEndpointResult { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DeleteClientVpnEndpointResult): any => ({ - ...obj, - }); +export enum DnsNameState { + Failed = "failed", + PendingVerification = "pendingVerification", + Verified = "verified", } -export interface DeleteClientVpnRouteRequest { +/** + *Information about the private DNS name for the service endpoint. For more information + * about these parameters, see VPC Endpoint Service + * Private DNS Name Verification in the + * Amazon Virtual Private Cloud User Guide.
+ */ +export interface PrivateDnsNameConfiguration { /** - *The ID of the Client VPN endpoint from which the route is to be deleted.
+ *The verification state of the VPC endpoint service.
+ *>Consumers
+ * of the endpoint service can use the private name only when the state is
+ * verified
.
The ID of the target subnet used by the route.
+ *The endpoint service verification type, for example TXT.
*/ - TargetVpcSubnetId?: string; + Type?: string; /** - *The IPv4 address range, in CIDR notation, of the route to be deleted.
+ *The value the service provider adds to the private DNS name domain record before verification.
*/ - DestinationCidrBlock: string | undefined; + Value?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The name of the record subdomain the service provider needs to create. The service provider adds the value
text to the name
.
Describes the type of service for a VPC endpoint.
+ */ +export interface ServiceTypeDetail { /** - *The current state of the route.
+ *The type of service.
*/ - Status?: ClientVpnRouteStatus; + ServiceType?: ServiceType | string; } -export namespace DeleteClientVpnRouteResult { +export namespace ServiceTypeDetail { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteClientVpnRouteResult): any => ({ + export const filterSensitiveLog = (obj: ServiceTypeDetail): any => ({ ...obj, }); } /** - *Contains the parameters for DeleteCustomerGateway.
+ *Describes a service configuration for a VPC endpoint service.
*/ -export interface DeleteCustomerGatewayRequest { +export interface ServiceConfiguration { /** - *The ID of the customer gateway.
+ *The type of service.
*/ - CustomerGatewayId: string | undefined; + ServiceType?: ServiceTypeDetail[]; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The ID of the service.
*/ - DryRun?: boolean; -} + ServiceId?: string; -export namespace DeleteCustomerGatewayRequest { /** - * @internal + *The name of the service.
*/ - export const filterSensitiveLog = (obj: DeleteCustomerGatewayRequest): any => ({ - ...obj, - }); -} + ServiceName?: string; -export interface DeleteDhcpOptionsRequest { /** - *The ID of the DHCP options set.
+ *The service state.
*/ - DhcpOptionsId: string | undefined; + ServiceState?: ServiceState | string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Availability Zones in which the service is available.
*/ - DryRun?: boolean; -} + AvailabilityZones?: string[]; -export namespace DeleteDhcpOptionsRequest { /** - * @internal + *Indicates whether requests from other Amazon Web Services accounts to create an endpoint to the service must first be accepted.
*/ - export const filterSensitiveLog = (obj: DeleteDhcpOptionsRequest): any => ({ - ...obj, - }); -} + AcceptanceRequired?: boolean; -export interface DeleteEgressOnlyInternetGatewayRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Indicates whether the service manages its VPC endpoints. Management of the service VPC + * endpoints using the VPC endpoint API is restricted.
*/ - DryRun?: boolean; + ManagesVpcEndpoints?: boolean; /** - *The ID of the egress-only internet gateway.
+ *The Amazon Resource Names (ARNs) of the Network Load Balancers for the service.
*/ - EgressOnlyInternetGatewayId: string | undefined; + NetworkLoadBalancerArns?: string[]; + + /** + *The Amazon Resource Names (ARNs) of the Gateway Load Balancers for the service.
+ */ + GatewayLoadBalancerArns?: string[]; + + /** + *The DNS names for the service.
+ */ + BaseEndpointDnsNames?: string[]; + + /** + *The private DNS name for the service.
+ */ + PrivateDnsName?: string; + + /** + *Information about the endpoint service private DNS name configuration.
+ */ + PrivateDnsNameConfiguration?: PrivateDnsNameConfiguration; + + /** + *Any tags assigned to the service.
+ */ + Tags?: Tag[]; } -export namespace DeleteEgressOnlyInternetGatewayRequest { +export namespace ServiceConfiguration { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteEgressOnlyInternetGatewayRequest): any => ({ + export const filterSensitiveLog = (obj: ServiceConfiguration): any => ({ ...obj, }); } -export interface DeleteEgressOnlyInternetGatewayResult { +export interface CreateVpcEndpointServiceConfigurationResult { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
Information about the service configuration.
*/ - ReturnCode?: boolean; + ServiceConfiguration?: ServiceConfiguration; + + /** + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request.
+ */ + ClientToken?: string; } -export namespace DeleteEgressOnlyInternetGatewayResult { +export namespace CreateVpcEndpointServiceConfigurationResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteEgressOnlyInternetGatewayResult): any => ({ + export const filterSensitiveLog = (obj: CreateVpcEndpointServiceConfigurationResult): any => ({ ...obj, }); } -export interface DeleteFleetsRequest { +export interface CreateVpcPeeringConnectionRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -1840,1198 +1885,1190 @@ export interface DeleteFleetsRequest {
DryRun?: boolean;
/**
- *
The IDs of the EC2 Fleets.
+ *The Amazon Web Services account ID of the owner of the accepter VPC.
+ *Default: Your Amazon Web Services account ID
*/ - FleetIds: string[] | undefined; + PeerOwnerId?: string; /** - *Indicates whether to terminate the 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
- * NoTerminateInstances
. 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.
The ID of the VPC with which you are creating the VPC peering connection. You must + * specify this parameter in the request.
*/ - TerminateInstances: boolean | undefined; -} + PeerVpcId?: string; -export namespace DeleteFleetsRequest { /** - * @internal + *The ID of the requester VPC. You must specify this parameter in the + * request.
*/ - export const filterSensitiveLog = (obj: DeleteFleetsRequest): any => ({ - ...obj, - }); -} + VpcId?: string; -export enum FleetStateCode { - ACTIVE = "active", - DELETED = "deleted", - DELETED_RUNNING = "deleted_running", - DELETED_TERMINATING_INSTANCES = "deleted_terminating", - FAILED = "failed", - MODIFYING = "modifying", - SUBMITTED = "submitted", -} + /** + *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.
+ */ + PeerRegion?: string; -/** - *Describes an EC2 Fleet that was successfully deleted.
- */ -export interface DeleteFleetSuccessItem { /** - *The current state of the EC2 Fleet.
+ *The tags to assign to the peering connection.
*/ - CurrentFleetState?: FleetStateCode | string; + TagSpecifications?: TagSpecification[]; +} +export namespace CreateVpcPeeringConnectionRequest { /** - *The previous state of the EC2 Fleet.
+ * @internal */ - PreviousFleetState?: FleetStateCode | string; + export const filterSensitiveLog = (obj: CreateVpcPeeringConnectionRequest): any => ({ + ...obj, + }); +} +export interface CreateVpcPeeringConnectionResult { /** - *The ID of the EC2 Fleet.
+ *Information about the VPC peering connection.
*/ - FleetId?: string; + VpcPeeringConnection?: VpcPeeringConnection; } -export namespace DeleteFleetSuccessItem { +export namespace CreateVpcPeeringConnectionResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteFleetSuccessItem): any => ({ + export const filterSensitiveLog = (obj: CreateVpcPeeringConnectionResult): any => ({ ...obj, }); } -export enum DeleteFleetErrorCode { - FLEET_ID_DOES_NOT_EXIST = "fleetIdDoesNotExist", - FLEET_ID_MALFORMED = "fleetIdMalformed", - FLEET_NOT_IN_DELETABLE_STATE = "fleetNotInDeletableState", - UNEXPECTED_ERROR = "unexpectedError", -} +export type TunnelInsideIpVersion = "ipv4" | "ipv6"; /** - *Describes an EC2 Fleet error.
+ *The IKE version that is permitted for the VPN tunnel.
*/ -export interface DeleteFleetError { +export interface IKEVersionsRequestListValue { /** - *The error code.
+ *The IKE version.
*/ - Code?: DeleteFleetErrorCode | string; - - /** - *The description for the error code.
- */ - Message?: string; + Value?: string; } -export namespace DeleteFleetError { +export namespace IKEVersionsRequestListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteFleetError): any => ({ + export const filterSensitiveLog = (obj: IKEVersionsRequestListValue): any => ({ ...obj, }); } /** - *Describes an EC2 Fleet that was not successfully deleted.
+ *Specifies a Diffie-Hellman group number for the VPN tunnel for phase 1 IKE + * negotiations.
*/ -export interface DeleteFleetErrorItem { - /** - *The error.
- */ - Error?: DeleteFleetError; - +export interface Phase1DHGroupNumbersRequestListValue { /** - *The ID of the EC2 Fleet.
+ *The Diffie-Hellmann group number.
*/ - FleetId?: string; + Value?: number; } -export namespace DeleteFleetErrorItem { +export namespace Phase1DHGroupNumbersRequestListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteFleetErrorItem): any => ({ + export const filterSensitiveLog = (obj: Phase1DHGroupNumbersRequestListValue): any => ({ ...obj, }); } -export interface DeleteFleetsResult { - /** - *Information about the EC2 Fleets that are successfully deleted.
- */ - SuccessfulFleetDeletions?: DeleteFleetSuccessItem[]; - +/** + *Specifies the encryption algorithm for the VPN tunnel for phase 1 IKE + * negotiations.
+ */ +export interface Phase1EncryptionAlgorithmsRequestListValue { /** - *Information about the EC2 Fleets that are not successfully deleted.
+ *The value for the encryption algorithm.
*/ - UnsuccessfulFleetDeletions?: DeleteFleetErrorItem[]; + Value?: string; } -export namespace DeleteFleetsResult { +export namespace Phase1EncryptionAlgorithmsRequestListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteFleetsResult): any => ({ + export const filterSensitiveLog = (obj: Phase1EncryptionAlgorithmsRequestListValue): any => ({ ...obj, }); } -export interface DeleteFlowLogsRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Specifies the integrity algorithm for the VPN tunnel for phase 1 IKE + * negotiations.
+ */ +export interface Phase1IntegrityAlgorithmsRequestListValue { /** - *One or more flow log IDs.
- *Constraint: Maximum of 1000 flow log IDs.
+ *The value for the integrity algorithm.
*/ - FlowLogIds: string[] | undefined; + Value?: string; } -export namespace DeleteFlowLogsRequest { +export namespace Phase1IntegrityAlgorithmsRequestListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteFlowLogsRequest): any => ({ + export const filterSensitiveLog = (obj: Phase1IntegrityAlgorithmsRequestListValue): any => ({ ...obj, }); } -export interface DeleteFlowLogsResult { +/** + *Specifies a Diffie-Hellman group number for the VPN tunnel for phase 2 IKE + * negotiations.
+ */ +export interface Phase2DHGroupNumbersRequestListValue { /** - *Information about the flow logs that could not be deleted successfully.
+ *The Diffie-Hellmann group number.
*/ - Unsuccessful?: UnsuccessfulItem[]; + Value?: number; } -export namespace DeleteFlowLogsResult { +export namespace Phase2DHGroupNumbersRequestListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteFlowLogsResult): any => ({ + export const filterSensitiveLog = (obj: Phase2DHGroupNumbersRequestListValue): any => ({ ...obj, }); } -export interface DeleteFpgaImageRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Specifies the encryption algorithm for the VPN tunnel for phase 2 IKE + * negotiations.
+ */ +export interface Phase2EncryptionAlgorithmsRequestListValue { /** - *The ID of the AFI.
+ *The encryption algorithm.
*/ - FpgaImageId: string | undefined; + Value?: string; } -export namespace DeleteFpgaImageRequest { +export namespace Phase2EncryptionAlgorithmsRequestListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteFpgaImageRequest): any => ({ + export const filterSensitiveLog = (obj: Phase2EncryptionAlgorithmsRequestListValue): any => ({ ...obj, }); } -export interface DeleteFpgaImageResult { +/** + *Specifies the integrity algorithm for the VPN tunnel for phase 2 IKE + * negotiations.
+ */ +export interface Phase2IntegrityAlgorithmsRequestListValue { /** - *Is true
if the request succeeds, and an error otherwise.
The integrity algorithm.
*/ - Return?: boolean; + Value?: string; } -export namespace DeleteFpgaImageResult { +export namespace Phase2IntegrityAlgorithmsRequestListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteFpgaImageResult): any => ({ + export const filterSensitiveLog = (obj: Phase2IntegrityAlgorithmsRequestListValue): any => ({ ...obj, }); } -export interface DeleteInstanceEventWindowRequest { +/** + *The tunnel options for a single VPN tunnel.
+ */ +export interface VpnTunnelOptionsSpecification { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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
+ *
Specify true
to force delete the event window. Use the force delete parameter
- * if the event window is currently associated with targets.
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.
The ID of the event window.
+ *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).
*/ - InstanceEventWindowId: string | undefined; -} + PreSharedKey?: string; -export namespace DeleteInstanceEventWindowRequest { /** - * @internal + *The lifetime for phase 1 of the IKE negotiation, in seconds.
+ *Constraints: A value between 900 and 28,800.
+ *Default: 28800
+ *
The state of the event window.
- */ -export interface InstanceEventWindowStateChange { /** - *The ID of the event window.
+ *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
+ *
The current state of the event window.
+ *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
+ *
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
+ *
The state of the event window.
+ *The number of packets in an IKE replay window.
+ *Constraints: A value between 64 and 2048.
+ *Default: 1024
+ *
The number of seconds after which a DPD timeout occurs.
+ *Constraints: A value between 0 and 30.
+ *Default: 30
+ *
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the internet gateway.
+ *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
+ *
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
+ *
The name of the key pair.
+ *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
+ *
The ID of the key pair.
+ *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
+ *
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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
+ *
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
+ *
Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
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
+ *
The ID of the launch template. You must specify either the launch template ID or - * launch template name in the request.
+ *The IKE versions that are permitted for the VPN tunnel.
+ *Valid values: ikev1
| ikev2
+ *
The name of the launch template. You must specify either the launch template ID or - * launch template name in the request.
+ *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
+ *
Describes VPN connection options.
+ */ +export interface VpnConnectionOptionsSpecification { /** - *Information about the launch template.
+ *Indicate whether to enable acceleration for the VPN connection.
+ *Default: false
+ *
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
+ *
Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
Indicate whether the VPN tunnels process IPv4 or IPv6 traffic.
+ *Default: ipv4
+ *
The ID of the launch template. You must specify either the launch template ID or - * launch template name in the request.
+ *The tunnel options for the VPN connection.
*/ - LaunchTemplateId?: string; + TunnelOptions?: VpnTunnelOptionsSpecification[]; /** - *The name of the launch template. You must specify either the launch template ID or - * launch template name in the request.
+ *The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
+ *Default: 0.0.0.0/0
+ *
The version numbers of one or more launch template versions to delete.
+ *The IPv4 CIDR on the Amazon Web Services side of the VPN connection.
+ *Default: 0.0.0.0/0
+ *
The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
+ *Default: ::/0
+ *
The IPv6 CIDR on the Amazon Web Services side of the VPN connection.
+ *Default: ::/0
+ *
Describes a launch template version that was successfully deleted.
+ *Contains the parameters for CreateVpnConnection.
*/ -export interface DeleteLaunchTemplateVersionsResponseSuccessItem { +export interface CreateVpnConnectionRequest { /** - *The ID of the launch template.
+ *The ID of the customer gateway.
*/ - LaunchTemplateId?: string; + CustomerGatewayId: string | undefined; /** - *The name of the launch template.
+ *The type of VPN connection (ipsec.1
).
The version number of the launch template.
+ *The ID of the virtual private gateway. If you specify a virtual private gateway, you + * cannot specify a transit gateway.
*/ - VersionNumber?: number; + VpnGatewayId?: string; + + /** + *The ID of the transit gateway. If you specify a transit gateway, you cannot specify a virtual private + * gateway.
+ */ + TransitGatewayId?: string; + + /** + *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The options for the VPN connection.
+ */ + Options?: VpnConnectionOptionsSpecification; + + /** + *The tags to apply to the VPN connection.
+ */ + TagSpecifications?: TagSpecification[]; } -export namespace DeleteLaunchTemplateVersionsResponseSuccessItem { +export namespace CreateVpnConnectionRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteLaunchTemplateVersionsResponseSuccessItem): any => ({ + export const filterSensitiveLog = (obj: CreateVpnConnectionRequest): any => ({ ...obj, }); } -export enum LaunchTemplateErrorCode { - LAUNCH_TEMPLATE_ID_DOES_NOT_EXIST = "launchTemplateIdDoesNotExist", - LAUNCH_TEMPLATE_ID_MALFORMED = "launchTemplateIdMalformed", - LAUNCH_TEMPLATE_NAME_DOES_NOT_EXIST = "launchTemplateNameDoesNotExist", - LAUNCH_TEMPLATE_NAME_MALFORMED = "launchTemplateNameMalformed", - LAUNCH_TEMPLATE_VERSION_DOES_NOT_EXIST = "launchTemplateVersionDoesNotExist", - UNEXPECTED_ERROR = "unexpectedError", +export enum GatewayAssociationState { + associated = "associated", + associating = "associating", + disassociating = "disassociating", + not_associated = "not-associated", } /** - *Describes the error that's returned when you cannot delete a launch template - * version.
+ *The internet key exchange (IKE) version permitted for the VPN tunnel.
*/ -export interface ResponseError { - /** - *The error code.
- */ - Code?: LaunchTemplateErrorCode | string; - +export interface IKEVersionsListValue { /** - *The error message, if applicable.
+ *The IKE version.
*/ - Message?: string; + Value?: string; } -export namespace ResponseError { +export namespace IKEVersionsListValue { /** * @internal */ - export const filterSensitiveLog = (obj: ResponseError): any => ({ + export const filterSensitiveLog = (obj: IKEVersionsListValue): any => ({ ...obj, }); } /** - *Describes a launch template version that could not be deleted.
+ *The Diffie-Hellmann group number for phase 1 IKE negotiations.
*/ -export interface DeleteLaunchTemplateVersionsResponseErrorItem { +export interface Phase1DHGroupNumbersListValue { /** - *The ID of the launch template.
+ *The Diffie-Hellmann group number.
*/ - LaunchTemplateId?: string; - - /** - *The name of the launch template.
- */ - LaunchTemplateName?: string; + Value?: number; +} +export namespace Phase1DHGroupNumbersListValue { /** - *The version number of the launch template.
+ * @internal */ - VersionNumber?: number; + export const filterSensitiveLog = (obj: Phase1DHGroupNumbersListValue): any => ({ + ...obj, + }); +} +/** + *The encryption algorithm for phase 1 IKE negotiations.
+ */ +export interface Phase1EncryptionAlgorithmsListValue { /** - *Information about the error.
+ *The value for the encryption algorithm.
*/ - ResponseError?: ResponseError; + Value?: string; } -export namespace DeleteLaunchTemplateVersionsResponseErrorItem { +export namespace Phase1EncryptionAlgorithmsListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteLaunchTemplateVersionsResponseErrorItem): any => ({ + export const filterSensitiveLog = (obj: Phase1EncryptionAlgorithmsListValue): any => ({ ...obj, }); } -export interface DeleteLaunchTemplateVersionsResult { - /** - *Information about the launch template versions that were successfully - * deleted.
- */ - SuccessfullyDeletedLaunchTemplateVersions?: DeleteLaunchTemplateVersionsResponseSuccessItem[]; - +/** + *The integrity algorithm for phase 1 IKE negotiations.
+ */ +export interface Phase1IntegrityAlgorithmsListValue { /** - *Information about the launch template versions that could not be deleted.
+ *The value for the integrity algorithm.
*/ - UnsuccessfullyDeletedLaunchTemplateVersions?: DeleteLaunchTemplateVersionsResponseErrorItem[]; + Value?: string; } -export namespace DeleteLaunchTemplateVersionsResult { +export namespace Phase1IntegrityAlgorithmsListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteLaunchTemplateVersionsResult): any => ({ + export const filterSensitiveLog = (obj: Phase1IntegrityAlgorithmsListValue): any => ({ ...obj, }); } -export interface DeleteLocalGatewayRouteRequest { - /** - *The CIDR range for the route. This must match the CIDR for the route exactly.
- */ - DestinationCidrBlock: string | undefined; - - /** - *The ID of the local gateway route table.
- */ - LocalGatewayRouteTableId: string | undefined; - +/** + *The Diffie-Hellmann group number for phase 2 IKE negotiations.
+ */ +export interface Phase2DHGroupNumbersListValue { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Diffie-Hellmann group number.
*/ - DryRun?: boolean; + Value?: number; } -export namespace DeleteLocalGatewayRouteRequest { +export namespace Phase2DHGroupNumbersListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteLocalGatewayRouteRequest): any => ({ + export const filterSensitiveLog = (obj: Phase2DHGroupNumbersListValue): any => ({ ...obj, }); } -export interface DeleteLocalGatewayRouteResult { +/** + *The encryption algorithm for phase 2 IKE negotiations.
+ */ +export interface Phase2EncryptionAlgorithmsListValue { /** - *Information about the route.
+ *The encryption algorithm.
*/ - Route?: LocalGatewayRoute; + Value?: string; } -export namespace DeleteLocalGatewayRouteResult { +export namespace Phase2EncryptionAlgorithmsListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteLocalGatewayRouteResult): any => ({ + export const filterSensitiveLog = (obj: Phase2EncryptionAlgorithmsListValue): any => ({ ...obj, }); } -export interface DeleteLocalGatewayRouteTableVpcAssociationRequest { - /** - *The ID of the association.
- */ - LocalGatewayRouteTableVpcAssociationId: string | undefined; - +/** + *The integrity algorithm for phase 2 IKE negotiations.
+ */ +export interface Phase2IntegrityAlgorithmsListValue { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The integrity algorithm.
*/ - DryRun?: boolean; + Value?: string; } -export namespace DeleteLocalGatewayRouteTableVpcAssociationRequest { +export namespace Phase2IntegrityAlgorithmsListValue { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteLocalGatewayRouteTableVpcAssociationRequest): any => ({ + export const filterSensitiveLog = (obj: Phase2IntegrityAlgorithmsListValue): any => ({ ...obj, }); } -export interface DeleteLocalGatewayRouteTableVpcAssociationResult { +/** + *The VPN tunnel options.
+ */ +export interface TunnelOption { /** - *Information about the association.
+ *The external IP address of the VPN tunnel.
*/ - LocalGatewayRouteTableVpcAssociation?: LocalGatewayRouteTableVpcAssociation; -} + OutsideIpAddress?: string; -export namespace DeleteLocalGatewayRouteTableVpcAssociationResult { /** - * @internal + *The range of inside IPv4 addresses for the tunnel.
*/ - export const filterSensitiveLog = (obj: DeleteLocalGatewayRouteTableVpcAssociationResult): any => ({ - ...obj, - }); -} + TunnelInsideCidr?: string; -export interface DeleteManagedPrefixListRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The range of inside IPv6 addresses for the tunnel.
*/ - DryRun?: boolean; + TunnelInsideIpv6Cidr?: string; /** - *The ID of the prefix list.
+ *The pre-shared key (PSK) to establish initial authentication between the virtual + * private gateway and the customer gateway.
*/ - PrefixListId: string | undefined; -} + PreSharedKey?: string; -export namespace DeleteManagedPrefixListRequest { /** - * @internal + *The lifetime for phase 1 of the IKE negotiation, in seconds.
*/ - export const filterSensitiveLog = (obj: DeleteManagedPrefixListRequest): any => ({ - ...obj, - }); -} + Phase1LifetimeSeconds?: number; -export interface DeleteManagedPrefixListResult { /** - *Information about the prefix list.
+ *The lifetime for phase 2 of the IKE negotiation, in seconds.
*/ - PrefixList?: ManagedPrefixList; -} + Phase2LifetimeSeconds?: number; -export namespace DeleteManagedPrefixListResult { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: DeleteManagedPrefixListResult): any => ({ - ...obj, - }); -} + RekeyMarginTimeSeconds?: number; -export interface DeleteNatGatewayRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The percentage of the rekey window determined by RekeyMarginTimeSeconds
+ * during which the rekey time is randomly selected.
The ID of the NAT gateway.
+ *The number of packets in an IKE replay window.
*/ - NatGatewayId: string | undefined; -} + ReplayWindowSize?: number; -export namespace DeleteNatGatewayRequest { /** - * @internal + *The number of seconds after which a DPD timeout occurs.
*/ - export const filterSensitiveLog = (obj: DeleteNatGatewayRequest): any => ({ - ...obj, - }); -} + DpdTimeoutSeconds?: number; -export interface DeleteNatGatewayResult { /** - *The ID of the NAT gateway.
+ *The action to take after a DPD timeout occurs.
*/ - NatGatewayId?: string; -} + DpdTimeoutAction?: string; -export namespace DeleteNatGatewayResult { /** - * @internal + *The permitted encryption algorithms for the VPN tunnel for phase 1 IKE + * negotiations.
*/ - export const filterSensitiveLog = (obj: DeleteNatGatewayResult): any => ({ - ...obj, - }); -} + Phase1EncryptionAlgorithms?: Phase1EncryptionAlgorithmsListValue[]; -export interface DeleteNetworkAclRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The permitted encryption algorithms for the VPN tunnel for phase 2 IKE + * negotiations.
*/ - DryRun?: boolean; + Phase2EncryptionAlgorithms?: Phase2EncryptionAlgorithmsListValue[]; /** - *The ID of the network ACL.
+ *The permitted integrity algorithms for the VPN tunnel for phase 1 IKE + * negotiations.
*/ - NetworkAclId: string | undefined; -} + Phase1IntegrityAlgorithms?: Phase1IntegrityAlgorithmsListValue[]; -export namespace DeleteNetworkAclRequest { /** - * @internal + *The permitted integrity algorithms for the VPN tunnel for phase 2 IKE + * negotiations.
*/ - export const filterSensitiveLog = (obj: DeleteNetworkAclRequest): any => ({ - ...obj, - }); -} + Phase2IntegrityAlgorithms?: Phase2IntegrityAlgorithmsListValue[]; -export interface DeleteNetworkAclEntryRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 IKE + * negotiations.
*/ - DryRun?: boolean; + Phase1DHGroupNumbers?: Phase1DHGroupNumbersListValue[]; /** - *Indicates whether the rule is an egress rule.
+ *The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE + * negotiations.
*/ - Egress: boolean | undefined; + Phase2DHGroupNumbers?: Phase2DHGroupNumbersListValue[]; /** - *The ID of the network ACL.
+ *The IKE versions that are permitted for the VPN tunnel.
*/ - NetworkAclId: string | undefined; + IkeVersions?: IKEVersionsListValue[]; /** - *The rule number of the entry to delete.
+ *The action to take when the establishing the VPN tunnels for a VPN connection.
*/ - RuleNumber: number | undefined; + StartupAction?: string; } -export namespace DeleteNetworkAclEntryRequest { +export namespace TunnelOption { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteNetworkAclEntryRequest): any => ({ + export const filterSensitiveLog = (obj: TunnelOption): any => ({ ...obj, }); } -export interface DeleteNetworkInsightsAnalysisRequest { +/** + *Describes VPN connection options.
+ */ +export interface VpnConnectionOptions { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Indicates whether acceleration is enabled for the VPN connection.
*/ - DryRun?: boolean; + EnableAcceleration?: boolean; /** - *The ID of the network insights analysis.
+ *Indicates whether the VPN connection uses static routes only. Static routes must be + * used for devices that don't support BGP.
*/ - NetworkInsightsAnalysisId: string | undefined; -} + StaticRoutesOnly?: boolean; -export namespace DeleteNetworkInsightsAnalysisRequest { /** - * @internal + *The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
*/ - export const filterSensitiveLog = (obj: DeleteNetworkInsightsAnalysisRequest): any => ({ - ...obj, - }); -} + LocalIpv4NetworkCidr?: string; -export interface DeleteNetworkInsightsAnalysisResult { /** - *The ID of the network insights analysis.
+ *The IPv4 CIDR on the Amazon Web Services side of the VPN connection.
*/ - NetworkInsightsAnalysisId?: string; -} + RemoteIpv4NetworkCidr?: string; -export namespace DeleteNetworkInsightsAnalysisResult { /** - * @internal + *The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
*/ - export const filterSensitiveLog = (obj: DeleteNetworkInsightsAnalysisResult): any => ({ - ...obj, - }); -} + LocalIpv6NetworkCidr?: string; -export interface DeleteNetworkInsightsPathRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The IPv6 CIDR on the Amazon Web Services side of the VPN connection.
*/ - DryRun?: boolean; + RemoteIpv6NetworkCidr?: string; /** - *The ID of the path.
+ *Indicates whether the VPN tunnels process IPv4 or IPv6 traffic.
*/ - NetworkInsightsPathId: string | undefined; + TunnelInsideIpVersion?: TunnelInsideIpVersion | string; + + /** + *Indicates the VPN tunnel options.
+ */ + TunnelOptions?: TunnelOption[]; } -export namespace DeleteNetworkInsightsPathRequest { +export namespace VpnConnectionOptions { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteNetworkInsightsPathRequest): any => ({ + export const filterSensitiveLog = (obj: VpnConnectionOptions): any => ({ ...obj, }); } -export interface DeleteNetworkInsightsPathResult { +export type VpnStaticRouteSource = "Static"; + +export type VpnState = "available" | "deleted" | "deleting" | "pending"; + +/** + *Describes a static route for a VPN connection.
+ */ +export interface VpnStaticRoute { /** - *The ID of the path.
+ *The CIDR block associated with the local subnet of the customer data center.
*/ - NetworkInsightsPathId?: string; + DestinationCidrBlock?: string; + + /** + *Indicates how the routes were provided.
+ */ + Source?: VpnStaticRouteSource | string; + + /** + *The current state of the static route.
+ */ + State?: VpnState | string; } -export namespace DeleteNetworkInsightsPathResult { +export namespace VpnStaticRoute { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteNetworkInsightsPathResult): any => ({ + export const filterSensitiveLog = (obj: VpnStaticRoute): any => ({ ...obj, }); } +export type TelemetryStatus = "DOWN" | "UP"; + /** - *Contains the parameters for DeleteNetworkInterface.
+ *Describes telemetry for a VPN tunnel.
*/ -export interface DeleteNetworkInterfaceRequest { +export interface VgwTelemetry { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The number of accepted routes.
*/ - DryRun?: boolean; + AcceptedRouteCount?: number; /** - *The ID of the network interface.
+ *The date and time of the last change in status.
*/ - NetworkInterfaceId: string | undefined; -} + LastStatusChange?: Date; -export namespace DeleteNetworkInterfaceRequest { /** - * @internal + *The Internet-routable IP address of the virtual private gateway's outside + * interface.
*/ - export const filterSensitiveLog = (obj: DeleteNetworkInterfaceRequest): any => ({ - ...obj, - }); -} + OutsideIpAddress?: string; -/** - *Contains the parameters for DeleteNetworkInterfacePermission.
- */ -export interface DeleteNetworkInterfacePermissionRequest { /** - *The ID of the network interface permission.
+ *The status of the VPN tunnel.
*/ - NetworkInterfacePermissionId: string | undefined; + Status?: TelemetryStatus | string; /** - *Specify true
to remove the permission even if the network interface is
- * attached to an instance.
If an error occurs, a description of the error.
*/ - Force?: boolean; + StatusMessage?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Amazon Resource Name (ARN) of the VPN tunnel endpoint certificate.
*/ - DryRun?: boolean; + CertificateArn?: string; } -export namespace DeleteNetworkInterfacePermissionRequest { +export namespace VgwTelemetry { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteNetworkInterfacePermissionRequest): any => ({ + export const filterSensitiveLog = (obj: VgwTelemetry): any => ({ ...obj, }); } /** - *Contains the output for DeleteNetworkInterfacePermission.
+ *Describes a VPN connection.
*/ -export interface DeleteNetworkInterfacePermissionResult { +export interface VpnConnection { /** - *Returns true
if the request succeeds, otherwise returns an error.
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.
The ID of the customer gateway at your end of the VPN connection.
*/ - export const filterSensitiveLog = (obj: DeleteNetworkInterfacePermissionResult): any => ({ - ...obj, - }); -} + CustomerGatewayId?: string; -export interface DeletePlacementGroupRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
The name of the placement group.
+ *The current state of the VPN connection.
*/ - GroupName: string | undefined; -} + State?: VpnState | string; -export namespace DeletePlacementGroupRequest { /** - * @internal + *The type of VPN connection.
*/ - export const filterSensitiveLog = (obj: DeletePlacementGroupRequest): any => ({ - ...obj, - }); -} + Type?: GatewayType | string; -export interface DeleteQueuedReservedInstancesRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the VPN connection.
*/ - DryRun?: boolean; + VpnConnectionId?: string; /** - *The IDs of the Reserved Instances.
+ *The ID of the virtual private gateway at the Amazon Web Services side of the VPN + * connection.
*/ - ReservedInstancesIds: string[] | undefined; -} + VpnGatewayId?: string; -export namespace DeleteQueuedReservedInstancesRequest { /** - * @internal + *The ID of the transit gateway associated with the VPN connection.
*/ - export const filterSensitiveLog = (obj: DeleteQueuedReservedInstancesRequest): any => ({ - ...obj, - }); -} + TransitGatewayId?: string; -export enum DeleteQueuedReservedInstancesErrorCode { - RESERVED_INSTANCES_ID_INVALID = "reserved-instances-id-invalid", - RESERVED_INSTANCES_NOT_IN_QUEUED_STATE = "reserved-instances-not-in-queued-state", - UNEXPECTED_ERROR = "unexpected-error", -} + /** + *The ARN of the core network.
+ */ + CoreNetworkArn?: string; -/** - *Describes the error for a Reserved Instance whose queued purchase could not be deleted.
- */ -export interface DeleteQueuedReservedInstancesError { /** - *The error code.
+ *The ARN of the core network attachment.
*/ - Code?: DeleteQueuedReservedInstancesErrorCode | string; + CoreNetworkAttachmentArn?: string; /** - *The error message.
+ *The current state of the gateway association.
*/ - Message?: string; -} + GatewayAssociationState?: GatewayAssociationState | string; -export namespace DeleteQueuedReservedInstancesError { /** - * @internal + *The VPN connection options.
*/ - export const filterSensitiveLog = (obj: DeleteQueuedReservedInstancesError): any => ({ - ...obj, - }); -} + Options?: VpnConnectionOptions; -/** - *Describes a Reserved Instance whose queued purchase was not deleted.
- */ -export interface FailedQueuedPurchaseDeletion { /** - *The error.
+ *The static routes associated with the VPN connection.
*/ - Error?: DeleteQueuedReservedInstancesError; + Routes?: VpnStaticRoute[]; /** - *The ID of the Reserved Instance.
+ *Any tags assigned to the VPN connection.
*/ - ReservedInstancesId?: string; + Tags?: Tag[]; + + /** + *Information about the VPN tunnel.
+ */ + VgwTelemetry?: VgwTelemetry[]; } -export namespace FailedQueuedPurchaseDeletion { +export namespace VpnConnection { /** * @internal */ - export const filterSensitiveLog = (obj: FailedQueuedPurchaseDeletion): any => ({ + export const filterSensitiveLog = (obj: VpnConnection): any => ({ ...obj, }); } /** - *Describes a Reserved Instance whose queued purchase was successfully deleted.
+ *Contains the output of CreateVpnConnection.
*/ -export interface SuccessfulQueuedPurchaseDeletion { +export interface CreateVpnConnectionResult { /** - *The ID of the Reserved Instance.
+ *Information about the VPN connection.
*/ - ReservedInstancesId?: string; + VpnConnection?: VpnConnection; } -export namespace SuccessfulQueuedPurchaseDeletion { +export namespace CreateVpnConnectionResult { /** * @internal */ - export const filterSensitiveLog = (obj: SuccessfulQueuedPurchaseDeletion): any => ({ + export const filterSensitiveLog = (obj: CreateVpnConnectionResult): any => ({ ...obj, }); } -export interface DeleteQueuedReservedInstancesResult { +/** + *Contains the parameters for CreateVpnConnectionRoute.
+ */ +export interface CreateVpnConnectionRouteRequest { /** - *Information about the queued purchases that were successfully deleted.
+ *The CIDR block associated with the local subnet of the customer network.
*/ - SuccessfulQueuedPurchaseDeletions?: SuccessfulQueuedPurchaseDeletion[]; + DestinationCidrBlock: string | undefined; /** - *Information about the queued purchases that could not be deleted.
+ *The ID of the VPN connection.
*/ - FailedQueuedPurchaseDeletions?: FailedQueuedPurchaseDeletion[]; + VpnConnectionId: string | undefined; } -export namespace DeleteQueuedReservedInstancesResult { +export namespace CreateVpnConnectionRouteRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteQueuedReservedInstancesResult): any => ({ + export const filterSensitiveLog = (obj: CreateVpnConnectionRouteRequest): any => ({ ...obj, }); } -export interface DeleteRouteRequest { +/** + *Contains the parameters for CreateVpnGateway.
+ */ +export interface CreateVpnGatewayRequest { /** - *The IPv4 CIDR range for the route. The value you specify must match the CIDR for the route exactly.
+ *The Availability Zone for the virtual private gateway.
*/ - DestinationCidrBlock?: string; + AvailabilityZone?: string; /** - *The IPv6 CIDR range for the route. The value you specify must match the CIDR for the route exactly.
+ *The type of VPN connection this virtual private gateway supports.
*/ - DestinationIpv6CidrBlock?: string; + Type: GatewayType | string | undefined; /** - *The ID of the prefix list for the route.
+ *The tags to apply to the virtual private gateway.
*/ - DestinationPrefixListId?: string; + TagSpecifications?: TagSpecification[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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
*/ - DryRun?: boolean; + AmazonSideAsn?: number; /** - *The ID of the route table.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the route table.
- */ - RouteTableId: string | undefined; -} - -export namespace DeleteRouteTableRequest { +/** + *Describes a virtual private gateway.
+ */ +export interface VpnGateway { /** - * @internal + *The Availability Zone where the virtual private gateway was created, if applicable. + * This field may be empty or not returned.
*/ - export const filterSensitiveLog = (obj: DeleteRouteTableRequest): any => ({ - ...obj, - }); -} + AvailabilityZone?: string; -export interface DeleteSecurityGroupRequest { /** - *The ID of the security group. Required for a nondefault VPC.
+ *The current state of the virtual private gateway.
*/ - GroupId?: string; + State?: VpnState | string; /** - *[EC2-Classic, default VPC] The name of the security group. You can specify either the security group name or the security group ID.
+ *The type of VPN connection the virtual private gateway supports.
*/ - GroupName?: string; + Type?: GatewayType | string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Any VPCs attached to the virtual private gateway.
*/ - DryRun?: boolean; -} + VpcAttachments?: VpcAttachment[]; -export namespace DeleteSecurityGroupRequest { /** - * @internal + *The ID of the virtual private gateway.
*/ - export const filterSensitiveLog = (obj: DeleteSecurityGroupRequest): any => ({ - ...obj, - }); -} + VpnGatewayId?: string; -export interface DeleteSnapshotRequest { /** - *The ID of the EBS snapshot.
+ *The private Autonomous System Number (ASN) for the Amazon side of a BGP + * session.
*/ - SnapshotId: string | undefined; + AmazonSideAsn?: number; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Any tags assigned to the virtual private gateway.
*/ - DryRun?: boolean; + Tags?: Tag[]; } -export namespace DeleteSnapshotRequest { +export namespace VpnGateway { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteSnapshotRequest): any => ({ + export const filterSensitiveLog = (obj: VpnGateway): any => ({ ...obj, }); } /** - *Contains the parameters for DeleteSpotDatafeedSubscription.
+ *Contains the output of CreateVpnGateway.
*/ -export interface DeleteSpotDatafeedSubscriptionRequest { +export interface CreateVpnGatewayResult { /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
Information about the virtual private gateway.
*/ - DryRun?: boolean; + VpnGateway?: VpnGateway; } -export namespace DeleteSpotDatafeedSubscriptionRequest { +export namespace CreateVpnGatewayResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteSpotDatafeedSubscriptionRequest): any => ({ + export const filterSensitiveLog = (obj: CreateVpnGatewayResult): any => ({ ...obj, }); } -export interface DeleteSubnetRequest { +export interface DeleteCarrierGatewayRequest { /** - *The ID of the subnet.
+ *The ID of the carrier gateway.
*/ - SubnetId: string | undefined; + CarrierGatewayId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -3041,134 +3078,147 @@ export interface DeleteSubnetRequest { DryRun?: boolean; } -export namespace DeleteSubnetRequest { +export namespace DeleteCarrierGatewayRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteSubnetRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteCarrierGatewayRequest): any => ({ ...obj, }); } -export interface DeleteSubnetCidrReservationRequest { +export interface DeleteCarrierGatewayResult { /** - *
The ID of the subnet CIDR reservation.
+ *Information about the carrier gateway.
*/ - SubnetCidrReservationId: string | undefined; + CarrierGateway?: CarrierGateway; +} +export namespace DeleteCarrierGatewayResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the Client VPN to be deleted.
+ */ + ClientVpnEndpointId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Information about the deleted subnet CIDR reservation.
+ *The current state of the Client VPN endpoint.
*/ - DeletedSubnetCidrReservation?: SubnetCidrReservation; + Status?: ClientVpnEndpointStatus; } -export namespace DeleteSubnetCidrReservationResult { +export namespace DeleteClientVpnEndpointResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteSubnetCidrReservationResult): any => ({ + export const filterSensitiveLog = (obj: DeleteClientVpnEndpointResult): any => ({ ...obj, }); } -export interface DeleteTagsRequest { +export interface DeleteClientVpnRouteRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the Client VPN endpoint from which the route is to be deleted.
*/ - DryRun?: boolean; + ClientVpnEndpointId: string | undefined; /** - *The IDs of the resources, separated by spaces.
- *Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.
+ *The ID of the target subnet used by the route.
*/ - Resources: string[] | undefined; + TargetVpcSubnetId?: string; /** - *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.
+ *The IPv4 address range, in CIDR notation, of the route to be deleted.
*/ - Tags?: Tag[]; + DestinationCidrBlock: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The ID of the Traffic Mirror filter.
- */ - TrafficMirrorFilterId: string | undefined; - +export interface DeleteClientVpnRouteResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The current state of the route.
*/ - DryRun?: boolean; + Status?: ClientVpnRouteStatus; } -export namespace DeleteTrafficMirrorFilterRequest { +export namespace DeleteClientVpnRouteResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTrafficMirrorFilterRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteClientVpnRouteResult): any => ({ ...obj, }); } -export interface DeleteTrafficMirrorFilterResult { +/** + *Contains the parameters for DeleteCustomerGateway.
+ */ +export interface DeleteCustomerGatewayRequest { /** - *The ID of the Traffic Mirror filter.
+ *The ID of the customer gateway.
*/ - TrafficMirrorFilterId?: string; + CustomerGatewayId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The ID of the Traffic Mirror rule.
+ *The ID of the DHCP options set.
*/ - TrafficMirrorFilterRuleId: string | undefined; + DhcpOptionsId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -3178,436 +3228,501 @@ export interface DeleteTrafficMirrorFilterRuleRequest { DryRun?: boolean; } -export namespace DeleteTrafficMirrorFilterRuleRequest { +export namespace DeleteDhcpOptionsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTrafficMirrorFilterRuleRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteDhcpOptionsRequest): any => ({ ...obj, }); } -export interface DeleteTrafficMirrorFilterRuleResult { +export interface DeleteEgressOnlyInternetGatewayRequest { /** - *
The ID of the deleted Traffic Mirror rule.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the egress-only internet gateway.
+ */ + EgressOnlyInternetGatewayId: string | undefined; } -export namespace DeleteTrafficMirrorFilterRuleResult { +export namespace DeleteEgressOnlyInternetGatewayRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTrafficMirrorFilterRuleResult): any => ({ + export const filterSensitiveLog = (obj: DeleteEgressOnlyInternetGatewayRequest): any => ({ ...obj, }); } -export interface DeleteTrafficMirrorSessionRequest { +export interface DeleteEgressOnlyInternetGatewayResult { /** - *The ID of the Traffic Mirror session.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
The IDs of the EC2 Fleets.
*/ - export const filterSensitiveLog = (obj: DeleteTrafficMirrorSessionRequest): any => ({ - ...obj, - }); -} + FleetIds: string[] | undefined; -export interface DeleteTrafficMirrorSessionResult { /** - *The ID of the deleted Traffic Mirror session.
+ *Indicates whether to terminate the 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
+ * NoTerminateInstances
. 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.
Describes an EC2 Fleet that was successfully deleted.
+ */ +export interface DeleteFleetSuccessItem { /** - *The ID of the Traffic Mirror target.
+ *The current state of the EC2 Fleet.
*/ - TrafficMirrorTargetId: string | undefined; + CurrentFleetState?: FleetStateCode | string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The previous state of the EC2 Fleet.
*/ - DryRun?: boolean; + PreviousFleetState?: FleetStateCode | string; + + /** + *The ID of the EC2 Fleet.
+ */ + FleetId?: string; } -export namespace DeleteTrafficMirrorTargetRequest { +export namespace DeleteFleetSuccessItem { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTrafficMirrorTargetRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteFleetSuccessItem): any => ({ ...obj, }); } -export interface DeleteTrafficMirrorTargetResult { +export enum DeleteFleetErrorCode { + FLEET_ID_DOES_NOT_EXIST = "fleetIdDoesNotExist", + FLEET_ID_MALFORMED = "fleetIdMalformed", + FLEET_NOT_IN_DELETABLE_STATE = "fleetNotInDeletableState", + UNEXPECTED_ERROR = "unexpectedError", +} + +/** + *Describes an EC2 Fleet error.
+ */ +export interface DeleteFleetError { /** - *The ID of the deleted Traffic Mirror target.
+ *The error code.
*/ - TrafficMirrorTargetId?: string; + Code?: DeleteFleetErrorCode | string; + + /** + *The description for the error code.
+ */ + Message?: string; } -export namespace DeleteTrafficMirrorTargetResult { +export namespace DeleteFleetError { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTrafficMirrorTargetResult): any => ({ + export const filterSensitiveLog = (obj: DeleteFleetError): any => ({ ...obj, }); } -export interface DeleteTransitGatewayRequest { +/** + *Describes an EC2 Fleet that was not successfully deleted.
+ */ +export interface DeleteFleetErrorItem { /** - *The ID of the transit gateway.
+ *The error.
*/ - TransitGatewayId: string | undefined; + Error?: DeleteFleetError; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the EC2 Fleet.
*/ - DryRun?: boolean; + FleetId?: string; } -export namespace DeleteTransitGatewayRequest { +export namespace DeleteFleetErrorItem { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteFleetErrorItem): any => ({ ...obj, }); } -export interface DeleteTransitGatewayResult { +export interface DeleteFleetsResult { /** - *Information about the deleted transit gateway.
+ *Information about the EC2 Fleets that are successfully deleted.
*/ - TransitGateway?: TransitGateway; + SuccessfulFleetDeletions?: DeleteFleetSuccessItem[]; + + /** + *Information about the EC2 Fleets that are not successfully deleted.
+ */ + UnsuccessfulFleetDeletions?: DeleteFleetErrorItem[]; } -export namespace DeleteTransitGatewayResult { +export namespace DeleteFleetsResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayResult): any => ({ + export const filterSensitiveLog = (obj: DeleteFleetsResult): any => ({ ...obj, }); } -export interface DeleteTransitGatewayConnectRequest { - /** - *The ID of the Connect attachment.
- */ - TransitGatewayAttachmentId: string | undefined; - +export interface DeleteFlowLogsRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
One or more flow log IDs.
+ *Constraint: Maximum of 1000 flow log IDs.
+ */ + FlowLogIds: string[] | undefined; } -export namespace DeleteTransitGatewayConnectRequest { +export namespace DeleteFlowLogsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayConnectRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteFlowLogsRequest): any => ({ ...obj, }); } -export interface DeleteTransitGatewayConnectResult { +export interface DeleteFlowLogsResult { /** - *Information about the deleted Connect attachment.
+ *Information about the flow logs that could not be deleted successfully.
*/ - TransitGatewayConnect?: TransitGatewayConnect; + Unsuccessful?: UnsuccessfulItem[]; } -export namespace DeleteTransitGatewayConnectResult { +export namespace DeleteFlowLogsResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayConnectResult): any => ({ + export const filterSensitiveLog = (obj: DeleteFlowLogsResult): any => ({ ...obj, }); } -export interface DeleteTransitGatewayConnectPeerRequest { - /** - *The ID of the Connect peer.
- */ - TransitGatewayConnectPeerId: string | undefined; - +export interface DeleteFpgaImageRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
The ID of the AFI.
+ */ + FpgaImageId: string | undefined; } -export namespace DeleteTransitGatewayConnectPeerRequest { +export namespace DeleteFpgaImageRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayConnectPeerRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteFpgaImageRequest): any => ({ ...obj, }); } -export interface DeleteTransitGatewayConnectPeerResult { +export interface DeleteFpgaImageResult { /** - *Information about the deleted Connect peer.
+ *Is true
if the request succeeds, and an error otherwise.
The ID of the transit gateway multicast domain.
- */ - TransitGatewayMulticastDomainId: string | undefined; - +export interface DeleteInstanceEventWindowRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
Specify true
to force delete the event window. Use the force delete parameter
+ * if the event window is currently associated with targets.
Information about the deleted transit gateway multicast domain.
+ *The ID of the event window.
*/ - TransitGatewayMulticastDomain?: TransitGatewayMulticastDomain; + InstanceEventWindowId: string | undefined; } -export namespace DeleteTransitGatewayMulticastDomainResult { +export namespace DeleteInstanceEventWindowRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayMulticastDomainResult): any => ({ + export const filterSensitiveLog = (obj: DeleteInstanceEventWindowRequest): any => ({ ...obj, }); } -export interface DeleteTransitGatewayPeeringAttachmentRequest { +/** + *The state of the event window.
+ */ +export interface InstanceEventWindowStateChange { /** - *The ID of the transit gateway peering attachment.
+ *The ID of the event window.
*/ - TransitGatewayAttachmentId: string | undefined; + InstanceEventWindowId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The current state of the event window.
*/ - DryRun?: boolean; + State?: InstanceEventWindowState | string; } -export namespace DeleteTransitGatewayPeeringAttachmentRequest { +export namespace InstanceEventWindowStateChange { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayPeeringAttachmentRequest): any => ({ + export const filterSensitiveLog = (obj: InstanceEventWindowStateChange): any => ({ ...obj, }); } -export interface DeleteTransitGatewayPeeringAttachmentResult { +export interface DeleteInstanceEventWindowResult { /** - *The transit gateway peering attachment.
+ *The state of the event window.
*/ - TransitGatewayPeeringAttachment?: TransitGatewayPeeringAttachment; + InstanceEventWindowState?: InstanceEventWindowStateChange; } -export namespace DeleteTransitGatewayPeeringAttachmentResult { +export namespace DeleteInstanceEventWindowResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayPeeringAttachmentResult): any => ({ + export const filterSensitiveLog = (obj: DeleteInstanceEventWindowResult): any => ({ ...obj, }); } -export interface DeleteTransitGatewayPrefixListReferenceRequest { - /** - *The ID of the route table.
- */ - TransitGatewayRouteTableId: string | undefined; - - /** - *The ID of the prefix list.
- */ - PrefixListId: string | undefined; - +export interface DeleteInternetGatewayRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
The ID of the internet gateway.
+ */ + InternetGatewayId: string | undefined; } -export namespace DeleteTransitGatewayPrefixListReferenceRequest { +export namespace DeleteInternetGatewayRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayPrefixListReferenceRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteInternetGatewayRequest): any => ({ ...obj, }); } -export interface DeleteTransitGatewayPrefixListReferenceResult { +export interface DeleteIpamRequest { /** - *Information about the deleted prefix list reference.
+ *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
.
The ID of the IPAM to delete.
+ */ + IpamId: string | undefined; } -export namespace DeleteTransitGatewayPrefixListReferenceResult { +export namespace DeleteIpamRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayPrefixListReferenceResult): any => ({ + export const filterSensitiveLog = (obj: DeleteIpamRequest): any => ({ ...obj, }); } -export interface DeleteTransitGatewayRouteRequest { +export interface DeleteIpamResult { /** - *The ID of the transit gateway route table.
+ *Information about the results of the deletion.
*/ - TransitGatewayRouteTableId: string | undefined; + Ipam?: Ipam; +} +export namespace DeleteIpamResult { /** - *The CIDR range for the route. This must match the CIDR for the route exactly.
+ * @internal */ - DestinationCidrBlock: string | undefined; + export const filterSensitiveLog = (obj: DeleteIpamResult): any => ({ + ...obj, + }); +} +export interface DeleteIpamPoolRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request, + *
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
.
The ID of the pool to delete.
+ */ + IpamPoolId: string | undefined; } -export namespace DeleteTransitGatewayRouteRequest { +export namespace DeleteIpamPoolRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayRouteRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteIpamPoolRequest): any => ({ ...obj, }); } -export interface DeleteTransitGatewayRouteResult { +export interface DeleteIpamPoolResult { /** - *Information about the route.
+ *Information about the results of the deletion.
*/ - Route?: TransitGatewayRoute; + IpamPool?: IpamPool; } -export namespace DeleteTransitGatewayRouteResult { +export namespace DeleteIpamPoolResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayRouteResult): any => ({ + export const filterSensitiveLog = (obj: DeleteIpamPoolResult): any => ({ ...obj, }); } -export interface DeleteTransitGatewayRouteTableRequest { - /** - *The ID of the transit gateway route table.
- */ - TransitGatewayRouteTableId: string | undefined; - +export interface DeleteIpamScopeRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request, + *
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
.
The ID of the scope to delete.
+ */ + IpamScopeId: string | undefined; } -export namespace DeleteTransitGatewayRouteTableRequest { +export namespace DeleteIpamScopeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayRouteTableRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteIpamScopeRequest): any => ({ ...obj, }); } -export interface DeleteTransitGatewayRouteTableResult { +export interface DeleteIpamScopeResult { /** - *Information about the deleted transit gateway route table.
+ *Information about the results of the deletion.
*/ - TransitGatewayRouteTable?: TransitGatewayRouteTable; + IpamScope?: IpamScope; } -export namespace DeleteTransitGatewayRouteTableResult { +export namespace DeleteIpamScopeResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayRouteTableResult): any => ({ + export const filterSensitiveLog = (obj: DeleteIpamScopeResult): any => ({ ...obj, }); } -export interface DeleteTransitGatewayVpcAttachmentRequest { +export interface DeleteKeyPairRequest { /** - *The ID of the attachment.
+ *The name of the key pair.
*/ - TransitGatewayAttachmentId: string | undefined; + KeyName?: string; + + /** + *The ID of the key pair.
+ */ + KeyPairId?: string; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -3617,413 +3732,379 @@ export interface DeleteTransitGatewayVpcAttachmentRequest { DryRun?: boolean; } -export namespace DeleteTransitGatewayVpcAttachmentRequest { +export namespace DeleteKeyPairRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteTransitGatewayVpcAttachmentRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteKeyPairRequest): any => ({ ...obj, }); } -export interface DeleteTransitGatewayVpcAttachmentResult { - /** - *
Information about the deleted VPC attachment.
- */ - TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment; -} - -export namespace DeleteTransitGatewayVpcAttachmentResult { +export interface DeleteLaunchTemplateRequest { /** - * @internal + *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The ID of the volume.
+ *The ID of the launch template. You must specify either the launch template ID or + * launch template name in the request.
*/ - VolumeId: string | undefined; + LaunchTemplateId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The name of the launch template. You must specify either the launch template ID or + * launch template name in the request.
*/ - DryRun?: boolean; + LaunchTemplateName?: string; } -export namespace DeleteVolumeRequest { +export namespace DeleteLaunchTemplateRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteVolumeRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteLaunchTemplateRequest): any => ({ ...obj, }); } -export interface DeleteVpcRequest { - /** - *The ID of the VPC.
- */ - VpcId: string | undefined; - +export interface DeleteLaunchTemplateResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the launch template.
*/ - DryRun?: boolean; + LaunchTemplate?: LaunchTemplate; } -export namespace DeleteVpcRequest { +export namespace DeleteLaunchTemplateResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteVpcRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteLaunchTemplateResult): any => ({ ...obj, }); } -export interface DeleteVpcEndpointConnectionNotificationsRequest { +export interface DeleteLaunchTemplateVersionsRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
One or more notification IDs.
+ *The ID of the launch template. You must specify either the launch template ID or + * launch template name in the request.
*/ - ConnectionNotificationIds: string[] | undefined; -} + LaunchTemplateId?: string; -export namespace DeleteVpcEndpointConnectionNotificationsRequest { /** - * @internal + *The name of the launch template. You must specify either the launch template ID or + * launch template name in the request.
*/ - export const filterSensitiveLog = (obj: DeleteVpcEndpointConnectionNotificationsRequest): any => ({ - ...obj, - }); -} + LaunchTemplateName?: string; -export interface DeleteVpcEndpointConnectionNotificationsResult { /** - *Information about the notifications that could not be deleted - * successfully.
+ *The version numbers of one or more launch template versions to delete.
*/ - Unsuccessful?: UnsuccessfulItem[]; + Versions: string[] | undefined; } -export namespace DeleteVpcEndpointConnectionNotificationsResult { +export namespace DeleteLaunchTemplateVersionsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteVpcEndpointConnectionNotificationsResult): any => ({ + export const filterSensitiveLog = (obj: DeleteLaunchTemplateVersionsRequest): any => ({ ...obj, }); } /** - *Contains the parameters for DeleteVpcEndpoints.
+ *Describes a launch template version that was successfully deleted.
*/ -export interface DeleteVpcEndpointsRequest { +export interface DeleteLaunchTemplateVersionsResponseSuccessItem { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the launch template.
*/ - DryRun?: boolean; + LaunchTemplateId?: string; /** - *One or more VPC endpoint IDs.
+ *The name of the launch template.
*/ - VpcEndpointIds: string[] | undefined; + LaunchTemplateName?: string; + + /** + *The version number of the launch template.
+ */ + VersionNumber?: number; } -export namespace DeleteVpcEndpointsRequest { +export namespace DeleteLaunchTemplateVersionsResponseSuccessItem { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteVpcEndpointsRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteLaunchTemplateVersionsResponseSuccessItem): any => ({ ...obj, }); } +export enum LaunchTemplateErrorCode { + LAUNCH_TEMPLATE_ID_DOES_NOT_EXIST = "launchTemplateIdDoesNotExist", + LAUNCH_TEMPLATE_ID_MALFORMED = "launchTemplateIdMalformed", + LAUNCH_TEMPLATE_NAME_DOES_NOT_EXIST = "launchTemplateNameDoesNotExist", + LAUNCH_TEMPLATE_NAME_MALFORMED = "launchTemplateNameMalformed", + LAUNCH_TEMPLATE_VERSION_DOES_NOT_EXIST = "launchTemplateVersionDoesNotExist", + UNEXPECTED_ERROR = "unexpectedError", +} + /** - *Contains the output of DeleteVpcEndpoints.
+ *Describes the error that's returned when you cannot delete a launch template + * version.
*/ -export interface DeleteVpcEndpointsResult { +export interface ResponseError { /** - *Information about the VPC endpoints that were not successfully deleted.
+ *The error code.
*/ - Unsuccessful?: UnsuccessfulItem[]; + Code?: LaunchTemplateErrorCode | string; + + /** + *The error message, if applicable.
+ */ + Message?: string; } -export namespace DeleteVpcEndpointsResult { +export namespace ResponseError { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteVpcEndpointsResult): any => ({ + export const filterSensitiveLog = (obj: ResponseError): any => ({ ...obj, }); } -export interface DeleteVpcEndpointServiceConfigurationsRequest { +/** + *Describes a launch template version that could not be deleted.
+ */ +export interface DeleteLaunchTemplateVersionsResponseErrorItem { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the launch template.
*/ - DryRun?: boolean; + LaunchTemplateId?: string; /** - *The IDs of one or more services.
+ *The name of the launch template.
*/ - ServiceIds: string[] | undefined; -} + LaunchTemplateName?: string; -export namespace DeleteVpcEndpointServiceConfigurationsRequest { /** - * @internal + *The version number of the launch template.
*/ - export const filterSensitiveLog = (obj: DeleteVpcEndpointServiceConfigurationsRequest): any => ({ - ...obj, - }); -} + VersionNumber?: number; -export interface DeleteVpcEndpointServiceConfigurationsResult { /** - *Information about the service configurations that were not deleted, if - * applicable.
+ *Information about the error.
*/ - Unsuccessful?: UnsuccessfulItem[]; + ResponseError?: ResponseError; } -export namespace DeleteVpcEndpointServiceConfigurationsResult { +export namespace DeleteLaunchTemplateVersionsResponseErrorItem { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteVpcEndpointServiceConfigurationsResult): any => ({ + export const filterSensitiveLog = (obj: DeleteLaunchTemplateVersionsResponseErrorItem): any => ({ ...obj, }); } -export interface DeleteVpcPeeringConnectionRequest { +export interface DeleteLaunchTemplateVersionsResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the launch template versions that were successfully + * deleted.
*/ - DryRun?: boolean; + SuccessfullyDeletedLaunchTemplateVersions?: DeleteLaunchTemplateVersionsResponseSuccessItem[]; /** - *The ID of the VPC peering connection.
+ *Information about the launch template versions that could not be deleted.
*/ - VpcPeeringConnectionId: string | undefined; + UnsuccessfullyDeletedLaunchTemplateVersions?: DeleteLaunchTemplateVersionsResponseErrorItem[]; } -export namespace DeleteVpcPeeringConnectionRequest { +export namespace DeleteLaunchTemplateVersionsResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteVpcPeeringConnectionRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteLaunchTemplateVersionsResult): any => ({ ...obj, }); } -export interface DeleteVpcPeeringConnectionResult { - /** - *Returns true
if the request succeeds; otherwise, it returns an error.
The CIDR range for the route. This must match the CIDR for the route exactly.
*/ - export const filterSensitiveLog = (obj: DeleteVpcPeeringConnectionResult): any => ({ - ...obj, - }); -} + DestinationCidrBlock: string | undefined; -/** - *Contains the parameters for DeleteVpnConnection.
- */ -export interface DeleteVpnConnectionRequest { /** - *The ID of the VPN connection.
+ *The ID of the local gateway route table.
*/ - VpnConnectionId: string | undefined; + LocalGatewayRouteTableId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains the parameters for DeleteVpnConnectionRoute.
- */ -export interface DeleteVpnConnectionRouteRequest { - /** - *The CIDR block associated with the local subnet of the customer network.
- */ - DestinationCidrBlock: string | undefined; - +export interface DeleteLocalGatewayRouteResult { /** - *The ID of the VPN connection.
+ *Information about the route.
*/ - VpnConnectionId: string | undefined; + Route?: LocalGatewayRoute; } -export namespace DeleteVpnConnectionRouteRequest { +export namespace DeleteLocalGatewayRouteResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeleteVpnConnectionRouteRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteLocalGatewayRouteResult): any => ({ ...obj, }); } -/** - *Contains the parameters for DeleteVpnGateway.
- */ -export interface DeleteVpnGatewayRequest { +export interface DeleteLocalGatewayRouteTableVpcAssociationRequest { /** - *The ID of the virtual private gateway.
+ *The ID of the association.
*/ - VpnGatewayId: string | undefined; + LocalGatewayRouteTableVpcAssociationId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The address range, in CIDR notation. The prefix must be the same prefix - * that you specified when you provisioned the address range.
+ *Information about the association.
*/ - Cidr: string | undefined; + LocalGatewayRouteTableVpcAssociation?: LocalGatewayRouteTableVpcAssociation; +} + +export namespace DeleteLocalGatewayRouteTableVpcAssociationResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DeleteLocalGatewayRouteTableVpcAssociationResult): any => ({ + ...obj, + }); +} +export interface DeleteManagedPrefixListRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
The ID of the prefix list.
+ */ + PrefixListId: string | undefined; } -export namespace DeprovisionByoipCidrRequest { +export namespace DeleteManagedPrefixListRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeprovisionByoipCidrRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteManagedPrefixListRequest): any => ({ ...obj, }); } -export interface DeprovisionByoipCidrResult { +export interface DeleteManagedPrefixListResult { /** - *Information about the address range.
+ *Information about the prefix list.
*/ - ByoipCidr?: ByoipCidr; + PrefixList?: ManagedPrefixList; } -export namespace DeprovisionByoipCidrResult { +export namespace DeleteManagedPrefixListResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeprovisionByoipCidrResult): any => ({ + export const filterSensitiveLog = (obj: DeleteManagedPrefixListResult): any => ({ ...obj, }); } -/** - *Contains the parameters for DeregisterImage.
- */ -export interface DeregisterImageRequest { +export interface DeleteNatGatewayRequest { /** - *The ID of the AMI.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the NAT gateway.
*/ - DryRun?: boolean; + NatGatewayId: string | undefined; } -export namespace DeregisterImageRequest { +export namespace DeleteNatGatewayRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeregisterImageRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteNatGatewayRequest): any => ({ ...obj, }); } -/** - *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
Indicates whether to deregister all tag keys in the current Region. Specify false
- * to deregister all tag keys.
Information about the tag keys to deregister.
+ *The ID of the NAT gateway.
*/ - InstanceTagKeys?: string[]; + NatGatewayId?: string; } -export namespace DeregisterInstanceTagAttributeRequest { +export namespace DeleteNatGatewayResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeregisterInstanceTagAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteNatGatewayResult): any => ({ ...obj, }); } -export interface DeregisterInstanceEventNotificationAttributesRequest { +export interface DeleteNetworkAclRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -4032,76 +4113,97 @@ export interface DeregisterInstanceEventNotificationAttributesRequest {
DryRun?: boolean;
/**
- *
Information about the tag keys to deregister.
+ *The ID of the network ACL.
*/ - InstanceTagAttribute?: DeregisterInstanceTagAttributeRequest; + NetworkAclId: string | undefined; } -export namespace DeregisterInstanceEventNotificationAttributesRequest { +export namespace DeleteNetworkAclRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeregisterInstanceEventNotificationAttributesRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteNetworkAclRequest): any => ({ ...obj, }); } -/** - *Describes the registered tag keys for the current Region.
- */ -export interface InstanceTagNotificationAttribute { +export interface DeleteNetworkAclEntryRequest { /** - *The registered tag keys.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
Indicates whether the rule is an egress rule.
*/ - IncludeAllTagsOfInstance?: boolean; + Egress: boolean | undefined; + + /** + *The ID of the network ACL.
+ */ + NetworkAclId: string | undefined; + + /** + *The rule number of the entry to delete.
+ */ + RuleNumber: number | undefined; } -export namespace InstanceTagNotificationAttribute { +export namespace DeleteNetworkAclEntryRequest { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceTagNotificationAttribute): any => ({ + export const filterSensitiveLog = (obj: DeleteNetworkAclEntryRequest): any => ({ ...obj, }); } -export interface DeregisterInstanceEventNotificationAttributesResult { +export interface DeleteNetworkInsightsAccessScopeRequest { /** - *The resulting set of tag keys.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the Network Access Scope.
+ */ + NetworkInsightsAccessScopeId: string | undefined; } -export namespace DeregisterInstanceEventNotificationAttributesResult { +export namespace DeleteNetworkInsightsAccessScopeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeregisterInstanceEventNotificationAttributesResult): any => ({ + export const filterSensitiveLog = (obj: DeleteNetworkInsightsAccessScopeRequest): any => ({ ...obj, }); } -export interface DeregisterTransitGatewayMulticastGroupMembersRequest { +export interface DeleteNetworkInsightsAccessScopeResult { /** - *The ID of the transit gateway multicast domain.
+ *The ID of the Network Access Scope.
*/ - TransitGatewayMulticastDomainId?: string; + NetworkInsightsAccessScopeId?: string; +} +export namespace DeleteNetworkInsightsAccessScopeResult { /** - *The IP address assigned to the transit gateway multicast group.
+ * @internal */ - GroupIpAddress?: string; + export const filterSensitiveLog = (obj: DeleteNetworkInsightsAccessScopeResult): any => ({ + ...obj, + }); +} +export interface DeleteNetworkInsightsAccessScopeAnalysisRequest { /** - *The IDs of the group members' network interfaces.
+ *The ID of the Network Access Scope analysis.
*/ - NetworkInterfaceIds?: string[]; + NetworkInsightsAccessScopeAnalysisId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -4111,736 +4213,562 @@ export interface DeregisterTransitGatewayMulticastGroupMembersRequest { DryRun?: boolean; } -export namespace DeregisterTransitGatewayMulticastGroupMembersRequest { +export namespace DeleteNetworkInsightsAccessScopeAnalysisRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DeregisterTransitGatewayMulticastGroupMembersRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteNetworkInsightsAccessScopeAnalysisRequest): any => ({ ...obj, }); } -/** - *
Describes the deregistered transit gateway multicast group members.
- */ -export interface TransitGatewayMulticastDeregisteredGroupMembers { - /** - *The ID of the transit gateway multicast domain.
- */ - TransitGatewayMulticastDomainId?: string; - - /** - *The network interface IDs of the deregistered members.
- */ - DeregisteredNetworkInterfaceIds?: string[]; - +export interface DeleteNetworkInsightsAccessScopeAnalysisResult { /** - *The IP address assigned to the transit gateway multicast group.
+ *The ID of the Network Access Scope analysis.
*/ - GroupIpAddress?: string; + NetworkInsightsAccessScopeAnalysisId?: string; } -export namespace TransitGatewayMulticastDeregisteredGroupMembers { +export namespace DeleteNetworkInsightsAccessScopeAnalysisResult { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayMulticastDeregisteredGroupMembers): any => ({ + export const filterSensitiveLog = (obj: DeleteNetworkInsightsAccessScopeAnalysisResult): any => ({ ...obj, }); } -export interface DeregisterTransitGatewayMulticastGroupMembersResult { - /** - *Information about the deregistered members.
- */ - DeregisteredMulticastGroupMembers?: TransitGatewayMulticastDeregisteredGroupMembers; -} - -export namespace DeregisterTransitGatewayMulticastGroupMembersResult { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DeregisterTransitGatewayMulticastGroupMembersResult): any => ({ - ...obj, - }); -} - -export interface DeregisterTransitGatewayMulticastGroupSourcesRequest { - /** - *The ID of the transit gateway multicast domain.
- */ - TransitGatewayMulticastDomainId?: string; - - /** - *The IP address assigned to the transit gateway multicast group.
- */ - GroupIpAddress?: string; - - /** - *The IDs of the group sources' network interfaces.
- */ - NetworkInterfaceIds?: string[]; - +export interface DeleteNetworkInsightsAnalysisRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
Describes the deregistered transit gateway multicast group sources.
- */ -export interface TransitGatewayMulticastDeregisteredGroupSources { - /** - *The ID of the transit gateway multicast domain.
- */ - TransitGatewayMulticastDomainId?: string; - - /** - *The network interface IDs of the non-registered members.
- */ - DeregisteredNetworkInterfaceIds?: string[]; /** - *The IP address assigned to the transit gateway multicast group.
+ *The ID of the network insights analysis.
*/ - GroupIpAddress?: string; + NetworkInsightsAnalysisId: string | undefined; } -export namespace TransitGatewayMulticastDeregisteredGroupSources { +export namespace DeleteNetworkInsightsAnalysisRequest { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayMulticastDeregisteredGroupSources): any => ({ + export const filterSensitiveLog = (obj: DeleteNetworkInsightsAnalysisRequest): any => ({ ...obj, }); } -export interface DeregisterTransitGatewayMulticastGroupSourcesResult { +export interface DeleteNetworkInsightsAnalysisResult { /** - *Information about the deregistered group sources.
+ *The ID of the network insights analysis.
*/ - DeregisteredMulticastGroupSources?: TransitGatewayMulticastDeregisteredGroupSources; + NetworkInsightsAnalysisId?: string; } -export namespace DeregisterTransitGatewayMulticastGroupSourcesResult { +export namespace DeleteNetworkInsightsAnalysisResult { /** * @internal */ - export const filterSensitiveLog = (obj: DeregisterTransitGatewayMulticastGroupSourcesResult): any => ({ + export const filterSensitiveLog = (obj: DeleteNetworkInsightsAnalysisResult): any => ({ ...obj, }); } -export interface DescribeAccountAttributesRequest { +export interface DeleteNetworkInsightsPathRequest { /** - *The account attribute names.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the path.
*/ - DryRun?: boolean; + NetworkInsightsPathId: string | undefined; } -export namespace DescribeAccountAttributesRequest { +export namespace DeleteNetworkInsightsPathRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeAccountAttributesRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteNetworkInsightsPathRequest): any => ({ ...obj, }); } -export interface DescribeAccountAttributesResult { +export interface DeleteNetworkInsightsPathResult { /** - *Information about the account attributes.
+ *The ID of the path.
*/ - AccountAttributes?: AccountAttribute[]; + NetworkInsightsPathId?: string; } -export namespace DescribeAccountAttributesResult { +export namespace DeleteNetworkInsightsPathResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeAccountAttributesResult): any => ({ + export const filterSensitiveLog = (obj: DeleteNetworkInsightsPathResult): any => ({ ...obj, }); } /** - *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.
+ *Contains the parameters for DeleteNetworkInterface.
*/ -export interface Filter { +export interface DeleteNetworkInterfaceRequest { /** - *The name of the filter. Filter names are case-sensitive.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The filter values. Filter values are case-sensitive.
+ *The ID of the network interface.
*/ - Values?: string[]; + NetworkInterfaceId: string | undefined; } -export namespace Filter { +export namespace DeleteNetworkInterfaceRequest { /** * @internal */ - export const filterSensitiveLog = (obj: Filter): any => ({ + export const filterSensitiveLog = (obj: DeleteNetworkInterfaceRequest): any => ({ ...obj, }); } -export interface DescribeAddressesRequest { - /** - *One or more filters. Filter names and values are case-sensitive.
- *
- * allocation-id
- [EC2-VPC] The allocation ID for the address.
- * association-id
- [EC2-VPC] The association ID for the address.
- * domain
- Indicates whether the address is for use in EC2-Classic (standard
)
- * or in a VPC (vpc
).
- * 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
- [EC2-VPC] 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
- [EC2-VPC] The private IP address associated with the Elastic IP address.
- * public-ip
- The Elastic IP address, or the carrier IP address.
- * tag
: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.
Contains the parameters for DeleteNetworkInterfacePermission.
+ */ +export interface DeleteNetworkInterfacePermissionRequest { /** - *One or more Elastic IP addresses.
- *Default: Describes all your Elastic IP addresses.
+ *The ID of the network interface permission.
*/ - PublicIps?: string[]; + NetworkInterfacePermissionId: string | undefined; /** - *[EC2-VPC] Information about the allocation IDs.
+ *Specify true
to remove the permission even if the network interface is
+ * attached to an instance.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
*/
DryRun?: boolean;
}
-export namespace DescribeAddressesRequest {
+export namespace DeleteNetworkInterfacePermissionRequest {
/**
* @internal
*/
- export const filterSensitiveLog = (obj: DescribeAddressesRequest): any => ({
+ export const filterSensitiveLog = (obj: DeleteNetworkInterfacePermissionRequest): any => ({
...obj,
});
}
-export interface DescribeAddressesResult {
+/**
+ * Contains the output for DeleteNetworkInterfacePermission.
+ */ +export interface DeleteNetworkInterfacePermissionResult { /** - *Information about the Elastic IP addresses.
+ *Returns true
if the request succeeds, otherwise returns an error.
[EC2-VPC] The allocation IDs.
- */ - AllocationIds?: string[]; - +export interface DeletePlacementGroupRequest { /** - *The attribute of the IP 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
.
The token for the next page of results.
+ *The name of the placement group.
*/ - NextToken?: string; + GroupName: string | undefined; +} +export namespace DeletePlacementGroupRequest { /** - *The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request, + *
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
.
The ID of the public IPv4 pool you want to delete.
+ */ + PoolId: string | undefined; } -export namespace DescribeAddressesAttributeRequest { +export namespace DeletePublicIpv4PoolRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeAddressesAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: DeletePublicIpv4PoolRequest): any => ({ ...obj, }); } -export interface DescribeAddressesAttributeResult { - /** - *Information about the IP addresses.
- */ - Addresses?: AddressAttribute[]; - +export interface DeletePublicIpv4PoolResult { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the result of deleting the public IPv4 pool.
*/ - NextToken?: string; + ReturnValue?: boolean; } -export namespace DescribeAddressesAttributeResult { +export namespace DeletePublicIpv4PoolResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeAddressesAttributeResult): any => ({ + export const filterSensitiveLog = (obj: DeletePublicIpv4PoolResult): any => ({ ...obj, }); } -export interface DescribeAggregateIdFormatRequest { +export interface DeleteQueuedReservedInstancesRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
*/
DryRun?: boolean;
+
+ /**
+ * The IDs of the Reserved Instances.
+ */ + ReservedInstancesIds: string[] | undefined; } -export namespace DescribeAggregateIdFormatRequest { +export namespace DeleteQueuedReservedInstancesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeAggregateIdFormatRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteQueuedReservedInstancesRequest): any => ({ ...obj, }); } +export enum DeleteQueuedReservedInstancesErrorCode { + RESERVED_INSTANCES_ID_INVALID = "reserved-instances-id-invalid", + RESERVED_INSTANCES_NOT_IN_QUEUED_STATE = "reserved-instances-not-in-queued-state", + UNEXPECTED_ERROR = "unexpected-error", +} + /** - *Describes the ID format for a resource.
+ *Describes the error for a Reserved Instance whose queued purchase could not be deleted.
*/ -export interface IdFormat { - /** - *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.
- */ - Deadline?: Date; - +export interface DeleteQueuedReservedInstancesError { /** - *The type of resource.
+ *The error code.
*/ - Resource?: string; + Code?: DeleteQueuedReservedInstancesErrorCode | string; /** - *Indicates whether longer IDs (17-character IDs) are enabled for the resource.
+ *The error message.
*/ - UseLongIds?: boolean; + Message?: string; } -export namespace IdFormat { +export namespace DeleteQueuedReservedInstancesError { /** * @internal */ - export const filterSensitiveLog = (obj: IdFormat): any => ({ + export const filterSensitiveLog = (obj: DeleteQueuedReservedInstancesError): any => ({ ...obj, }); } -export interface DescribeAggregateIdFormatResult { +/** + *Describes a Reserved Instance whose queued purchase was not deleted.
+ */ +export interface FailedQueuedPurchaseDeletion { /** - *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.
The error.
*/ - UseLongIdsAggregated?: boolean; + Error?: DeleteQueuedReservedInstancesError; /** - *Information about each resource's ID format.
+ *The ID of the Reserved Instance.
*/ - Statuses?: IdFormat[]; + ReservedInstancesId?: string; } -export namespace DescribeAggregateIdFormatResult { +export namespace FailedQueuedPurchaseDeletion { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeAggregateIdFormatResult): any => ({ + export const filterSensitiveLog = (obj: FailedQueuedPurchaseDeletion): any => ({ ...obj, }); } -export interface DescribeAvailabilityZonesRequest { - /** - *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
, and
- * 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
| information
| impaired
- * | unavailable
).
- * 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-type
- The type of zone, for example, local-zone
.
- * 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, for example, local-zone
.
Describes a Reserved Instance whose queued purchase was successfully deleted.
+ */ +export interface SuccessfulQueuedPurchaseDeletion { /** - *The names of the Availability Zones, Local Zones, and Wavelength Zones.
+ *The ID of the Reserved Instance.
*/ - ZoneNames?: string[]; + ReservedInstancesId?: string; +} +export namespace SuccessfulQueuedPurchaseDeletion { /** - *The IDs of the Availability Zones, Local Zones, and Wavelength Zones.
+ * @internal */ - ZoneIds?: string[]; + export const filterSensitiveLog = (obj: SuccessfulQueuedPurchaseDeletion): any => ({ + ...obj, + }); +} +export interface DeleteQueuedReservedInstancesResult { /** - *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.
+ *Information about the queued purchases that were successfully deleted.
*/ - AllAvailabilityZones?: boolean; + SuccessfulQueuedPurchaseDeletions?: SuccessfulQueuedPurchaseDeletion[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the queued purchases that could not be deleted.
*/ - DryRun?: boolean; + FailedQueuedPurchaseDeletions?: FailedQueuedPurchaseDeletion[]; } -export namespace DescribeAvailabilityZonesRequest { +export namespace DeleteQueuedReservedInstancesResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeAvailabilityZonesRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteQueuedReservedInstancesResult): any => ({ ...obj, }); } -/** - *Describes a message about an Availability Zone, Local Zone, or Wavelength Zone.
- */ -export interface AvailabilityZoneMessage { +export interface DeleteRouteRequest { /** - *The message about the Availability Zone, Local Zone, or Wavelength Zone.
+ *The IPv4 CIDR range for the route. The value you specify must match the CIDR for the route exactly.
*/ - Message?: string; -} + DestinationCidrBlock?: string; -export namespace AvailabilityZoneMessage { /** - * @internal + *The IPv6 CIDR range for the route. The value you specify must match the CIDR for the route exactly.
*/ - export const filterSensitiveLog = (obj: AvailabilityZoneMessage): any => ({ - ...obj, - }); -} - -export type AvailabilityZoneOptInStatus = "not-opted-in" | "opt-in-not-required" | "opted-in"; - -export type AvailabilityZoneState = "available" | "impaired" | "information" | "unavailable"; + DestinationIpv6CidrBlock?: string; -/** - *Describes Availability Zones, Local Zones, and Wavelength Zones.
- */ -export interface AvailabilityZone { /** - *The state of the Availability Zone, Local Zone, or Wavelength Zone.
+ *The ID of the prefix list for the route.
*/ - State?: AvailabilityZoneState | string; + DestinationPrefixListId?: string; /** - *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
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Any messages about the Availability Zone, Local Zone, or Wavelength Zone.
+ *The ID of the route table.
*/ - Messages?: AvailabilityZoneMessage[]; + RouteTableId: string | undefined; +} +export namespace DeleteRouteRequest { /** - *The name of the Region.
+ * @internal */ - RegionName?: string; + export const filterSensitiveLog = (obj: DeleteRouteRequest): any => ({ + ...obj, + }); +} +export interface DeleteRouteTableRequest { /** - *The name of the Availability Zone, Local Zone, or Wavelength Zone.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the Availability Zone, Local Zone, or Wavelength Zone.
+ *The ID of the route table.
*/ - ZoneId?: string; + RouteTableId: string | undefined; +} +export namespace DeleteRouteTableRequest { /** - *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
.
The name of the network border group.
+ *The ID of the security group. Required for a nondefault VPC.
*/ - NetworkBorderGroup?: string; + GroupId?: string; /** - *The type of zone. The valid values are availability-zone
,
- * local-zone
, and wavelength-zone
.
[EC2-Classic, default VPC] The name of the security group. You can specify either the security group name or the security group ID.
*/ - ZoneType?: string; + GroupName?: string; /** - *The name of the zone that handles some of the Local Zone or Wavelength Zone control plane - * operations, such as API calls.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the zone that handles some of the Local Zone or Wavelength Zone control plane - * operations, such as API calls.
+ * @internal */ - ParentZoneId?: string; + export const filterSensitiveLog = (obj: DeleteSecurityGroupRequest): any => ({ + ...obj, + }); } -export namespace AvailabilityZone { +export interface DeleteSnapshotRequest { + /** + *The ID of the EBS snapshot.
+ */ + SnapshotId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains the parameters for DeleteSpotDatafeedSubscription.
+ */ +export interface DeleteSpotDatafeedSubscriptionRequest { /** - *Information about the Availability Zones, Local Zones, and Wavelength Zones.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The bundle task IDs.
- *Default: Describes all your bundle tasks.
+ *The ID of the subnet.
*/ - BundleIds?: string[]; + SubnetId: string | undefined; /** - *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.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the subnet CIDR reservation.
+ */ + SubnetCidrReservationId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
*/
DryRun?: boolean;
}
-export namespace DescribeBundleTasksRequest {
+export namespace DeleteSubnetCidrReservationRequest {
/**
* @internal
*/
- export const filterSensitiveLog = (obj: DescribeBundleTasksRequest): any => ({
+ export const filterSensitiveLog = (obj: DeleteSubnetCidrReservationRequest): any => ({
...obj,
});
}
-export interface DescribeBundleTasksResult {
+export interface DeleteSubnetCidrReservationResult {
/**
- * Information about the bundle tasks.
+ *Information about the deleted subnet CIDR reservation.
*/ - BundleTasks?: BundleTask[]; + DeletedSubnetCidrReservation?: SubnetCidrReservation; } -export namespace DescribeBundleTasksResult { +export namespace DeleteSubnetCidrReservationResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeBundleTasksResult): any => ({ + export const filterSensitiveLog = (obj: DeleteSubnetCidrReservationResult): any => ({ ...obj, }); } -export interface DescribeByoipCidrsRequest { +export interface DeleteTagsRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -4849,2017 +4777,1418 @@ export interface DescribeByoipCidrsRequest {
DryRun?: boolean;
/**
- *
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The IDs of the resources, separated by spaces.
+ *Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.
*/ - MaxResults: number | undefined; + Resources: string[] | undefined; /** - *The token for the next page of results.
+ *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.
*/ - NextToken?: string; + Tags?: Tag[]; } -export namespace DescribeByoipCidrsRequest { +export namespace DeleteTagsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeByoipCidrsRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteTagsRequest): any => ({ ...obj, }); } -export interface DescribeByoipCidrsResult { +export interface DeleteTrafficMirrorFilterRequest { /** - *Information about your address ranges.
+ *The ID of the Traffic Mirror filter.
*/ - ByoipCidrs?: ByoipCidr[]; + TrafficMirrorFilterId: string | undefined; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The IDs of the Capacity Reservation Fleets to describe.
+ *The ID of the Traffic Mirror filter.
*/ - CapacityReservationFleetIds?: string[]; + TrafficMirrorFilterId?: string; +} +export namespace DeleteTrafficMirrorFilterResult { /** - *The token to use to retrieve the next page of results.
+ * @internal */ - NextToken?: string; + export const filterSensitiveLog = (obj: DeleteTrafficMirrorFilterResult): any => ({ + ...obj, + }); +} +export interface DeleteTrafficMirrorFilterRuleRequest { /** - *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.
The ID of the Traffic Mirror rule.
*/ - MaxResults?: number; + TrafficMirrorFilterRuleId: string | undefined; /** - *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.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The ID of the deleted Traffic Mirror rule.
+ */ + TrafficMirrorFilterRuleId?: string; +} + +export namespace DeleteTrafficMirrorFilterRuleResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeCapacityReservationFleetsRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteTrafficMirrorFilterRuleResult): any => ({ ...obj, }); } -/** - *Information about a Capacity Reservation Fleet.
- */ -export interface CapacityReservationFleet { +export interface DeleteTrafficMirrorSessionRequest { /** - *The ID of the Capacity Reservation Fleet.
+ *The ID of the Traffic Mirror session.
*/ - CapacityReservationFleetId?: string; + TrafficMirrorSessionId: string | undefined; /** - *The ARN of the Capacity Reservation Fleet.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
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.
- */ - TotalTargetCapacity?: number; - - /** - *The capacity units that have been fulfilled.
- */ - TotalFulfilledCapacity?: number; - - /** - *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.
The date and time at which the Capacity Reservation Fleet expires.
- */ - EndDate?: Date; - - /** - *The date and time at which the Capacity Reservation Fleet was created.
- */ - CreateTime?: Date; - - /** - *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.
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.
- */ - AllocationStrategy?: string; - - /** - *Information about the instance types for which to reserve the capacity.
- */ - InstanceTypeSpecifications?: FleetCapacityReservation[]; - - /** - *The tags assigned to the Capacity Reservation Fleet.
- */ - Tags?: Tag[]; -} - -export namespace CapacityReservationFleet { - /** - * @internal - */ - export const filterSensitiveLog = (obj: CapacityReservationFleet): any => ({ - ...obj, - }); -} - -export interface DescribeCapacityReservationFleetsResult { - /** - *Information about the Capacity Reservation Fleets.
- */ - CapacityReservationFleets?: CapacityReservationFleet[]; - - /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the Capacity Reservation.
- */ - CapacityReservationIds?: string[]; - - /** - *The token to use to retrieve the next page of results.
- */ - NextToken?: string; - - /** - *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.
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.
- * availability-zone-id
- The Availability Zone ID of the Capacity Reservation.
- * instance-platform
- The type of operating system for which the Capacity Reservation reserves capacity.
- * availability-zone
- The Availability Zone ID 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.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the Capacity Reservations.
- */ - CapacityReservations?: CapacityReservation[]; -} - -export namespace DescribeCapacityReservationsResult { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DescribeCapacityReservationsResult): any => ({ - ...obj, - }); -} - -export interface DescribeCarrierGatewaysRequest { - /** - *One or more carrier gateway IDs.
- */ - CarrierGatewayIds?: string[]; - - /** - *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
: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.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
- */ - NextToken?: string; - - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the carrier gateway.
- */ - CarrierGateways?: CarrierGateway[]; - - /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
One or more filters.
- *
- * group-id
- The ID of a VPC security group that's associated with the instance.
- * instance-id
- The ID of the instance.
- * tag
: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.
- * vpc-id
- The ID of the VPC that the instance is linked to.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more instance IDs. Must be instances linked to a VPC through ClassicLink.
- */ - InstanceIds?: string[]; - - /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Constraint: If the value is greater than 1000, we return only 1000 items.
- */ - MaxResults?: number; - - /** - *The token for the next page of results.
- */ - NextToken?: string; -} - -export namespace DescribeClassicLinkInstancesRequest { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DescribeClassicLinkInstancesRequest): any => ({ - ...obj, - }); -} - -/** - *Describes a linked EC2-Classic instance.
- */ -export interface ClassicLinkInstance { - /** - *A list of security groups.
- */ - Groups?: GroupIdentifier[]; - - /** - *The ID of the instance.
- */ - InstanceId?: string; - - /** - *Any tags assigned to the instance.
- */ - Tags?: Tag[]; - - /** - *The ID of the VPC.
- */ - VpcId?: string; -} - -export namespace ClassicLinkInstance { - /** - * @internal - */ - export const filterSensitiveLog = (obj: ClassicLinkInstance): any => ({ - ...obj, - }); -} - -export interface DescribeClassicLinkInstancesResult { - /** - *Information about one or more linked EC2-Classic instances.
- */ - Instances?: ClassicLinkInstance[]; - - /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the Client VPN endpoint.
- */ - ClientVpnEndpointId: string | undefined; - - /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The token to retrieve the next page of results.
- */ - NextToken?: string; - - /** - *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.
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.
- */ - MaxResults?: number; -} - -export namespace DescribeClientVpnAuthorizationRulesRequest { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DescribeClientVpnAuthorizationRulesRequest): any => ({ - ...obj, - }); -} - -/** - *Information about an authorization rule.
- */ -export interface AuthorizationRule { - /** - *The ID of the Client VPN endpoint with which the authorization rule is associated.
- */ - ClientVpnEndpointId?: string; - - /** - *A brief description of the authorization rule.
- */ - Description?: string; - - /** - *The ID of the Active Directory group to which the authorization rule grants access.
- */ - GroupId?: string; - - /** - *Indicates whether the authorization rule grants access to all clients.
- */ - AccessAll?: boolean; - - /** - *The IPv4 address range, in CIDR notation, of the network to which the authorization rule applies.
- */ - DestinationCidr?: string; - - /** - *The current state of the authorization rule.
- */ - Status?: ClientVpnAuthorizationRuleStatus; -} - -export namespace AuthorizationRule { +export namespace DeleteTrafficMirrorSessionRequest { /** * @internal */ - export const filterSensitiveLog = (obj: AuthorizationRule): any => ({ + export const filterSensitiveLog = (obj: DeleteTrafficMirrorSessionRequest): any => ({ ...obj, }); } -export interface DescribeClientVpnAuthorizationRulesResult { - /** - *Information about the authorization rules.
- */ - AuthorizationRules?: AuthorizationRule[]; - +export interface DeleteTrafficMirrorSessionResult { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the deleted Traffic Mirror session.
*/ - NextToken?: string; + TrafficMirrorSessionId?: string; } -export namespace DescribeClientVpnAuthorizationRulesResult { +export namespace DeleteTrafficMirrorSessionResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeClientVpnAuthorizationRulesResult): any => ({ + export const filterSensitiveLog = (obj: DeleteTrafficMirrorSessionResult): any => ({ ...obj, }); } -export interface DescribeClientVpnConnectionsRequest { - /** - *The ID of the Client VPN endpoint.
- */ - ClientVpnEndpointId: string | undefined; - - /** - *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.
The token to retrieve the next page of results.
- */ - NextToken?: string; - +export interface DeleteTrafficMirrorTargetRequest { /** - *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.
+ *The ID of the Traffic Mirror target.
*/ - MaxResults?: number; + TrafficMirrorTargetId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes the status of a client connection.
- */ -export interface ClientVpnConnectionStatus { - /** - *The state of the client connection.
- */ - Code?: ClientVpnConnectionStatusCode | string; - +export interface DeleteTrafficMirrorTargetResult { /** - *A message about the status of the client connection, if applicable.
+ *The ID of the deleted Traffic Mirror target.
*/ - Message?: string; + TrafficMirrorTargetId?: string; } -export namespace ClientVpnConnectionStatus { +export namespace DeleteTrafficMirrorTargetResult { /** * @internal */ - export const filterSensitiveLog = (obj: ClientVpnConnectionStatus): any => ({ + export const filterSensitiveLog = (obj: DeleteTrafficMirrorTargetResult): any => ({ ...obj, }); } -/** - *Describes a client connection.
- */ -export interface ClientVpnConnection { - /** - *The ID of the Client VPN endpoint to which the client is connected.
- */ - ClientVpnEndpointId?: string; - - /** - *The current date and time.
- */ - Timestamp?: string; - - /** - *The ID of the client connection.
- */ - ConnectionId?: string; - - /** - *The username of the client who established the client connection. This information is only provided - * if Active Directory client authentication is used.
- */ - Username?: string; - - /** - *The date and time the client connection was established.
- */ - ConnectionEstablishedTime?: string; - - /** - *The number of bytes sent by the client.
- */ - IngressBytes?: string; - - /** - *The number of bytes received by the client.
- */ - EgressBytes?: string; - - /** - *The number of packets sent by the client.
- */ - IngressPackets?: string; - - /** - *The number of packets received by the client.
- */ - EgressPackets?: string; - - /** - *The IP address of the client.
- */ - ClientIp?: string; - - /** - *The common name associated with the client. This is either the name of the client certificate, - * or the Active Directory user name.
- */ - CommonName?: string; - - /** - *The current state of the client connection.
- */ - Status?: ClientVpnConnectionStatus; - +export interface DeleteTransitGatewayRequest { /** - *The date and time the client connection was terminated.
+ *The ID of the transit gateway.
*/ - ConnectionEndTime?: string; + TransitGatewayId: string | undefined; /** - *The statuses returned by the client connect handler for posture compliance, if applicable.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the active and terminated client connections.
- */ - Connections?: ClientVpnConnection[]; - +export interface DeleteTransitGatewayResult { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the deleted transit gateway.
*/ - NextToken?: string; + TransitGateway?: TransitGateway; } -export namespace DescribeClientVpnConnectionsResult { +export namespace DeleteTransitGatewayResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeClientVpnConnectionsResult): any => ({ + export const filterSensitiveLog = (obj: DeleteTransitGatewayResult): any => ({ ...obj, }); } -export interface DescribeClientVpnEndpointsRequest { - /** - *The ID of the Client VPN endpoint.
- */ - ClientVpnEndpointIds?: string[]; - +export interface DeleteTransitGatewayConnectRequest { /** - *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.
+ *The ID of the Connect attachment.
*/ - MaxResults?: number; + TransitGatewayAttachmentId: string | undefined; /** - *The token to retrieve the next page of results.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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
).
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Information about the deleted Connect attachment.
*/ - DryRun?: boolean; + TransitGatewayConnect?: TransitGatewayConnect; } -export namespace DescribeClientVpnEndpointsRequest { +export namespace DeleteTransitGatewayConnectResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeClientVpnEndpointsRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteTransitGatewayConnectResult): any => ({ ...obj, }); } -export type AssociatedNetworkType = "vpc"; - -/** - *Describes a target network that is associated with a Client VPN endpoint. A target network is a subnet in a VPC.
- */ -export interface AssociatedTargetNetwork { +export interface DeleteTransitGatewayConnectPeerRequest { /** - *The ID of the subnet.
+ *The ID of the Connect peer.
*/ - NetworkId?: string; + TransitGatewayConnectPeerId: string | undefined; /** - *The target network type.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes an Active Directory.
- */ -export interface DirectoryServiceAuthentication { +export interface DeleteTransitGatewayConnectPeerResult { /** - *The ID of the Active Directory used for authentication.
+ *Information about the deleted Connect peer.
*/ - DirectoryId?: string; + TransitGatewayConnectPeer?: TransitGatewayConnectPeer; } -export namespace DirectoryServiceAuthentication { +export namespace DeleteTransitGatewayConnectPeerResult { /** * @internal */ - export const filterSensitiveLog = (obj: DirectoryServiceAuthentication): any => ({ + export const filterSensitiveLog = (obj: DeleteTransitGatewayConnectPeerResult): any => ({ ...obj, }); } -/** - *Describes the IAM SAML identity providers used for federated authentication.
- */ -export interface FederatedAuthentication { +export interface DeleteTransitGatewayMulticastDomainRequest { /** - *The Amazon Resource Name (ARN) of the IAM SAML identity provider.
+ *The ID of the transit gateway multicast domain.
*/ - SamlProviderArn?: string; + TransitGatewayMulticastDomainId: string | undefined; /** - *The Amazon Resource Name (ARN) of the IAM SAML identity provider for the self-service portal.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the client certificate used for authentication.
- */ -export interface CertificateAuthentication { +export interface DeleteTransitGatewayMulticastDomainResult { /** - *The ARN of the client certificate.
+ *Information about the deleted transit gateway multicast domain.
*/ - ClientRootCertificateChain?: string; + TransitGatewayMulticastDomain?: TransitGatewayMulticastDomain; } -export namespace CertificateAuthentication { +export namespace DeleteTransitGatewayMulticastDomainResult { /** * @internal */ - export const filterSensitiveLog = (obj: CertificateAuthentication): any => ({ + export const filterSensitiveLog = (obj: DeleteTransitGatewayMulticastDomainResult): any => ({ ...obj, }); } -/** - *Describes the authentication methods used by a Client VPN endpoint. For more information, see Authentication - * in the Client VPN Administrator Guide.
- */ -export interface ClientVpnAuthentication { +export interface DeleteTransitGatewayPeeringAttachmentRequest { /** - *The authentication type used.
+ *The ID of the transit gateway peering attachment.
*/ - Type?: ClientVpnAuthenticationType | string; + TransitGatewayAttachmentId: string | undefined; /** - *Information about the Active Directory, if applicable.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the authentication certificates, if applicable.
+ * @internal */ - MutualAuthentication?: CertificateAuthentication; + export const filterSensitiveLog = (obj: DeleteTransitGatewayPeeringAttachmentRequest): any => ({ + ...obj, + }); +} +export interface DeleteTransitGatewayPeeringAttachmentResult { /** - *Information about the IAM SAML identity provider, if applicable.
+ *The transit gateway peering attachment.
*/ - FederatedAuthentication?: FederatedAuthentication; + TransitGatewayPeeringAttachment?: TransitGatewayPeeringAttachment; } -export namespace ClientVpnAuthentication { +export namespace DeleteTransitGatewayPeeringAttachmentResult { /** * @internal */ - export const filterSensitiveLog = (obj: ClientVpnAuthentication): any => ({ + export const filterSensitiveLog = (obj: DeleteTransitGatewayPeeringAttachmentResult): any => ({ ...obj, }); } -export type ClientVpnEndpointAttributeStatusCode = "applied" | "applying"; +export interface DeleteTransitGatewayPrefixListReferenceRequest { + /** + *The ID of the route table.
+ */ + TransitGatewayRouteTableId: string | undefined; -/** - *Describes the status of the Client VPN endpoint attribute.
- */ -export interface ClientVpnEndpointAttributeStatus { /** - *The status code.
+ *The ID of the prefix list.
*/ - Code?: ClientVpnEndpointAttributeStatusCode | string; + PrefixListId: string | undefined; /** - *The status message.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The options for managing connection authorization for new client connections.
- */ -export interface ClientConnectResponseOptions { - /** - *Indicates whether client connect options are enabled.
- */ - Enabled?: boolean; - - /** - *The Amazon Resource Name (ARN) of the Lambda function used for connection authorization.
- */ - LambdaFunctionArn?: string; - +export interface DeleteTransitGatewayPrefixListReferenceResult { /** - *The status of any updates to the client connect options.
+ *Information about the deleted prefix list reference.
*/ - Status?: ClientVpnEndpointAttributeStatus; + TransitGatewayPrefixListReference?: TransitGatewayPrefixListReference; } -export namespace ClientConnectResponseOptions { +export namespace DeleteTransitGatewayPrefixListReferenceResult { /** * @internal */ - export const filterSensitiveLog = (obj: ClientConnectResponseOptions): any => ({ + export const filterSensitiveLog = (obj: DeleteTransitGatewayPrefixListReferenceResult): any => ({ ...obj, }); } -/** - *Information about the client connection logging options for a Client VPN endpoint.
- */ -export interface ConnectionLogResponseOptions { +export interface DeleteTransitGatewayRouteRequest { /** - *Indicates whether client connection logging is enabled for the Client VPN endpoint.
+ *The ID of the transit gateway route table.
*/ - Enabled?: boolean; + TransitGatewayRouteTableId: string | undefined; /** - *The name of the Amazon CloudWatch Logs log group to which connection logging data is published.
+ *The CIDR range for the route. This must match the CIDR for the route exactly.
*/ - CloudwatchLogGroup?: string; + DestinationCidrBlock: string | undefined; /** - *The name of the Amazon CloudWatch Logs log stream to which connection logging data is published.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the route.
+ */ + Route?: TransitGatewayRoute; +} -/** - *Describes a Client VPN endpoint.
- */ -export interface ClientVpnEndpoint { +export namespace DeleteTransitGatewayRouteResult { /** - *The ID of the Client VPN endpoint.
+ * @internal */ - ClientVpnEndpointId?: string; + export const filterSensitiveLog = (obj: DeleteTransitGatewayRouteResult): any => ({ + ...obj, + }); +} +export interface DeleteTransitGatewayRouteTableRequest { /** - *A brief description of the endpoint.
+ *The ID of the transit gateway route table.
*/ - Description?: string; + TransitGatewayRouteTableId: string | undefined; /** - *The current state of the Client VPN endpoint.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The date and time the Client VPN endpoint was created.
+ * @internal */ - CreationTime?: string; + export const filterSensitiveLog = (obj: DeleteTransitGatewayRouteTableRequest): any => ({ + ...obj, + }); +} +export interface DeleteTransitGatewayRouteTableResult { /** - *The date and time the Client VPN endpoint was deleted, if applicable.
+ *Information about the deleted transit gateway route table.
*/ - DeletionTime?: string; + TransitGatewayRouteTable?: TransitGatewayRouteTable; +} +export namespace DeleteTransitGatewayRouteTableResult { /** - *The DNS name to be used by clients when connecting to the Client VPN endpoint.
+ * @internal */ - DnsName?: string; + export const filterSensitiveLog = (obj: DeleteTransitGatewayRouteTableResult): any => ({ + ...obj, + }); +} +export interface DeleteTransitGatewayVpcAttachmentRequest { /** - *The IPv4 address range, in CIDR notation, from which client IP addresses are assigned.
+ *The ID of the attachment.
*/ - ClientCidrBlock?: string; + TransitGatewayAttachmentId: string | undefined; /** - *Information about the DNS servers to be used for DNS resolution.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
+ * @internal */ - SplitTunnel?: boolean; + export const filterSensitiveLog = (obj: DeleteTransitGatewayVpcAttachmentRequest): any => ({ + ...obj, + }); +} +export interface DeleteTransitGatewayVpcAttachmentResult { /** - *The protocol used by the VPN session.
+ *Information about the deleted VPC attachment.
*/ - VpnProtocol?: VpnProtocol | string; + TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment; +} +export namespace DeleteTransitGatewayVpcAttachmentResult { /** - *The transport protocol used by the Client VPN endpoint.
+ * @internal */ - TransportProtocol?: TransportProtocol | string; + export const filterSensitiveLog = (obj: DeleteTransitGatewayVpcAttachmentResult): any => ({ + ...obj, + }); +} +export interface DeleteVolumeRequest { /** - *The port number for the Client VPN endpoint.
+ *The ID of the volume.
*/ - VpnPort?: number; + VolumeId: string | undefined; /** - * @deprecated - * - *Information about the associated target networks. A target network is a subnet in a VPC.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ARN of the server certificate.
+ * @internal */ - ServerCertificateArn?: string; + export const filterSensitiveLog = (obj: DeleteVolumeRequest): any => ({ + ...obj, + }); +} +export interface DeleteVpcRequest { /** - *Information about the authentication method used by the Client VPN endpoint.
+ *The ID of the VPC.
*/ - AuthenticationOptions?: ClientVpnAuthentication[]; + VpcId: string | undefined; /** - *Information about the client connection logging options for the Client VPN endpoint.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Any tags assigned to the Client VPN endpoint.
+ * @internal */ - Tags?: Tag[]; + export const filterSensitiveLog = (obj: DeleteVpcRequest): any => ({ + ...obj, + }); +} +export interface DeleteVpcEndpointConnectionNotificationsRequest { /** - *The IDs of the security groups for the target network.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the VPC.
+ *One or more notification IDs.
*/ - VpcId?: string; + ConnectionNotificationIds: string[] | undefined; +} +export namespace DeleteVpcEndpointConnectionNotificationsRequest { /** - *The URL of the self-service portal.
+ * @internal */ - SelfServicePortalUrl?: string; + export const filterSensitiveLog = (obj: DeleteVpcEndpointConnectionNotificationsRequest): any => ({ + ...obj, + }); +} +export interface DeleteVpcEndpointConnectionNotificationsResult { /** - *The options for managing connection authorization for new client connections.
+ *Information about the notifications that could not be deleted + * successfully.
*/ - ClientConnectOptions?: ClientConnectResponseOptions; + Unsuccessful?: UnsuccessfulItem[]; } -export namespace ClientVpnEndpoint { +export namespace DeleteVpcEndpointConnectionNotificationsResult { /** * @internal */ - export const filterSensitiveLog = (obj: ClientVpnEndpoint): any => ({ + export const filterSensitiveLog = (obj: DeleteVpcEndpointConnectionNotificationsResult): any => ({ ...obj, }); } -export interface DescribeClientVpnEndpointsResult { +/** + *Contains the parameters for DeleteVpcEndpoints.
+ */ +export interface DeleteVpcEndpointsRequest { /** - *Information about the Client VPN endpoints.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
One or more VPC endpoint IDs.
*/ - NextToken?: string; + VpcEndpointIds: string[] | undefined; } -export namespace DescribeClientVpnEndpointsResult { +export namespace DeleteVpcEndpointsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeClientVpnEndpointsResult): any => ({ + export const filterSensitiveLog = (obj: DeleteVpcEndpointsRequest): any => ({ ...obj, }); } -export interface DescribeClientVpnRoutesRequest { +/** + *Contains the output of DeleteVpcEndpoints.
+ */ +export interface DeleteVpcEndpointsResult { /** - *The ID of the Client VPN endpoint.
+ *Information about the VPC endpoints that were not successfully deleted.
*/ - ClientVpnEndpointId: string | undefined; + Unsuccessful?: UnsuccessfulItem[]; +} +export namespace DeleteVpcEndpointsResult { /** - *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.
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.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The token to retrieve the next page of results.
+ *The IDs of one or more services.
*/ - NextToken?: string; + ServiceIds: string[] | undefined; +} +export namespace DeleteVpcEndpointServiceConfigurationsRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Information about the service configurations that were not deleted, if + * applicable.
+ */ + Unsuccessful?: UnsuccessfulItem[]; +} + +export namespace DeleteVpcEndpointServiceConfigurationsResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeClientVpnRoutesRequest): any => ({ + export const filterSensitiveLog = (obj: DeleteVpcEndpointServiceConfigurationsResult): any => ({ ...obj, }); } -/** - *Information about a Client VPN endpoint route.
- */ -export interface ClientVpnRoute { +export interface DeleteVpcPeeringConnectionRequest { /** - *The ID of the Client VPN endpoint with which the route is associated.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The IPv4 address range, in CIDR notation, of the route destination.
+ *The ID of the VPC peering connection.
*/ - DestinationCidr?: string; + VpcPeeringConnectionId: string | undefined; +} +export namespace DeleteVpcPeeringConnectionRequest { /** - *The ID of the subnet through which traffic is routed.
+ * @internal */ - TargetSubnet?: string; + export const filterSensitiveLog = (obj: DeleteVpcPeeringConnectionRequest): any => ({ + ...obj, + }); +} +export interface DeleteVpcPeeringConnectionResult { /** - *The route type.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
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.
Contains the parameters for DeleteVpnConnection.
+ */ +export interface DeleteVpnConnectionRequest { /** - *The current state of the route.
+ *The ID of the VPN connection.
*/ - Status?: ClientVpnRouteStatus; + VpnConnectionId: string | undefined; /** - *A brief description of the route.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
Contains the parameters for DeleteVpnConnectionRoute.
+ */ +export interface DeleteVpnConnectionRouteRequest { /** - *Information about the Client VPN endpoint routes.
+ *The CIDR block associated with the local subnet of the customer network.
*/ - Routes?: ClientVpnRoute[]; + DestinationCidrBlock: string | undefined; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the VPN connection.
*/ - NextToken?: string; + VpnConnectionId: string | undefined; } -export namespace DescribeClientVpnRoutesResult { +export namespace DeleteVpnConnectionRouteRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeClientVpnRoutesResult): any => ({ + export const filterSensitiveLog = (obj: DeleteVpnConnectionRouteRequest): any => ({ ...obj, }); } -export interface DescribeClientVpnTargetNetworksRequest { - /** - *The ID of the Client VPN endpoint.
- */ - ClientVpnEndpointId: string | undefined; - +/** + *Contains the parameters for DeleteVpnGateway.
+ */ +export interface DeleteVpnGatewayRequest { /** - *The IDs of the target network associations.
+ *The ID of the virtual private gateway.
*/ - AssociationIds?: string[]; + VpnGatewayId: string | undefined; /** - *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.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The token to retrieve the next page of results.
+ * @internal */ - NextToken?: string; + export const filterSensitiveLog = (obj: DeleteVpnGatewayRequest): any => ({ + ...obj, + }); +} +export interface DeprovisionByoipCidrRequest { /** - *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.
The address range, in CIDR notation. The prefix must be the same prefix + * that you specified when you provisioned the address range.
*/ - Filters?: Filter[]; + Cidr: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a target network associated with a Client VPN endpoint.
- */ -export interface TargetNetwork { - /** - *The ID of the association.
- */ - AssociationId?: string; - +export interface DeprovisionByoipCidrResult { /** - *The ID of the VPC in which the target network (subnet) is located.
+ *Information about the address range.
*/ - VpcId?: string; + ByoipCidr?: ByoipCidr; +} +export namespace DeprovisionByoipCidrResult { /** - *The ID of the subnet specified as the target network.
+ * @internal */ - TargetNetworkId?: string; + export const filterSensitiveLog = (obj: DeprovisionByoipCidrResult): any => ({ + ...obj, + }); +} +export interface DeprovisionIpamPoolCidrRequest { /** - *The ID of the Client VPN endpoint with which the target network is associated.
+ *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
.
The current state of the target network association.
+ *The ID of the pool that has the CIDR you want to deprovision.
*/ - Status?: AssociationStatus; + IpamPoolId: string | undefined; /** - *The IDs of the security groups applied to the target network association.
+ *The CIDR which you want to deprovision from the pool.
*/ - SecurityGroups?: string[]; + Cidr?: string; } -export namespace TargetNetwork { +export namespace DeprovisionIpamPoolCidrRequest { /** * @internal */ - export const filterSensitiveLog = (obj: TargetNetwork): any => ({ + export const filterSensitiveLog = (obj: DeprovisionIpamPoolCidrRequest): any => ({ ...obj, }); } -export interface DescribeClientVpnTargetNetworksResult { +export enum IpamPoolCidrFailureCode { + cidr_not_available = "cidr-not-available", +} + +/** + *Details related to why an IPAM pool CIDR failed to be provisioned.
+ */ +export interface IpamPoolCidrFailureReason { /** - *Information about the associated target networks.
+ *An error code related to why an IPAM pool CIDR failed to be provisioned.
*/ - ClientVpnTargetNetworks?: TargetNetwork[]; + Code?: IpamPoolCidrFailureCode | string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
A message related to why an IPAM pool CIDR failed to be provisioned.
*/ - NextToken?: string; + Message?: string; } -export namespace DescribeClientVpnTargetNetworksResult { +export namespace IpamPoolCidrFailureReason { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeClientVpnTargetNetworksResult): any => ({ + export const filterSensitiveLog = (obj: IpamPoolCidrFailureReason): any => ({ ...obj, }); } -export interface DescribeCoipPoolsRequest { - /** - *The IDs of the address pools.
- */ - PoolIds?: string[]; - - /** - *The filters. The following are the possible values:
- *
- * coip-pool.pool-id
- *
- * coip-pool.local-gateway-route-table-id
- *
A CIDR provisioned to an IPAM pool.
+ */ +export interface IpamPoolCidr { /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
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
.
The token for the next page of results.
+ *The state of the CIDR.
*/ - NextToken?: string; + State?: IpamPoolCidrState | string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Details related to why an IPAM pool CIDR failed to be provisioned.
*/ - DryRun?: boolean; + FailureReason?: IpamPoolCidrFailureReason; } -export namespace DescribeCoipPoolsRequest { +export namespace IpamPoolCidr { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeCoipPoolsRequest): any => ({ + export const filterSensitiveLog = (obj: IpamPoolCidr): any => ({ ...obj, }); } -/** - *Describes a customer-owned address pool.
- */ -export interface CoipPool { +export interface DeprovisionIpamPoolCidrResult { /** - *The ID of the address pool.
+ *The deprovisioned pool CIDR.
*/ - PoolId?: string; + IpamPoolCidr?: IpamPoolCidr; +} +export namespace DeprovisionIpamPoolCidrResult { /** - *The address ranges of the address pool.
+ * @internal */ - PoolCidrs?: string[]; + export const filterSensitiveLog = (obj: DeprovisionIpamPoolCidrResult): any => ({ + ...obj, + }); +} +export interface DeprovisionPublicIpv4PoolCidrRequest { /** - *The ID of the local gateway route table.
+ *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
.
The tags.
+ *The ID of the pool that you want to deprovision the CIDR from.
*/ - Tags?: Tag[]; + PoolId: string | undefined; /** - *The ARN of the address pool.
+ *The CIDR you want to deprovision from the pool.
*/ - PoolArn?: string; + Cidr: string | undefined; } -export namespace CoipPool { +export namespace DeprovisionPublicIpv4PoolCidrRequest { /** * @internal */ - export const filterSensitiveLog = (obj: CoipPool): any => ({ + export const filterSensitiveLog = (obj: DeprovisionPublicIpv4PoolCidrRequest): any => ({ ...obj, }); } -export interface DescribeCoipPoolsResult { +export interface DeprovisionPublicIpv4PoolCidrResult { /** - *Information about the address pools.
+ *The ID of the pool that you deprovisioned the CIDR from.
*/ - CoipPools?: CoipPool[]; + PoolId?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The deprovisioned CIDRs.
*/ - NextToken?: string; + DeprovisionedAddresses?: string[]; } -export namespace DescribeCoipPoolsResult { +export namespace DeprovisionPublicIpv4PoolCidrResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeCoipPoolsResult): any => ({ + export const filterSensitiveLog = (obj: DeprovisionPublicIpv4PoolCidrResult): any => ({ ...obj, }); } -export interface DescribeConversionTasksRequest { +/** + *Contains the parameters for DeregisterImage.
+ */ +export interface DeregisterImageRequest { /** - *The conversion task IDs.
+ *The ID of the AMI.
*/ - ConversionTaskIds?: string[]; + ImageId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
*/
DryRun?: boolean;
}
-export namespace DescribeConversionTasksRequest {
+export namespace DeregisterImageRequest {
/**
* @internal
*/
- export const filterSensitiveLog = (obj: DescribeConversionTasksRequest): any => ({
+ export const filterSensitiveLog = (obj: DeregisterImageRequest): any => ({
...obj,
});
}
/**
- * Describes a disk image.
+ *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
The checksum computed for the disk image.
+ *Indicates whether to deregister all tag keys in the current Region. Specify false
+ * to deregister all tag keys.
The disk image format.
+ *Information about the tag keys to deregister.
*/ - Format?: DiskImageFormat | string; + InstanceTagKeys?: string[]; +} +export namespace DeregisterInstanceTagAttributeRequest { /** - *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.
+ * @internal + */ + export const filterSensitiveLog = (obj: DeregisterInstanceTagAttributeRequest): any => ({ + ...obj, + }); +} + +export interface DeregisterInstanceEventNotificationAttributesRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The size of the disk image, in GiB.
+ *Information about the tag keys to deregister.
*/ - Size?: number; + InstanceTagAttribute?: DeregisterInstanceTagAttributeRequest; } -export namespace DiskImageDescription { +export namespace DeregisterInstanceEventNotificationAttributesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DiskImageDescription): any => ({ + export const filterSensitiveLog = (obj: DeregisterInstanceEventNotificationAttributesRequest): any => ({ ...obj, }); } /** - *Describes a disk image volume.
+ *Describes the registered tag keys for the current Region.
*/ -export interface DiskImageVolumeDescription { +export interface InstanceTagNotificationAttribute { /** - *The volume identifier.
+ *The registered tag keys.
*/ - Id?: string; + InstanceTagKeys?: string[]; /** - *The size of the volume, in GiB.
+ *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.
Describes an import volume task.
- */ -export interface ImportInstanceVolumeDetailItem { - /** - *The Availability Zone where the resulting instance will reside.
- */ - AvailabilityZone?: string; - +export interface DeregisterInstanceEventNotificationAttributesResult { /** - *The number of bytes converted so far.
+ *The resulting set of tag keys.
*/ - BytesConverted?: number; + InstanceTagAttribute?: InstanceTagNotificationAttribute; +} +export namespace DeregisterInstanceEventNotificationAttributesResult { /** - *A description of the task.
+ * @internal */ - Description?: string; + export const filterSensitiveLog = (obj: DeregisterInstanceEventNotificationAttributesResult): any => ({ + ...obj, + }); +} +export interface DeregisterTransitGatewayMulticastGroupMembersRequest { /** - *The image.
+ *The ID of the transit gateway multicast domain.
*/ - Image?: DiskImageDescription; + TransitGatewayMulticastDomainId?: string; /** - *The status of the import of this particular disk image.
+ *The IP address assigned to the transit gateway multicast group.
*/ - Status?: string; + GroupIpAddress?: string; /** - *The status information or errors related to the disk image.
+ *The IDs of the group members' network interfaces.
*/ - StatusMessage?: string; + NetworkInterfaceIds?: string[]; /** - *The volume.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes an import instance task.
+ *Describes the deregistered transit gateway multicast group members.
*/ -export interface ImportInstanceTaskDetails { - /** - *A description of the task.
- */ - Description?: string; - +export interface TransitGatewayMulticastDeregisteredGroupMembers { /** - *The ID of the instance.
+ *The ID of the transit gateway multicast domain.
*/ - InstanceId?: string; + TransitGatewayMulticastDomainId?: string; /** - *The instance operating system.
+ *The network interface IDs of the deregistered members.
*/ - Platform?: PlatformValues | string; + DeregisteredNetworkInterfaceIds?: string[]; /** - *The volumes.
+ *The IP address assigned to the transit gateway multicast group.
*/ - Volumes?: ImportInstanceVolumeDetailItem[]; + GroupIpAddress?: string; } -export namespace ImportInstanceTaskDetails { +export namespace TransitGatewayMulticastDeregisteredGroupMembers { /** * @internal */ - export const filterSensitiveLog = (obj: ImportInstanceTaskDetails): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayMulticastDeregisteredGroupMembers): any => ({ ...obj, }); } -/** - *Describes an import volume task.
- */ -export interface ImportVolumeTaskDetails { +export interface DeregisterTransitGatewayMulticastGroupMembersResult { /** - *The Availability Zone where the resulting volume will reside.
+ *Information about the deregistered members.
*/ - AvailabilityZone?: string; + DeregisteredMulticastGroupMembers?: TransitGatewayMulticastDeregisteredGroupMembers; +} +export namespace DeregisterTransitGatewayMulticastGroupMembersResult { /** - *The number of bytes converted so far.
+ * @internal */ - BytesConverted?: number; + export const filterSensitiveLog = (obj: DeregisterTransitGatewayMulticastGroupMembersResult): any => ({ + ...obj, + }); +} +export interface DeregisterTransitGatewayMulticastGroupSourcesRequest { /** - *The description you provided when starting the import volume task.
+ *The ID of the transit gateway multicast domain.
*/ - Description?: string; + TransitGatewayMulticastDomainId?: string; /** - *The image.
+ *The IP address assigned to the transit gateway multicast group.
*/ - Image?: DiskImageDescription; + GroupIpAddress?: string; /** - *The volume.
+ *The IDs of the group sources' network interfaces.
*/ - Volume?: DiskImageVolumeDescription; + NetworkInterfaceIds?: string[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a conversion task.
+ *Describes the deregistered transit gateway multicast group sources.
*/ -export interface ConversionTask { +export interface TransitGatewayMulticastDeregisteredGroupSources { + /** + *The ID of the transit gateway multicast domain.
+ */ + TransitGatewayMulticastDomainId?: string; + /** - *The ID of the conversion task.
+ *The network interface IDs of the non-registered members.
*/ - ConversionTaskId?: string; + DeregisteredNetworkInterfaceIds?: string[]; /** - *The time when the task expires. If the upload isn't complete before the expiration time, we automatically cancel - * the task.
+ *The IP address assigned to the transit gateway multicast group.
*/ - ExpirationTime?: string; + GroupIpAddress?: string; +} +export namespace TransitGatewayMulticastDeregisteredGroupSources { /** - *If the task is for importing an instance, this contains information about the import instance task.
+ * @internal */ - ImportInstance?: ImportInstanceTaskDetails; + export const filterSensitiveLog = (obj: TransitGatewayMulticastDeregisteredGroupSources): any => ({ + ...obj, + }); +} +export interface DeregisterTransitGatewayMulticastGroupSourcesResult { /** - *If the task is for importing a volume, this contains information about the import volume task.
+ *Information about the deregistered group sources.
*/ - ImportVolume?: ImportVolumeTaskDetails; + DeregisteredMulticastGroupSources?: TransitGatewayMulticastDeregisteredGroupSources; +} +export namespace DeregisterTransitGatewayMulticastGroupSourcesResult { /** - *The state of the conversion task.
+ * @internal */ - State?: ConversionTaskState | string; + export const filterSensitiveLog = (obj: DeregisterTransitGatewayMulticastGroupSourcesResult): any => ({ + ...obj, + }); +} +export interface DescribeAccountAttributesRequest { /** - *The status message related to the conversion task.
+ *The account attribute names.
*/ - StatusMessage?: string; + AttributeNames?: (AccountAttributeName | string)[]; /** - *Any tags assigned to the task.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the conversion tasks.
+ *Information about the account attributes.
*/ - ConversionTasks?: ConversionTask[]; + AccountAttributes?: AccountAttribute[]; } -export namespace DescribeConversionTasksResult { +export namespace DescribeAccountAttributesResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeConversionTasksResult): any => ({ + export const filterSensitiveLog = (obj: DescribeAccountAttributesResult): any => ({ ...obj, }); } /** - *Contains the parameters for DescribeCustomerGateways.
+ *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.
*/ -export interface DescribeCustomerGatewaysRequest { +export interface Filter { + /** + *The name of the filter. Filter names are case-sensitive.
+ */ + Name?: string; + /** - *One or more customer gateway IDs.
- *Default: Describes all your customer gateways.
+ *The filter values. Filter values are case-sensitive.
*/ - CustomerGatewayIds?: string[]; + Values?: string[]; +} +export namespace Filter { /** - *One or more filters.
- *One or more filters. Filter names and values are case-sensitive.
+ *
- * bgp-asn
- The customer gateway's Border Gateway Protocol (BGP)
- * Autonomous System Number (ASN).
+ * allocation-id
- [EC2-VPC] The allocation ID for the address.
- * customer-gateway-id
- The ID of the customer gateway.
+ * association-id
- [EC2-VPC] The association ID for the address.
- * ip-address
- The IP address of the customer gateway's
- * Internet-routable external interface.
+ * domain
- Indicates whether the address is for use in EC2-Classic (standard
)
+ * or in a VPC (vpc
).
- * state
- The state of the customer gateway (pending
|
- * available
| deleting
|
- * deleted
).
+ * instance-id
- The ID of the instance the address is associated with, if any.
- * type
- The type of customer gateway. Currently, the only
- * supported type is ipsec.1
.
+ * 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
- [EC2-VPC] 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
- [EC2-VPC] The private IP address associated with the Elastic IP address.
+ * public-ip
- The Elastic IP address, or the carrier IP address.
@@ -6875,87 +6204,59 @@ export interface DescribeCustomerGatewaysRequest { Filters?: Filter[]; /** - *
Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
One or more Elastic IP addresses.
+ *Default: Describes all your Elastic IP addresses.
+ */ + PublicIps?: string[]; + + /** + *[EC2-VPC] Information about the allocation IDs.
+ */ + AllocationIds?: string[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains the output of DescribeCustomerGateways.
- */ -export interface DescribeCustomerGatewaysResult { +export interface DescribeAddressesResult { /** - *Information about one or more customer gateways.
+ *Information about the Elastic IP addresses.
*/ - CustomerGateways?: CustomerGateway[]; + Addresses?: Address[]; } -export namespace DescribeCustomerGatewaysResult { +export namespace DescribeAddressesResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeCustomerGatewaysResult): any => ({ + export const filterSensitiveLog = (obj: DescribeAddressesResult): any => ({ ...obj, }); } -export interface DescribeDhcpOptionsRequest { - /** - *The IDs of one or more DHCP options sets.
- *Default: Describes all your DHCP options sets.
- */ - DhcpOptionsIds?: string[]; - +export interface DescribeAddressesAttributeRequest { /** - *One or more 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
: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.
[EC2-VPC] The allocation IDs.
*/ - Filters?: Filter[]; + AllocationIds?: string[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The attribute of the IP address.
*/ - DryRun?: boolean; + Attribute?: AddressAttributeName | string; /** *The token for the next page of results.
@@ -6963,26 +6264,32 @@ export interface DescribeDhcpOptionsRequest { NextToken?: string; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about one or more DHCP options sets.
+ *Information about the IP addresses.
*/ - DhcpOptions?: DhcpOptions[]; + Addresses?: AddressAttribute[]; /** *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
One or more egress-only internet gateway IDs.
+ * @internal */ - EgressOnlyInternetGatewayIds?: string[]; + export const filterSensitiveLog = (obj: DescribeAggregateIdFormatRequest): any => ({ + ...obj, + }); +} +/** + *Describes the ID format for a resource.
+ */ +export interface IdFormat { /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
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.
*/ - MaxResults?: number; + Deadline?: Date; /** - *The token for the next page of results.
+ *The type of resource.
*/ - NextToken?: string; + Resource?: string; /** - *One or more filters.
- *
- * tag
: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.
Indicates whether longer IDs (17-character IDs) are enabled for the resource.
*/ - Filters?: Filter[]; + UseLongIds?: boolean; } -export namespace DescribeEgressOnlyInternetGatewaysRequest { +export namespace IdFormat { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeEgressOnlyInternetGatewaysRequest): any => ({ + export const filterSensitiveLog = (obj: IdFormat): any => ({ ...obj, }); } -export interface DescribeEgressOnlyInternetGatewaysResult { +export interface DescribeAggregateIdFormatResult { /** - *Information about the egress-only internet gateways.
+ *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.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about each resource's ID format.
*/ - NextToken?: string; + Statuses?: IdFormat[]; } -export namespace DescribeEgressOnlyInternetGatewaysResult { +export namespace DescribeAggregateIdFormatResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeEgressOnlyInternetGatewaysResult): any => ({ + export const filterSensitiveLog = (obj: DescribeAggregateIdFormatResult): any => ({ ...obj, }); } -export interface DescribeElasticGpusRequest { - /** - *The Elastic Graphics accelerator IDs.
- */ - ElasticGpuIds?: string[]; - - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The filters.
- *
- * availability-zone
- The Availability Zone in which the
- * Elastic Graphics accelerator resides.
+ * 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
).
- * elastic-gpu-health
- The status of the Elastic Graphics accelerator
- * (OK
| IMPAIRED
).
+ * message
- The Zone message.
- * elastic-gpu-state
- The state of the Elastic Graphics accelerator
- * (ATTACHED
).
+ * opt-in-status
- The opt-in status (opted-in
, and
+ * not-opted-in
| opt-in-not-required
).
- * elastic-gpu-type
- The type of Elastic Graphics accelerator; for example,
- * eg1.medium
.
+ * parent-zoneID
- The ID of the zone that handles some of the Local Zone
+ * and Wavelength Zone control plane operations, such as API calls.
- * instance-id
- The ID of the instance to which the
- * Elastic Graphics accelerator is associated.
+ * 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
| information
| impaired
+ * | unavailable
).
+ * 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-type
- The type of zone, for example, local-zone
.
+ * 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, for example, local-zone
.
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.
The names of the Availability Zones, Local Zones, and Wavelength Zones.
*/ - MaxResults?: number; + ZoneNames?: string[]; /** - *The token to request the next page of results.
+ *The IDs of the Availability Zones, Local Zones, and Wavelength Zones.
*/ - NextToken?: string; -} + ZoneIds?: string[]; -export namespace DescribeElasticGpusRequest { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: DescribeElasticGpusRequest): any => ({ - ...obj, - }); -} - -export enum ElasticGpuStatus { - Impaired = "IMPAIRED", - Ok = "OK", -} + AllAvailabilityZones?: boolean; -/** - *Describes the status of an Elastic Graphics accelerator.
- */ -export interface ElasticGpuHealth { /** - *The health status.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes an Elastic Graphics accelerator.
+ *Describes a message about an Availability Zone, Local Zone, or Wavelength Zone.
*/ -export interface ElasticGpus { - /** - *The ID of the Elastic Graphics accelerator.
- */ - ElasticGpuId?: string; - - /** - *The Availability Zone in the which the Elastic Graphics accelerator resides.
- */ - AvailabilityZone?: string; - - /** - *The type of Elastic Graphics accelerator.
- */ - ElasticGpuType?: string; - - /** - *The status of the Elastic Graphics accelerator.
- */ - ElasticGpuHealth?: ElasticGpuHealth; - - /** - *The state of the Elastic Graphics accelerator.
- */ - ElasticGpuState?: ElasticGpuState | string; - - /** - *The ID of the instance to which the Elastic Graphics accelerator is attached.
- */ - InstanceId?: string; - +export interface AvailabilityZoneMessage { /** - *The tags assigned to the Elastic Graphics accelerator.
+ *The message about the Availability Zone, Local Zone, or Wavelength Zone.
*/ - Tags?: Tag[]; + Message?: string; } -export namespace ElasticGpus { +export namespace AvailabilityZoneMessage { /** * @internal */ - export const filterSensitiveLog = (obj: ElasticGpus): any => ({ + export const filterSensitiveLog = (obj: AvailabilityZoneMessage): any => ({ ...obj, }); } -export interface DescribeElasticGpusResult { - /** - *Information about the Elastic Graphics accelerators.
- */ - ElasticGpuSet?: ElasticGpus[]; +export type AvailabilityZoneOptInStatus = "not-opted-in" | "opt-in-not-required" | "opted-in"; + +export type AvailabilityZoneState = "available" | "impaired" | "information" | "unavailable"; +/** + *Describes Availability Zones, Local Zones, and Wavelength Zones.
+ */ +export interface AvailabilityZone { /** - *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.
+ *The state of the Availability Zone, Local Zone, or Wavelength Zone.
*/ - MaxResults?: number; + State?: AvailabilityZoneState | string; /** - *The token to use to retrieve the next page of results. This value is
- * null
when there are no more results to return.
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
.
Any messages about the Availability Zone, Local Zone, or Wavelength Zone.
*/ - export const filterSensitiveLog = (obj: DescribeElasticGpusResult): any => ({ - ...obj, - }); -} + Messages?: AvailabilityZoneMessage[]; -export interface DescribeExportImageTasksRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The name of the Region.
*/ - DryRun?: boolean; + RegionName?: string; /** - *Filter tasks using the task-state
filter and one of the following values: active
,
- * completed
, deleting
, or deleted
.
The name of the Availability Zone, Local Zone, or Wavelength Zone.
*/ - Filters?: Filter[]; + ZoneName?: string; /** - *The IDs of the export image tasks.
+ *The ID of the Availability Zone, Local Zone, or Wavelength Zone.
*/ - ExportImageTaskIds?: string[]; + ZoneId?: string; /** - *The maximum number of results to return in a single call.
+ *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
.
A token that indicates the next page of results.
+ *The name of the network border group.
*/ - NextToken?: string; -} + NetworkBorderGroup?: string; -export namespace DescribeExportImageTasksRequest { /** - * @internal + *The type of zone. The valid values are availability-zone
,
+ * local-zone
, and wavelength-zone
.
Describes the destination for an export image task.
- */ -export interface ExportTaskS3Location { /** - *The destination Amazon S3 bucket.
+ *The name of the zone that handles some of the Local Zone or Wavelength Zone control plane + * operations, such as API calls.
*/ - S3Bucket?: string; + ParentZoneName?: string; /** - *The prefix (logical hierarchy) in the bucket.
+ *The ID of the zone that handles some of the Local Zone or Wavelength Zone control plane + * operations, such as API calls.
*/ - S3Prefix?: string; + ParentZoneId?: string; } -export namespace ExportTaskS3Location { +export namespace AvailabilityZone { /** * @internal */ - export const filterSensitiveLog = (obj: ExportTaskS3Location): any => ({ + export const filterSensitiveLog = (obj: AvailabilityZone): any => ({ ...obj, }); } -/** - *Describes an export image task.
- */ -export interface ExportImageTask { - /** - *A description of the image being exported.
- */ - Description?: string; - +export interface DescribeAvailabilityZonesResult { /** - *The ID of the export image task.
+ *Information about the Availability Zones, Local Zones, and Wavelength Zones.
*/ - ExportImageTaskId?: string; + AvailabilityZones?: AvailabilityZone[]; +} +export namespace DescribeAvailabilityZonesResult { /** - *The ID of the image.
+ * @internal */ - ImageId?: string; + export const filterSensitiveLog = (obj: DescribeAvailabilityZonesResult): any => ({ + ...obj, + }); +} +export interface DescribeBundleTasksRequest { /** - *The percent complete of the export image task.
+ *The bundle task IDs.
+ *Default: Describes all your bundle tasks.
*/ - Progress?: string; + BundleIds?: string[]; /** - *Information about the destination Amazon S3 bucket.
+ *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.
The status of the export image task. The possible values are active
, completed
,
- * deleting
, and deleted
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The status message for the export image task.
+ * @internal */ - StatusMessage?: string; + export const filterSensitiveLog = (obj: DescribeBundleTasksRequest): any => ({ + ...obj, + }); +} +export interface DescribeBundleTasksResult { /** - *Any tags assigned to the export image task.
+ *Information about the bundle tasks.
*/ - Tags?: Tag[]; + BundleTasks?: BundleTask[]; } -export namespace ExportImageTask { +export namespace DescribeBundleTasksResult { /** * @internal */ - export const filterSensitiveLog = (obj: ExportImageTask): any => ({ + export const filterSensitiveLog = (obj: DescribeBundleTasksResult): any => ({ ...obj, }); } -export interface DescribeExportImageTasksResult { +export interface DescribeByoipCidrsRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the export image tasks.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token to use to get the next page of results. This value is null
when there are no more results
- * to return.
The token for the next page of results.
*/ NextToken?: string; } -export namespace DescribeExportImageTasksResult { +export namespace DescribeByoipCidrsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeExportImageTasksResult): any => ({ + export const filterSensitiveLog = (obj: DescribeByoipCidrsRequest): any => ({ ...obj, }); } -export interface DescribeExportTasksRequest { +export interface DescribeByoipCidrsResult { /** - *The export task IDs.
+ *Information about your address ranges.
*/ - ExportTaskIds?: string[]; + ByoipCidrs?: ByoipCidr[]; /** - *the filters for the export tasks.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the export tasks.
+ *The IDs of the Capacity Reservation Fleets to describe.
*/ - ExportTasks?: ExportTask[]; -} + CapacityReservationFleetIds?: string[]; -export namespace DescribeExportTasksResult { /** - * @internal + *The token to use to retrieve the next page of results.
*/ - export const filterSensitiveLog = (obj: DescribeExportTasksResult): any => ({ - ...obj, - }); -} + NextToken?: string; -export interface DescribeFastSnapshotRestoresRequest { /** - *The filters. The possible values are:
- *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.
One or more filters.
+ *
- * availability-zone
: The Availability Zone of the snapshot.
+ * state
- The state of the Fleet (submitted
| modifying
| active
|
+ * partially_fulfilled
| expiring
| expired
| cancelling
|
+ * cancelled
| failed
).
- * owner-id
: The ID of the Amazon Web Services account that enabled fast snapshot restore on the snapshot.
+ * instance-match-criteria
- The instance matching criteria for the Fleet. Only open
is supported.
- * snapshot-id
: The ID of the snapshot.
+ * tenancy
- The tenancy of the Fleet (default
| dedicated
).
- * state
: The state of fast snapshot restores for the snapshot
- * (enabling
|
- * optimizing
|
- * enabled
|
- * disabling
|
- * disabled
).
+ * allocation-strategy
- The allocation strategy used by the Fleet. Only prioritized
is supported.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
- */ - NextToken?: string; - - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Describes fast snapshot restores for a snapshot.
+ *Information about a Capacity Reservation Fleet.
*/ -export interface DescribeFastSnapshotRestoreSuccessItem { +export interface CapacityReservationFleet { + /** + *The ID of the Capacity Reservation Fleet.
+ */ + CapacityReservationFleetId?: string; + + /** + *The ARN of the Capacity Reservation Fleet.
+ */ + CapacityReservationFleetArn?: string; + /** - *The ID of the snapshot.
+ *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.
The Availability Zone.
+ *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.
*/ - AvailabilityZone?: string; + TotalTargetCapacity?: number; /** - *The state of fast snapshot restores.
+ *The capacity units that have been fulfilled.
*/ - State?: FastSnapshotRestoreStateCode | string; + TotalFulfilledCapacity?: number; /** - *The reason for the state transition. The possible values are as follows:
- *The tenancy of the Capacity Reservation Fleet. Tenancies include:
+ *
- * Client.UserInitiated
- The state successfully transitioned to enabling
or
- * disabling
.
+ * default
- The Capacity Reservation Fleet is created on hardware that is
+ * shared with other Amazon Web Services accounts.
- * Client.UserInitiated - Lifecycle state transition
- The state successfully transitioned
- * to optimizing
, enabled
, or disabled
.
+ * dedicated
- The Capacity Reservation Fleet is created on single-tenant
+ * hardware that is dedicated to a single Amazon Web Services account.
The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.
- */ - OwnerId?: string; + Tenancy?: FleetCapacityReservationTenancy | string; /** - *The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.
+ *The date and time at which the Capacity Reservation Fleet expires.
*/ - OwnerAlias?: string; + EndDate?: Date; /** - *The time at which fast snapshot restores entered the enabling
state.
The date and time at which the Capacity Reservation Fleet was created.
*/ - EnablingTime?: Date; + CreateTime?: Date; /** - *The time at which fast snapshot restores entered the optimizing
state.
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.
The time at which fast snapshot restores entered the enabled
state.
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.
*/ - EnabledTime?: Date; + AllocationStrategy?: string; /** - *The time at which fast snapshot restores entered the disabling
state.
Information about the instance types for which to reserve the capacity.
*/ - DisablingTime?: Date; + InstanceTypeSpecifications?: FleetCapacityReservation[]; /** - *The time at which fast snapshot restores entered the disabled
state.
The tags assigned to the Capacity Reservation Fleet.
*/ - DisabledTime?: Date; + Tags?: Tag[]; } -export namespace DescribeFastSnapshotRestoreSuccessItem { +export namespace CapacityReservationFleet { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeFastSnapshotRestoreSuccessItem): any => ({ + export const filterSensitiveLog = (obj: CapacityReservationFleet): any => ({ ...obj, }); } -export interface DescribeFastSnapshotRestoresResult { +export interface DescribeCapacityReservationFleetsResult { /** - *Information about the state of fast snapshot restores.
+ *Information about the Capacity Reservation Fleets.
*/ - FastSnapshotRestores?: DescribeFastSnapshotRestoreSuccessItem[]; + CapacityReservationFleets?: CapacityReservationFleet[]; /** *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The type of events to describe. By default, all events are described.
- */ - EventType?: FleetEventType | string; - +export interface DescribeCapacityReservationsRequest { /** - *The maximum number of results to return in a single call. Specify a value between 1 and
- * 1000. The default value is 1000. To retrieve the remaining results, make another call with
- * the returned NextToken
value.
The ID of the Capacity Reservation.
*/ - MaxResults?: number; + CapacityReservationIds?: string[]; /** - *The token for the next set of results.
+ *The token to use to retrieve the next page of results.
*/ NextToken?: string; /** - *The ID of the EC2 Fleet.
- */ - FleetId: string | undefined; - - /** - *The start date and time for the events, in UTC format (for example, - * YYYY-MM-DDTHH:MM:SSZ).
- */ - StartTime: Date | undefined; -} - -export namespace DescribeFleetHistoryRequest { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DescribeFleetHistoryRequest): any => ({ - ...obj, - }); -} - -/** - *Describes an EC2 Fleet or Spot Fleet event.
- */ -export interface EventInformation { - /** - *The description of the event.
+ *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.
The event.
- * - *
- * error
events:
- * iamFleetRoleInvalid
- The EC2 Fleet or Spot Fleet does not have the required
- * permissions either to launch or terminate an instance.
One or more filters.
+ *
- * allLaunchSpecsTemporarilyBlacklisted
- None of the configurations
- * are valid, and several attempts to launch instances have failed. For more
- * information, see the description of the event.
+ * instance-type
- The type of instance for which the Capacity Reservation reserves capacity.
- * spotInstanceCountLimitExceeded
- You've reached the limit on the
- * number of Spot Instances that you can launch.
+ * owner-id
- The ID of the Amazon Web Services account that owns the Capacity Reservation.
- * spotFleetRequestConfigurationInvalid
- The configuration is not
- * valid. For more information, see the description of the event.
+ * availability-zone-id
- The Availability Zone ID of the Capacity Reservation.
- * 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.
+ * instance-platform
- The type of operating system for which the Capacity Reservation reserves capacity.
- * cancelled
- The EC2 Fleet or 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.
+ * availability-zone
- The Availability Zone ID of the Capacity Reservation.
- * cancelled_running
- The EC2 Fleet or 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.
+ * 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.
- * cancelled_terminating
- The EC2 Fleet or Spot Fleet request is canceled and
- * its instances are terminating. The request remains in this state until all
- * instances are terminated.
+ * outpost-arn
- The Amazon Resource Name (ARN) of the Outpost on which the Capacity Reservation was created.
- * 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.
+ * 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.
- * 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.
+ * start-date
- The date and time at which the Capacity Reservation was started.
- * modify_succeeded
- The EC2 Fleet or Spot Fleet request was modified.
+ * 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.
- * submitted
- The EC2 Fleet or Spot Fleet request is being evaluated and Amazon EC2
- * is preparing to launch the target number of instances.
+ * 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.
- * progress
- The EC2 Fleet or Spot Fleet request is in the process of being fulfilled.
+ * 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.
- * instanceChange
events:
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the Capacity Reservations.
+ */ + CapacityReservations?: CapacityReservation[]; +} + +export namespace DescribeCapacityReservationsResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeCapacityReservationsResult): any => ({ + ...obj, + }); +} + +export interface DescribeCarrierGatewaysRequest { + /** + *One or more carrier gateway IDs.
+ */ + CarrierGatewayIds?: string[]; + + /** + *One or more filters.
*
- * launched
- A new instance was launched.
- * terminated
- An instance was terminated by the user.
carrier-gateway-id
- The ID of the carrier gateway.
*
- * 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.
state
- The state of the carrier gateway (pending
|
+ * failed
| available
| deleting
| deleted
).
*
- * 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.
owner-id
- The Amazon Web Services account ID of the owner of the carrier gateway.
*
- * launchSpecTemporarilyBlacklisted
- The configuration is not valid
- * and several attempts to launch instances have failed. For more information, see
- * the description of the event.
tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
*
- * launchSpecUnusable
- The price in a launch specification is not
- * valid because it is below the Spot price.
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.
*
- * registerWithLoadBalancersFailed
- An attempt to register
- * instances with load balancers failed. For more information, see the description
- * of the event.
vpc-id
- The ID of the VPC associated with the carrier gateway.
* The ID of the instance. This information is available only for
- * instanceChange
events.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ */ + NextToken?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes an event in the history of an EC2 Fleet.
- */ -export interface HistoryRecordEntry { - /** - *Information about the event.
- */ - EventInformation?: EventInformation; - +export interface DescribeCarrierGatewaysResult { /** - *The event type.
+ *Information about the carrier gateway.
*/ - EventType?: FleetEventType | string; + CarrierGateways?: CarrierGateway[]; /** - *The date and time of the event, in UTC format (for example, - * YYYY-MM-DDTHH:MM:SSZ).
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the events in the history of the EC2 Fleet.
+ *One or more filters.
+ *
+ * group-id
- The ID of a VPC security group that's associated with the instance.
+ * instance-id
- The ID of the instance.
+ * tag
: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.
+ * vpc-id
- The ID of the VPC that the instance is linked to.
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 results, this value is not
- * present.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The token for the next set of results.
+ *One or more instance IDs. Must be instances linked to a VPC through ClassicLink.
*/ - NextToken?: string; + InstanceIds?: string[]; /** - *The ID of the EC Fleet.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Constraint: If the value is greater than 1000, we return only 1000 items.
*/ - FleetId?: string; + MaxResults?: number; /** - *The start date and time for the events, in UTC format (for example, - * YYYY-MM-DDTHH:MM:SSZ).
+ *The token for the next page of results.
*/ - StartTime?: Date; + NextToken?: string; } -export namespace DescribeFleetHistoryResult { +export namespace DescribeClassicLinkInstancesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeFleetHistoryResult): any => ({ + export const filterSensitiveLog = (obj: DescribeClassicLinkInstancesRequest): any => ({ ...obj, }); } -export interface DescribeFleetInstancesRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes a linked EC2-Classic instance.
+ */ +export interface ClassicLinkInstance { /** - *The maximum number of results to return in a single call. Specify a value between 1 and
- * 1000. The default value is 1000. To retrieve the remaining results, make another call with
- * the returned NextToken
value.
A list of security groups.
*/ - MaxResults?: number; + Groups?: GroupIdentifier[]; /** - *The token for the next set of results.
+ *The ID of the instance.
*/ - NextToken?: string; + InstanceId?: string; /** - *The ID of the EC2 Fleet.
+ *Any tags assigned to the instance.
*/ - FleetId: string | undefined; + Tags?: Tag[]; /** - *The filters.
- *
- * instance-type
- The instance type.
The ID of the VPC.
*/ - Filters?: Filter[]; + VpcId?: string; } -export namespace DescribeFleetInstancesRequest { +export namespace ClassicLinkInstance { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeFleetInstancesRequest): any => ({ + export const filterSensitiveLog = (obj: ClassicLinkInstance): any => ({ ...obj, }); } -export interface DescribeFleetInstancesResult { +export interface DescribeClassicLinkInstancesResult { /** - *The running instances. This list is refreshed periodically and might be out of - * date.
+ *Information about one or more linked EC2-Classic instances.
*/ - ActiveInstances?: ActiveInstance[]; + Instances?: ClassicLinkInstance[]; /** - *The token for the next set of results.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the EC2 Fleet.
- */ - FleetId?: string; } -export namespace DescribeFleetInstancesResult { +export namespace DescribeClassicLinkInstancesResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeFleetInstancesResult): any => ({ + export const filterSensitiveLog = (obj: DescribeClassicLinkInstancesResult): any => ({ ...obj, }); } -export interface DescribeFleetsRequest { +export interface DescribeClientVpnAuthorizationRulesRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the Client VPN endpoint.
*/ - DryRun?: boolean; + ClientVpnEndpointId: string | undefined; /** - *The maximum number of results to return in a single call. Specify a value between 1 and
- * 1000. The default value is 1000. To retrieve the remaining results, make another call with
- * the returned NextToken
value.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The token for the next set of results.
+ *The token to retrieve the next page of results.
*/ NextToken?: string; /** - *The ID of the EC2 Fleets.
- */ - FleetIds?: string[]; - - /** - *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
).
One or more filters. Filter names and values are case-sensitive.
+ *
- * fleet-state
- The state of the EC2 Fleet (submitted
|
- * active
| deleted
| failed
|
- * deleted-running
| deleted-terminating
|
- * modifying
).
description
- The description of the authorization rule.
*
- * replace-unhealthy-instances
- Indicates whether EC2 Fleet should replace
- * unhealthy instances (true
| false
).
destination-cidr
- The CIDR of the network to which the authorization rule
+ * applies.
*
- * type
- The type of request (instant
|
- * request
| maintain
).
group-id
- The ID of the Active Directory group to which the authorization rule grants access.
* Describes the instances that could not be launched by the fleet.
- */ -export interface DescribeFleetError { - /** - *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.
- */ - LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse; - - /** - *Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.
- */ - Lifecycle?: InstanceLifecycle | string; - - /** - *The error code that indicates why the instance could not be launched. For more - * information about error codes, see Error Codes.
- */ - ErrorCode?: string; /** - *The error message that describes why the instance could not be launched. For more - * information about error messages, see Error Codes.
+ *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.
*/ - ErrorMessage?: string; + MaxResults?: number; } -export namespace DescribeFleetError { +export namespace DescribeClientVpnAuthorizationRulesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeFleetError): any => ({ + export const filterSensitiveLog = (obj: DescribeClientVpnAuthorizationRulesRequest): any => ({ ...obj, }); } /** - *Describes the instances that were launched by the fleet.
+ *Information about an authorization rule.
*/ -export interface DescribeFleetsInstances { - /** - *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.
- */ - LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse; - - /** - *Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.
- */ - Lifecycle?: InstanceLifecycle | string; - +export interface AuthorizationRule { /** - *The IDs of the instances.
+ *The ID of the Client VPN endpoint with which the authorization rule is associated.
*/ - InstanceIds?: string[]; + ClientVpnEndpointId?: string; /** - *The instance type.
+ *A brief description of the authorization rule.
*/ - InstanceType?: _InstanceType | string; + Description?: string; /** - *The value is Windows
for Windows instances. Otherwise, the value is
- * blank.
The ID of the Active Directory group to which the authorization rule grants access.
*/ - Platform?: PlatformValues | string; -} + GroupId?: string; -export namespace DescribeFleetsInstances { /** - * @internal + *Indicates whether the authorization rule grants access to all clients.
*/ - export const filterSensitiveLog = (obj: DescribeFleetsInstances): any => ({ - ...obj, - }); -} + AccessAll?: boolean; -/** - *Describes a launch template and overrides.
- */ -export interface FleetLaunchTemplateConfig { /** - *The launch template.
+ *The IPv4 address range, in CIDR notation, of the network to which the authorization rule applies.
*/ - LaunchTemplateSpecification?: FleetLaunchTemplateSpecification; + DestinationCidr?: string; /** - *Any parameters that you specify override the same parameters in the launch - * template.
+ *The current state of the authorization rule.
*/ - Overrides?: FleetLaunchTemplateOverrides[]; + Status?: ClientVpnAuthorizationRuleStatus; } -export namespace FleetLaunchTemplateConfig { +export namespace AuthorizationRule { /** * @internal */ - export const filterSensitiveLog = (obj: FleetLaunchTemplateConfig): any => ({ + export const filterSensitiveLog = (obj: AuthorizationRule): any => ({ ...obj, }); } -/** - *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.
- */ -export interface CapacityReservationOptions { +export interface DescribeClientVpnAuthorizationRulesResult { + /** + *Information about the authorization rules.
+ */ + AuthorizationRules?: AuthorizationRule[]; + /** - *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.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Describes the configuration of On-Demand Instances in an EC2 Fleet.
- */ -export interface OnDemandOptions { - /** - *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
- *
The strategy for using unused Capacity Reservations for fulfilling On-Demand - * capacity.
- *Supported only for fleets of type instant
.
The ID of the Client VPN endpoint.
*/ - CapacityReservationOptions?: CapacityReservationOptions; + ClientVpnEndpointId: string | undefined; /** - *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
.
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.
Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.
- *Supported only for fleets of type instant
.
The token to retrieve the next page of results.
*/ - SingleAvailabilityZone?: boolean; + NextToken?: string; /** - *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
- *
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.
*/ - MinTargetCapacity?: number; + MaxResults?: number; /** - *The maximum amount per hour for On-Demand Instances that you're willing to pay.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an - * elevated risk of being interrupted.
+ *Describes the status of a client connection.
*/ -export interface FleetSpotCapacityRebalance { - /** - *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.
The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot - * Instance after launching a new replacement Spot Instance.
- *Valid only when replacementStrategy
is set to launch-before-terminate
.
Valid values: Minimum value of 120
seconds. Maximum value of 7200
seconds.
The state of the client connection.
*/ - export const filterSensitiveLog = (obj: FleetSpotCapacityRebalance): any => ({ - ...obj, - }); -} + Code?: ClientVpnConnectionStatusCode | string; -/** - *The strategies for managing your Spot Instances that are at an elevated risk of being - * interrupted.
- */ -export interface FleetSpotMaintenanceStrategies { /** - *The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an - * elevated risk of being interrupted.
+ *A message about the status of the client connection, if applicable.
*/ - CapacityRebalance?: FleetSpotCapacityRebalance; + Message?: string; } -export namespace FleetSpotMaintenanceStrategies { +export namespace ClientVpnConnectionStatus { /** * @internal */ - export const filterSensitiveLog = (obj: FleetSpotMaintenanceStrategies): any => ({ + export const filterSensitiveLog = (obj: ClientVpnConnectionStatus): any => ({ ...obj, }); } /** - *Describes the configuration of Spot Instances in an EC2 Fleet.
+ *Describes a client connection.
*/ -export interface SpotOptions { +export interface ClientVpnConnection { /** - *The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance - * pools specified by the EC2 Fleet.
- *
- * lowest-price
- EC2 Fleet launches instances from the Spot Instance pools with the lowest
- * price.
- * diversified
- EC2 Fleet launches instances from all of the Spot Instance pools that you
- * specify.
- * capacity-optimized
(recommended) - EC2 Fleet launches instances from Spot Instance pools
- * with optimal capacity for the number of instances that are launching. 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 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.
Default: lowest-price
- *
The ID of the Client VPN endpoint to which the client is connected.
*/ - AllocationStrategy?: SpotAllocationStrategy | string; + ClientVpnEndpointId?: string; /** - *The strategies for managing your workloads on your Spot Instances that will be - * interrupted. Currently only the capacity rebalance strategy is available.
+ *The current date and time.
*/ - MaintenanceStrategies?: FleetSpotMaintenanceStrategies; + Timestamp?: string; /** - *The behavior when a Spot Instance is interrupted.
- *Default: terminate
- *
The ID of the client connection.
*/ - InstanceInterruptionBehavior?: SpotInstanceInterruptionBehavior | string; + ConnectionId?: string; /** - *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.
+ *The username of the client who established the client connection. This information is only provided + * if Active Directory client authentication is used.
*/ - InstancePoolsToUseCount?: number; + Username?: string; /** - *Indicates that the fleet uses a single instance type to launch all Spot Instances in the - * fleet.
- *Supported only for fleets of type instant
.
The date and time the client connection was established.
*/ - SingleInstanceType?: boolean; + ConnectionEstablishedTime?: string; /** - *Indicates that the fleet launches all Spot Instances into a single Availability Zone.
- *Supported only for fleets of type instant
.
The number of bytes sent by the client.
*/ - SingleAvailabilityZone?: boolean; + IngressBytes?: string; /** - *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
- *
The number of bytes received by the client.
*/ - MinTargetCapacity?: number; + EgressBytes?: string; /** - *The maximum amount per hour for Spot Instances that you're willing to pay.
+ *The number of packets sent by the client.
*/ - MaxTotalPrice?: string; -} + IngressPackets?: string; -export namespace SpotOptions { /** - * @internal + *The number of packets received by the client.
*/ - export const filterSensitiveLog = (obj: SpotOptions): any => ({ - ...obj, - }); -} + EgressPackets?: string; -/** - *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.
The number of units to request, filled using
- * DefaultTargetCapacityType
.
The IP address of the client.
*/ - TotalTargetCapacity?: number; + ClientIp?: string; /** - *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.
+ *The common name associated with the client. This is either the name of the client certificate, + * or the Active Directory user name.
*/ - OnDemandTargetCapacity?: number; + CommonName?: string; /** - *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.
+ *The current state of the client connection.
*/ - SpotTargetCapacity?: number; + Status?: ClientVpnConnectionStatus; /** - *The default TotalTargetCapacity
, which is either Spot
or
- * On-Demand
.
The date and time the client connection was terminated.
*/ - DefaultTargetCapacityType?: DefaultTargetCapacityType | string; + ConnectionEndTime?: string; /** - *The unit for the target capacity.
- *Default: units
(translates to number of instances)
The statuses returned by the client connect handler for posture compliance, if applicable.
*/ - TargetCapacityUnitType?: TargetCapacityUnitType | string; + PostureComplianceStatuses?: string[]; } -export namespace TargetCapacitySpecification { +export namespace ClientVpnConnection { /** * @internal */ - export const filterSensitiveLog = (obj: TargetCapacitySpecification): any => ({ + export const filterSensitiveLog = (obj: ClientVpnConnection): any => ({ ...obj, }); } -/** - *Describes an EC2 Fleet.
- */ -export interface FleetData { +export interface DescribeClientVpnConnectionsResult { /** - *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.
Information about the active and terminated client connections.
*/ - ActivityStatus?: FleetActivityStatus | string; + Connections?: ClientVpnConnection[]; /** - *The creation date and time of the EC2 Fleet.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the EC2 Fleet.
+ * @internal */ - FleetId?: string; + export const filterSensitiveLog = (obj: DescribeClientVpnConnectionsResult): any => ({ + ...obj, + }); +} +export interface DescribeClientVpnEndpointsRequest { /** - *The state of the EC2 Fleet.
+ *The ID of the Client VPN endpoint.
*/ - FleetState?: FleetStateCode | string; + ClientVpnEndpointIds?: string[]; /** - *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
+ *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.
*/ - ClientToken?: string; + MaxResults?: number; /** - *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.
+ *The token to retrieve the next page of results.
*/ - ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy | string; + NextToken?: string; /** - *The number of units fulfilled by this request compared to the set target - * capacity.
+ *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
).
The number of units fulfilled by this request compared to the set target On-Demand - * capacity.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The launch template and overrides.
+ * @internal */ - LaunchTemplateConfigs?: FleetLaunchTemplateConfig[]; + export const filterSensitiveLog = (obj: DescribeClientVpnEndpointsRequest): any => ({ + ...obj, + }); +} - /** - *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.
Describes a target network that is associated with a Client VPN endpoint. A target network is a subnet in a VPC.
+ */ +export interface AssociatedTargetNetwork { /** - *Indicates whether running instances should be terminated when the EC2 Fleet expires.
+ *The ID of the subnet.
*/ - TerminateInstancesWithExpiration?: boolean; + NetworkId?: string; /** - *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
.
The target network type.
*/ - Type?: FleetType | string; + NetworkType?: AssociatedNetworkType | string; +} +export namespace AssociatedTargetNetwork { /** - *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.
+ * @internal */ - ValidFrom?: Date; + export const filterSensitiveLog = (obj: AssociatedTargetNetwork): any => ({ + ...obj, + }); +} +/** + *Describes an Active Directory.
+ */ +export interface DirectoryServiceAuthentication { /** - *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.
+ *The ID of the Active Directory used for authentication.
*/ - ValidUntil?: Date; + DirectoryId?: string; +} +export namespace DirectoryServiceAuthentication { /** - *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.
Describes the IAM SAML identity providers used for federated authentication.
+ */ +export interface FederatedAuthentication { /** - *The configuration of Spot Instances in an EC2 Fleet.
+ *The Amazon Resource Name (ARN) of the IAM SAML identity provider.
*/ - SpotOptions?: SpotOptions; + SamlProviderArn?: string; /** - *The allocation strategy of On-Demand Instances in an EC2 Fleet.
+ *The Amazon Resource Name (ARN) of the IAM SAML identity provider for the self-service portal.
*/ - OnDemandOptions?: OnDemandOptions; + SelfServiceSamlProviderArn?: string; +} +export namespace FederatedAuthentication { /** - *The tags for an EC2 Fleet resource.
+ * @internal */ - Tags?: Tag[]; + export const filterSensitiveLog = (obj: FederatedAuthentication): any => ({ + ...obj, + }); +} +/** + *Information about the client certificate used for authentication.
+ */ +export interface CertificateAuthentication { /** - *Information about the instances that could not be launched by the fleet. Valid only when
- * Type is set to instant
.
The ARN of the client certificate.
*/ - Errors?: DescribeFleetError[]; + ClientRootCertificateChain?: string; +} +export namespace CertificateAuthentication { /** - *Information about the instances that were launched by the fleet. Valid only when
- * Type is set to instant
.
Describes the authentication methods used by a Client VPN endpoint. For more information, see Authentication + * in the Client VPN Administrator Guide.
+ */ +export interface ClientVpnAuthentication { /** - *Reserved.
+ *The authentication type used.
*/ - Context?: string; -} + Type?: ClientVpnAuthenticationType | string; -export namespace FleetData { /** - * @internal + *Information about the Active Directory, if applicable.
*/ - export const filterSensitiveLog = (obj: FleetData): any => ({ - ...obj, - }); -} + ActiveDirectory?: DirectoryServiceAuthentication; -export interface DescribeFleetsResult { /** - *The token for the next set of results.
+ *Information about the authentication certificates, if applicable.
*/ - NextToken?: string; + MutualAuthentication?: CertificateAuthentication; /** - *Information about the EC2 Fleets.
+ *Information about the IAM SAML identity provider, if applicable.
*/ - Fleets?: FleetData[]; + FederatedAuthentication?: FederatedAuthentication; } -export namespace DescribeFleetsResult { +export namespace ClientVpnAuthentication { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeFleetsResult): any => ({ + export const filterSensitiveLog = (obj: ClientVpnAuthentication): any => ({ ...obj, }); } -export interface DescribeFlowLogsRequest { +export type ClientVpnEndpointAttributeStatusCode = "applied" | "applying"; + +/** + *Describes the status of the Client VPN endpoint attribute.
+ */ +export interface ClientVpnEndpointAttributeStatus { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The status code.
*/ - DryRun?: boolean; + Code?: ClientVpnEndpointAttributeStatusCode | string; /** - *One or more filters.
- *
- * deliver-log-status
- The status of the logs delivery (SUCCESS
|
- * FAILED
).
- * log-destination-type
- The type of destination to which the flow
- * log publishes data. Possible destination types include
- * cloud-watch-logs
and s3
.
- * 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
: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.
The status message.
*/ - Filter?: Filter[]; + Message?: string; +} +export namespace ClientVpnEndpointAttributeStatus { /** - *One or more flow log IDs.
- *Constraint: Maximum of 1000 flow log IDs.
+ * @internal */ - FlowLogIds?: string[]; + export const filterSensitiveLog = (obj: ClientVpnEndpointAttributeStatus): any => ({ + ...obj, + }); +} +/** + *The options for managing connection authorization for new client connections.
+ */ +export interface ClientConnectResponseOptions { /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Indicates whether client connect options are enabled.
*/ - MaxResults?: number; + Enabled?: boolean; /** - *The token for the next page of results.
+ *The Amazon Resource Name (ARN) of the Lambda function used for connection authorization.
*/ - NextToken?: string; + LambdaFunctionArn?: string; + + /** + *The status of any updates to the client connect options.
+ */ + Status?: ClientVpnEndpointAttributeStatus; } -export namespace DescribeFlowLogsRequest { +export namespace ClientConnectResponseOptions { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeFlowLogsRequest): any => ({ + export const filterSensitiveLog = (obj: ClientConnectResponseOptions): any => ({ ...obj, }); } /** - *Describes the destination options for a flow log.
+ *Information about the client connection logging options for a Client VPN endpoint.
*/ -export interface DestinationOptionsResponse { +export interface ConnectionLogResponseOptions { /** - *The format for the flow log.
+ *Indicates whether client connection logging is enabled for the Client VPN endpoint.
*/ - FileFormat?: DestinationFileFormat | string; + Enabled?: boolean; /** - *Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3.
+ *The name of the Amazon CloudWatch Logs log group to which connection logging data is published.
*/ - HiveCompatiblePartitions?: boolean; + CloudwatchLogGroup?: string; /** - *Indicates whether to partition the flow log per hour.
+ *The name of the Amazon CloudWatch Logs log stream to which connection logging data is published.
*/ - PerHourPartition?: boolean; + CloudwatchLogStream?: string; } -export namespace DestinationOptionsResponse { +export namespace ConnectionLogResponseOptions { /** * @internal */ - export const filterSensitiveLog = (obj: DestinationOptionsResponse): any => ({ + export const filterSensitiveLog = (obj: ConnectionLogResponseOptions): any => ({ ...obj, }); } +export type VpnProtocol = "openvpn"; + /** - *Describes a flow log.
+ *Describes a Client VPN endpoint.
*/ -export interface FlowLog { - /** - *The date and time the flow log was created.
- */ - CreationTime?: Date; - +export interface ClientVpnEndpoint { /** - *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.
The ID of the Client VPN endpoint.
*/ - DeliverLogsErrorMessage?: string; + ClientVpnEndpointId?: string; /** - *The ARN of the IAM role that posts logs to CloudWatch Logs.
+ *A brief description of the endpoint.
*/ - DeliverLogsPermissionArn?: string; + Description?: string; /** - *The status of the logs delivery (SUCCESS
| FAILED
).
The current state of the Client VPN endpoint.
*/ - DeliverLogsStatus?: string; + Status?: ClientVpnEndpointStatus; /** - *The flow log ID.
+ *The date and time the Client VPN endpoint was created.
*/ - FlowLogId?: string; + CreationTime?: string; /** - *The status of the flow log (ACTIVE
).
The date and time the Client VPN endpoint was deleted, if applicable.
*/ - FlowLogStatus?: string; + DeletionTime?: string; /** - *The name of the flow log group.
+ *The DNS name to be used by clients when connecting to the Client VPN endpoint.
*/ - LogGroupName?: string; + DnsName?: string; /** - *The ID of the resource on which the flow log was created.
+ *The IPv4 address range, in CIDR notation, from which client IP addresses are assigned.
*/ - ResourceId?: string; + ClientCidrBlock?: string; /** - *The type of traffic captured for the flow log.
+ *Information about the DNS servers to be used for DNS resolution.
*/ - TrafficType?: TrafficType | string; + DnsServers?: string[]; /** - *The type of destination to which the flow log data is published. Flow log data can be - * published to CloudWatch Logs or Amazon S3.
+ *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.
*/ - LogDestinationType?: LogDestinationType | string; + SplitTunnel?: boolean; /** - *The destination to which the flow log data is published. Flow log data can be - * published to an CloudWatch Logs log group or an Amazon S3 bucket. If the flow log publishes to CloudWatch Logs, - * this element indicates the Amazon Resource Name (ARN) of the CloudWatch Logs log group to which - * the data is published. If the flow log publishes to Amazon S3, this element indicates the ARN - * of the Amazon S3 bucket to which the data is published.
+ *The protocol used by the VPN session.
*/ - LogDestination?: string; + VpnProtocol?: VpnProtocol | string; /** - *The format of the flow log record.
+ *The transport protocol used by the Client VPN endpoint.
*/ - LogFormat?: string; + TransportProtocol?: TransportProtocol | string; /** - *The tags for the flow log.
+ *The port number for the Client VPN endpoint.
*/ - Tags?: Tag[]; + VpnPort?: number; /** - *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
- *
Information about the associated target networks. A target network is a subnet in a VPC.
*/ - MaxAggregationInterval?: number; + AssociatedTargetNetworks?: AssociatedTargetNetwork[]; /** - *The destination options.
+ *The ARN of the server certificate.
*/ - DestinationOptions?: DestinationOptionsResponse; -} + ServerCertificateArn?: string; -export namespace FlowLog { /** - * @internal + *Information about the authentication method used by the Client VPN endpoint.
*/ - export const filterSensitiveLog = (obj: FlowLog): any => ({ - ...obj, - }); -} + AuthenticationOptions?: ClientVpnAuthentication[]; -export interface DescribeFlowLogsResult { /** - *Information about the flow logs.
+ *Information about the client connection logging options for the Client VPN endpoint.
*/ - FlowLogs?: FlowLog[]; + ConnectionLogOptions?: ConnectionLogResponseOptions; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Any tags assigned to the Client VPN endpoint.
*/ - NextToken?: string; -} + Tags?: Tag[]; -export namespace DescribeFlowLogsResult { /** - * @internal + *The IDs of the security groups for the target network.
*/ - export const filterSensitiveLog = (obj: DescribeFlowLogsResult): any => ({ - ...obj, - }); -} - -export type FpgaImageAttributeName = "description" | "loadPermission" | "name" | "productCodes"; + SecurityGroupIds?: string[]; -export interface DescribeFpgaImageAttributeRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the VPC.
*/ - DryRun?: boolean; + VpcId?: string; /** - *The ID of the AFI.
+ *The URL of the self-service portal.
*/ - FpgaImageId: string | undefined; + SelfServicePortalUrl?: string; /** - *The AFI attribute.
+ *The options for managing connection authorization for new client connections.
*/ - Attribute: FpgaImageAttributeName | string | undefined; + ClientConnectOptions?: ClientConnectResponseOptions; } -export namespace DescribeFpgaImageAttributeRequest { +export namespace ClientVpnEndpoint { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeFpgaImageAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: ClientVpnEndpoint): any => ({ ...obj, }); } -export type PermissionGroup = "all"; - -/** - *Describes a load permission.
- */ -export interface LoadPermission { +export interface DescribeClientVpnEndpointsResult { /** - *The Amazon Web Services account ID.
+ *Information about the Client VPN endpoints.
*/ - UserId?: string; + ClientVpnEndpoints?: ClientVpnEndpoint[]; /** - *The name of the group.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the Client VPN endpoint.
+ */ + ClientVpnEndpointId: string | undefined; + + /** + *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.
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.
+ */ + MaxResults?: number; -/** - *Describes a product code.
- */ -export interface ProductCode { /** - *The product code.
+ *The token to retrieve the next page of results.
*/ - ProductCodeId?: string; + NextToken?: string; /** - *The type of product code.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Describes an Amazon FPGA image (AFI) attribute.
+ *Information about a Client VPN endpoint route.
*/ -export interface FpgaImageAttribute { +export interface ClientVpnRoute { /** - *The ID of the AFI.
+ *The ID of the Client VPN endpoint with which the route is associated.
*/ - FpgaImageId?: string; + ClientVpnEndpointId?: string; /** - *The name of the AFI.
+ *The IPv4 address range, in CIDR notation, of the route destination.
*/ - Name?: string; + DestinationCidr?: string; /** - *The description of the AFI.
+ *The ID of the subnet through which traffic is routed.
*/ - Description?: string; + TargetSubnet?: string; + + /** + *The route type.
+ */ + Type?: string; + + /** + *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.
The load permissions.
+ *The current state of the route.
*/ - LoadPermissions?: LoadPermission[]; + Status?: ClientVpnRouteStatus; /** - *The product codes.
+ *A brief description of the route.
*/ - ProductCodes?: ProductCode[]; + Description?: string; } -export namespace FpgaImageAttribute { +export namespace ClientVpnRoute { /** * @internal */ - export const filterSensitiveLog = (obj: FpgaImageAttribute): any => ({ + export const filterSensitiveLog = (obj: ClientVpnRoute): any => ({ ...obj, }); } -export interface DescribeFpgaImageAttributeResult { +export interface DescribeClientVpnRoutesResult { + /** + *Information about the Client VPN endpoint routes.
+ */ + Routes?: ClientVpnRoute[]; + /** - *Information about the attribute.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the Client VPN endpoint.
*/ - DryRun?: boolean; + ClientVpnEndpointId: string | undefined; /** - *The AFI IDs.
+ *The IDs of the target network associations.
*/ - FpgaImageIds?: string[]; + AssociationIds?: string[]; /** - *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
).
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.
*/ - Owners?: string[]; + MaxResults?: number; /** - *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
).
The token to retrieve the next page of results.
+ */ + NextToken?: string; + + /** + *One or more filters. Filter names and values are case-sensitive.
+ *
- * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
association-id
- The ID of the association.
*
- * 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.
target-network-id
- The ID of the subnet specified as the target network.
*
- * update-time
- The time of the most recent update.
vpc-id
- The ID of the VPC in which the target network is located.
* The token to retrieve the next page of results.
- */ - NextToken?: string; - - /** - *The maximum number of results to return in a single call.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Describes the data that identifies an Amazon FPGA image (AFI) on the PCI bus.
+ *Describes a target network associated with a Client VPN endpoint.
*/ -export interface PciId { +export interface TargetNetwork { + /** + *The ID of the association.
+ */ + AssociationId?: string; + + /** + *The ID of the VPC in which the target network (subnet) is located.
+ */ + VpcId?: string; + /** - *The ID of the device.
+ *The ID of the subnet specified as the target network.
*/ - DeviceId?: string; + TargetNetworkId?: string; /** - *The ID of the vendor.
+ *The ID of the Client VPN endpoint with which the target network is associated.
*/ - VendorId?: string; + ClientVpnEndpointId?: string; /** - *The ID of the subsystem.
+ *The current state of the target network association.
*/ - SubsystemId?: string; + Status?: AssociationStatus; /** - *The ID of the vendor for the subsystem.
+ *The IDs of the security groups applied to the target network association.
*/ - SubsystemVendorId?: string; + SecurityGroups?: string[]; } -export namespace PciId { +export namespace TargetNetwork { /** * @internal */ - export const filterSensitiveLog = (obj: PciId): any => ({ + export const filterSensitiveLog = (obj: TargetNetwork): any => ({ ...obj, }); } -export type FpgaImageStateCode = "available" | "failed" | "pending" | "unavailable"; +export interface DescribeClientVpnTargetNetworksResult { + /** + *Information about the associated target networks.
+ */ + ClientVpnTargetNetworks?: TargetNetwork[]; -/** - *Describes the state of the bitstream generation process for an Amazon FPGA image (AFI).
- */ -export interface FpgaImageState { /** - *The state. The following are the possible values:
- *
- * pending
- AFI bitstream generation is in progress.
- * available
- The AFI is available for use.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The IDs of the address pools.
+ */ + PoolIds?: string[]; + + /** + *The filters. The following are the possible values:
+ *
- * failed
- AFI bitstream generation failed.
coip-pool.pool-id
+ *
*
- * unavailable
- The AFI is no longer available for use.
coip-pool.local-gateway-route-table-id
+ *
* If the state is failed
, this is the error message.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ */ + NextToken?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes an Amazon FPGA image (AFI).
+ *Describes a customer-owned address pool.
*/ -export interface FpgaImage { +export interface CoipPool { /** - *The FPGA image identifier (AFI ID).
+ *The ID of the address pool.
*/ - FpgaImageId?: string; + PoolId?: string; /** - *The global FPGA image identifier (AGFI ID).
+ *The address ranges of the address pool.
*/ - FpgaImageGlobalId?: string; + PoolCidrs?: string[]; /** - *The name of the AFI.
+ *The ID of the local gateway route table.
*/ - Name?: string; + LocalGatewayRouteTableId?: string; + + /** + *The tags.
+ */ + Tags?: Tag[]; /** - *The description of the AFI.
+ *The ARN of the address pool.
*/ - Description?: string; + PoolArn?: string; +} +export namespace CoipPool { /** - *The version of the Amazon Web Services Shell that was used to create the bitstream.
+ * @internal */ - ShellVersion?: string; + export const filterSensitiveLog = (obj: CoipPool): any => ({ + ...obj, + }); +} +export interface DescribeCoipPoolsResult { /** - *Information about the PCI bus.
+ *Information about the address pools.
*/ - PciId?: PciId; + CoipPools?: CoipPool[]; /** - *Information about the state of the AFI.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The date and time the AFI was created.
+ * @internal */ - CreateTime?: Date; + export const filterSensitiveLog = (obj: DescribeCoipPoolsResult): any => ({ + ...obj, + }); +} +export interface DescribeConversionTasksRequest { /** - *The time of the most recent update to the AFI.
+ *The conversion task IDs.
*/ - UpdateTime?: Date; + ConversionTaskIds?: string[]; /** - *The ID of the Amazon Web Services account that owns the AFI.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The alias of the AFI owner. Possible values include self
, amazon
, and aws-marketplace
.
Describes a disk image.
+ */ +export interface DiskImageDescription { /** - *The product codes for the AFI.
+ *The checksum computed for the disk image.
*/ - ProductCodes?: ProductCode[]; + Checksum?: string; /** - *Any tags assigned to the AFI.
+ *The disk image format.
*/ - Tags?: Tag[]; + Format?: DiskImageFormat | string; /** - *Indicates whether the AFI is public.
+ *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.
*/ - Public?: boolean; + ImportManifestUrl?: string; /** - *Indicates whether data retention support is enabled for the AFI.
+ *The size of the disk image, in GiB.
*/ - DataRetentionSupport?: boolean; + Size?: number; } -export namespace FpgaImage { +export namespace DiskImageDescription { /** * @internal */ - export const filterSensitiveLog = (obj: FpgaImage): any => ({ + export const filterSensitiveLog = (obj: DiskImageDescription): any => ({ ...obj, }); } -export interface DescribeFpgaImagesResult { +/** + *Describes a disk image volume.
+ */ +export interface DiskImageVolumeDescription { /** - *Information about the FPGA images.
+ *The volume identifier.
*/ - FpgaImages?: FpgaImage[]; + Id?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The size of the volume, in GiB.
*/ - NextToken?: string; + Size?: number; } -export namespace DescribeFpgaImagesResult { +export namespace DiskImageVolumeDescription { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeFpgaImagesResult): any => ({ + export const filterSensitiveLog = (obj: DiskImageVolumeDescription): any => ({ ...obj, }); } -export interface DescribeHostReservationOfferingsRequest { +/** + *Describes an import volume task.
+ */ +export interface ImportInstanceVolumeDetailItem { /** - *The filters.
- *
- * instance-family
- The instance family of the offering (for example,
- * m4
).
- * payment-option
- The payment option (NoUpfront
|
- * PartialUpfront
| AllUpfront
).
The Availability Zone where the resulting instance will reside.
+ */ + AvailabilityZone?: string; + + /** + *The number of bytes converted so far.
*/ - Filter?: Filter[]; + BytesConverted?: number; /** - *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.
+ *A description of the task.
*/ - MaxDuration?: number; + Description?: string; /** - *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.
The image.
*/ - MaxResults?: number; + Image?: DiskImageDescription; /** - *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.
+ *The status of the import of this particular disk image.
*/ - MinDuration?: number; + Status?: string; /** - *The token to use to retrieve the next page of results.
+ *The status information or errors related to the disk image.
*/ - NextToken?: string; + StatusMessage?: string; /** - *The ID of the reservation offering.
+ *The volume.
*/ - OfferingId?: string; + Volume?: DiskImageVolumeDescription; } -export namespace DescribeHostReservationOfferingsRequest { +export namespace ImportInstanceVolumeDetailItem { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeHostReservationOfferingsRequest): any => ({ + export const filterSensitiveLog = (obj: ImportInstanceVolumeDetailItem): any => ({ ...obj, }); } -export enum PaymentOption { - ALL_UPFRONT = "AllUpfront", - NO_UPFRONT = "NoUpfront", - PARTIAL_UPFRONT = "PartialUpfront", -} - /** - *Details about the Dedicated Host Reservation offering.
+ *Describes an import instance task.
*/ -export interface HostOffering { +export interface ImportInstanceTaskDetails { /** - *The currency of the offering.
+ *A description of the task.
*/ - CurrencyCode?: CurrencyCodeValues | string; + Description?: string; /** - *The duration of the offering (in seconds).
+ *The ID of the instance.
*/ - Duration?: number; + InstanceId?: string; /** - *The hourly price of the offering.
+ *The instance operating system.
*/ - HourlyPrice?: string; + Platform?: PlatformValues | string; /** - *The instance family of the offering.
+ *The volumes.
*/ - InstanceFamily?: string; + Volumes?: ImportInstanceVolumeDetailItem[]; +} +export namespace ImportInstanceTaskDetails { /** - *The ID of the offering.
+ * @internal */ - OfferingId?: string; + export const filterSensitiveLog = (obj: ImportInstanceTaskDetails): any => ({ + ...obj, + }); +} +/** + *Describes an import volume task.
+ */ +export interface ImportVolumeTaskDetails { /** - *The available payment option.
+ *The Availability Zone where the resulting volume will reside.
*/ - PaymentOption?: PaymentOption | string; + AvailabilityZone?: string; /** - *The upfront price of the offering. Does not apply to No Upfront - * offerings.
+ *The number of bytes converted so far.
*/ - UpfrontPrice?: string; -} + BytesConverted?: number; -export namespace HostOffering { /** - * @internal + *The description you provided when starting the import volume task.
*/ - export const filterSensitiveLog = (obj: HostOffering): any => ({ - ...obj, - }); -} + Description?: string; -export interface DescribeHostReservationOfferingsResult { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The image.
*/ - NextToken?: string; + Image?: DiskImageDescription; /** - *Information about the offerings.
+ *The volume.
*/ - OfferingSet?: HostOffering[]; + Volume?: DiskImageVolumeDescription; } -export namespace DescribeHostReservationOfferingsResult { +export namespace ImportVolumeTaskDetails { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeHostReservationOfferingsResult): any => ({ + export const filterSensitiveLog = (obj: ImportVolumeTaskDetails): any => ({ ...obj, }); } + +export type ConversionTaskState = "active" | "cancelled" | "cancelling" | "completed"; diff --git a/clients/client-ec2/src/models/models_3.ts b/clients/client-ec2/src/models/models_3.ts index 2397a6c4fd5d..8c4b0f0d502d 100644 --- a/clients/client-ec2/src/models/models_3.ts +++ b/clients/client-ec2/src/models/models_3.ts @@ -1,241 +1,383 @@ import { _InstanceType, ActiveInstance, - ActivityStatus, AllocationState, - AllocationStrategy, AllowsMultipleInstanceTypes, AlternatePathHint, + AnalysisAclRule, + AnalysisComponent, + AnalysisRouteTableRoute, + AnalysisSecurityGroupRule, AttachmentStatus, AttributeValue, AutoPlacement, - BatchState, CurrencyCodeValues, - FleetLaunchTemplateSpecification, - FleetType, + CustomerGateway, + DhcpOptions, + EgressOnlyInternetGateway, + FleetExcessCapacityTerminationPolicy, HostnameType, HostRecovery, IamInstanceProfile, IamInstanceProfileAssociation, - IamInstanceProfileSpecification, InstanceEventWindow, - IpPermission, - Placement, + PathComponent, + PortRange, ReservedInstancesListing, - ResourceType, - SecurityGroupRule, Tag, - TagSpecification, - TargetCapacityUnitType, Tenancy, } from "./models_0"; import { BlockDeviceMapping, CapacityReservationPreference, CapacityReservationTargetResponse, + DefaultTargetCapacityType, + DestinationFileFormat, + ExportTask, + FleetCapacityReservationUsageStrategy, + FleetLaunchTemplateOverrides, + FleetLaunchTemplateSpecification, + FleetOnDemandAllocationStrategy, + FleetReplacementStrategy, + FleetType, GroupIdentifier, - InstanceInterruptionBehavior, InstanceIpv6Address, - InstanceRequirements, + InstanceLifecycle, InternetGateway, - Ipv4PrefixSpecificationRequest, - Ipv6PrefixSpecificationRequest, + Ipam, + IpamPool, + IpamScope, KeyType, LaunchTemplate, + LaunchTemplateAndOverridesResponse, LaunchTemplateVersion, LocalGatewayRouteTableVpcAssociation, + LogDestinationType, ManagedPrefixList, NatGateway, NetworkAcl, + NetworkInsightsAccessScope, NetworkInsightsPath, NetworkInterface, NetworkInterfaceAttachment, NetworkInterfacePermission, NetworkInterfaceStatus, + Placement, PlacementGroup, PlatformValues, - PortRange, - PrivateIpAddressSpecification, ReplaceRootVolumeTask, - RouteTable, - Snapshot, - SnapshotState, - SpotDatafeedSubscription, - SpotInstanceStateFault, - SpotInstanceType, - StorageTier, + SpotAllocationStrategy, + SpotInstanceInterruptionBehavior, + TargetCapacityUnitType, + TrafficType, } from "./models_1"; import { - EventInformation, + ConversionTaskState, Filter, + FleetStateCode, IdFormat, + ImportInstanceTaskDetails, + ImportVolumeTaskDetails, InstanceTagNotificationAttribute, - PaymentOption, - PermissionGroup, - ProductCode, } from "./models_2"; -export interface DescribeHostReservationsRequest { +/** + *Describes a conversion task.
+ */ +export interface ConversionTask { /** - *The filters.
+ *The ID of the conversion task.
+ */ + ConversionTaskId?: string; + + /** + *The time when the task expires. If the upload isn't complete before the expiration time, we automatically cancel + * the task.
+ */ + ExpirationTime?: string; + + /** + *If the task is for importing an instance, this contains information about the import instance task.
+ */ + ImportInstance?: ImportInstanceTaskDetails; + + /** + *If the task is for importing a volume, this contains information about the import volume task.
+ */ + ImportVolume?: ImportVolumeTaskDetails; + + /** + *The state of the conversion task.
+ */ + State?: ConversionTaskState | string; + + /** + *The status message related to the conversion task.
+ */ + StatusMessage?: string; + + /** + *Any tags assigned to the task.
+ */ + Tags?: Tag[]; +} + +export namespace ConversionTask { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ConversionTask): any => ({ + ...obj, + }); +} + +export interface DescribeConversionTasksResult { + /** + *Information about the conversion tasks.
+ */ + ConversionTasks?: ConversionTask[]; +} + +export namespace DescribeConversionTasksResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeConversionTasksResult): any => ({ + ...obj, + }); +} + +/** + *Contains the parameters for DescribeCustomerGateways.
+ */ +export interface DescribeCustomerGatewaysRequest { + /** + *One or more customer gateway IDs.
+ *Default: Describes all your customer gateways.
+ */ + CustomerGatewayIds?: string[]; + + /** + *One or more filters.
*
- * instance-family
- The instance family (for example,
- * m4
).
bgp-asn
- The customer gateway's Border Gateway Protocol (BGP)
+ * Autonomous System Number (ASN).
*
- * payment-option
- The payment option (NoUpfront
|
- * PartialUpfront
| AllUpfront
).
customer-gateway-id
- The ID of the customer gateway.
*
- * state
- The state of the reservation (payment-pending
- * | payment-failed
| active
|
- * retired
).
ip-address
- The IP address of the customer gateway's
+ * Internet-routable external interface.
*
- * tag:
- 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.
+ *
+ * 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
: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.
The host reservation IDs.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
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.
Contains the output of DescribeCustomerGateways.
+ */ +export interface DescribeCustomerGatewaysResult { /** - *The token to use to retrieve the next page of results.
+ *Information about one or more customer gateways.
*/ - NextToken?: string; + CustomerGateways?: CustomerGateway[]; } -export namespace DescribeHostReservationsRequest { +export namespace DescribeCustomerGatewaysResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeHostReservationsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeCustomerGatewaysResult): any => ({ ...obj, }); } -export enum ReservationState { - ACTIVE = "active", - PAYMENT_FAILED = "payment-failed", - PAYMENT_PENDING = "payment-pending", - RETIRED = "retired", -} - -/** - *Details about the Dedicated Host Reservation and associated Dedicated - * Hosts.
- */ -export interface HostReservation { +export interface DescribeDhcpOptionsRequest { /** - *The number of Dedicated Hosts the reservation is associated with.
+ *The IDs of one or more DHCP options sets.
+ *Default: Describes all your DHCP options sets.
*/ - Count?: number; + DhcpOptionsIds?: string[]; /** - *The currency in which the upfrontPrice
and hourlyPrice
- * amounts are specified. At this time, the only supported currency is
- * USD
.
One or more 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
: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.
The length of the reservation's term, specified in seconds. Can be 31536000
- * (1 year)
| 94608000 (3 years)
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The date and time that the reservation ends.
+ *The token for the next page of results.
*/ - End?: Date; + NextToken?: string; /** - *The IDs of the Dedicated Hosts associated with the reservation.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The ID of the reservation that specifies the associated Dedicated Hosts.
+ * @internal */ - HostReservationId?: string; + export const filterSensitiveLog = (obj: DescribeDhcpOptionsRequest): any => ({ + ...obj, + }); +} +export interface DescribeDhcpOptionsResult { /** - *The hourly price of the reservation.
+ *Information about one or more DHCP options sets.
*/ - HourlyPrice?: string; + DhcpOptions?: DhcpOptions[]; /** - *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.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the reservation. This remains the same regardless of which Dedicated - * Hosts are associated with it.
+ * @internal */ - OfferingId?: string; + export const filterSensitiveLog = (obj: DescribeDhcpOptionsResult): any => ({ + ...obj, + }); +} +export interface DescribeEgressOnlyInternetGatewaysRequest { /** - *The payment option selected for this reservation.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The date and time that the reservation started.
+ *One or more egress-only internet gateway IDs.
*/ - Start?: Date; + EgressOnlyInternetGatewayIds?: string[]; /** - *The state of the reservation.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The upfront price of the reservation.
+ *The token for the next page of results.
*/ - UpfrontPrice?: string; + NextToken?: string; /** - *Any tags assigned to the Dedicated Host Reservation.
+ *One or more filters.
+ *
+ * tag
: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.
Details about the reservation's configuration.
+ *Information about the egress-only internet gateways.
*/ - HostReservationSet?: HostReservation[]; + EgressOnlyInternetGateways?: EgressOnlyInternetGateway[]; /** *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The Elastic Graphics accelerator IDs.
+ */ + ElasticGpuIds?: string[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The filters.
*
- * auto-placement
- Whether auto-placement is enabled or disabled
- * (on
| off
).
- * availability-zone
- The Availability Zone of the
- * host.
availability-zone
- The Availability Zone in which the
+ * Elastic Graphics accelerator resides.
*
- * client-token
- The idempotency token that you provided when you
- * allocated the host.
elastic-gpu-health
- The status of the Elastic Graphics accelerator
+ * (OK
| IMPAIRED
).
*
- * host-reservation-id
- The ID of the reservation assigned to
- * this host.
elastic-gpu-state
- The state of the Elastic Graphics accelerator
+ * (ATTACHED
).
*
- * instance-type
- The instance type size that the Dedicated Host
- * is configured to support.
elastic-gpu-type
- The type of Elastic Graphics accelerator; for example,
+ * eg1.medium
.
*
- * state
- The allocation state of the Dedicated Host
- * (available
| under-assessment
|
- * permanent-failure
| released
|
- * released-permanent-failure
).
instance-id
- The ID of the instance to which the
+ * Elastic Graphics accelerator is associated.
*
- * 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.
The IDs of the Dedicated Hosts. The IDs are used for targeted instance - * launches.
- */ - HostIds?: string[]; + Filters?: Filter[]; /** - *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.
+ *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.
The token to use to retrieve the next page of results.
+ *The token to request the next page of results.
*/ NextToken?: string; } -export namespace DescribeHostsRequest { +export namespace DescribeElasticGpusRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeHostsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeElasticGpusRequest): any => ({ ...obj, }); } +export enum ElasticGpuStatus { + Impaired = "IMPAIRED", + Ok = "OK", +} + /** - *Information about the number of instances that can be launched onto the Dedicated - * Host.
+ *Describes the status of an Elastic Graphics accelerator.
*/ -export interface InstanceCapacity { - /** - *The number of instances that can be launched onto the Dedicated Host based on the - * host's available capacity.
- */ - AvailableCapacity?: number; - - /** - *The instance type supported by the Dedicated Host.
- */ - InstanceType?: string; - +export interface ElasticGpuHealth { /** - *The total number of instances that can be launched onto the Dedicated Host if there - * are no instances running on it.
+ *The health status.
*/ - TotalCapacity?: number; + Status?: ElasticGpuStatus | string; } -export namespace InstanceCapacity { +export namespace ElasticGpuHealth { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceCapacity): any => ({ + export const filterSensitiveLog = (obj: ElasticGpuHealth): any => ({ ...obj, }); } +export enum ElasticGpuState { + Attached = "ATTACHED", +} + /** - *The capacity information for instances that can be launched onto the Dedicated Host.
+ *Describes an Elastic Graphics accelerator.
*/ -export interface AvailableCapacity { - /** - *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.
- */ - AvailableInstanceCapacity?: InstanceCapacity[]; - +export interface ElasticGpus { /** - *The number of vCPUs available for launching instances onto the Dedicated Host.
+ *The ID of the Elastic Graphics accelerator.
*/ - AvailableVCpus?: number; -} + ElasticGpuId?: string; -export namespace AvailableCapacity { /** - * @internal + *The Availability Zone in the which the Elastic Graphics accelerator resides.
*/ - export const filterSensitiveLog = (obj: AvailableCapacity): any => ({ - ...obj, - }); -} + AvailabilityZone?: string; -/** - *Describes the properties of a Dedicated Host.
- */ -export interface HostProperties { /** - *The number of cores on the Dedicated Host.
+ *The type of Elastic Graphics accelerator.
*/ - Cores?: number; + ElasticGpuType?: string; /** - *The instance type supported by the Dedicated Host. For example, m5.large
.
- * If the host supports multiple instance types, no instanceType
- * is returned.
The status of the Elastic Graphics accelerator.
*/ - InstanceType?: string; + ElasticGpuHealth?: ElasticGpuHealth; /** - *The instance family supported by the Dedicated Host. For example, m5
.
The state of the Elastic Graphics accelerator.
*/ - InstanceFamily?: string; + ElasticGpuState?: ElasticGpuState | string; /** - *The number of sockets on the Dedicated Host.
+ *The ID of the instance to which the Elastic Graphics accelerator is attached.
*/ - Sockets?: number; + InstanceId?: string; /** - *The total number of vCPUs on the Dedicated Host.
+ *The tags assigned to the Elastic Graphics accelerator.
*/ - TotalVCpus?: number; + Tags?: Tag[]; } -export namespace HostProperties { +export namespace ElasticGpus { /** * @internal */ - export const filterSensitiveLog = (obj: HostProperties): any => ({ + export const filterSensitiveLog = (obj: ElasticGpus): any => ({ ...obj, }); } -/** - *Describes an instance running on a Dedicated Host.
- */ -export interface HostInstance { +export interface DescribeElasticGpusResult { /** - *The ID of instance that is running on the Dedicated Host.
+ *Information about the Elastic Graphics accelerators.
*/ - InstanceId?: string; + ElasticGpuSet?: ElasticGpus[]; /** - *The instance type (for example, m3.medium
) of the running instance.
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.
*/ - InstanceType?: string; + MaxResults?: number; /** - *The ID of the Amazon Web Services account that owns the instance.
+ *The token to use to retrieve the next page of results. This value is
+ * null
when there are no more results to return.
Describes the properties of the Dedicated Host.
- */ -export interface Host { +export interface DescribeExportImageTasksRequest { /** - *Whether auto-placement is on or off.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The Availability Zone of the Dedicated Host.
+ *Filter tasks using the task-state
filter and one of the following values: active
,
+ * completed
, deleting
, or deleted
.
Information about the instances running on the Dedicated Host.
+ *The IDs of the export image tasks.
*/ - AvailableCapacity?: AvailableCapacity; + ExportImageTaskIds?: string[]; /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
+ *The maximum number of results to return in a single call.
*/ - ClientToken?: string; + MaxResults?: number; /** - *The ID of the Dedicated Host.
+ *A token that indicates the next page of results.
*/ - HostId?: string; + NextToken?: string; +} +export namespace DescribeExportImageTasksRequest { /** - *The hardware specifications of the Dedicated Host.
+ * @internal */ - HostProperties?: HostProperties; + export const filterSensitiveLog = (obj: DescribeExportImageTasksRequest): any => ({ + ...obj, + }); +} +/** + *Describes the destination for an export image task.
+ */ +export interface ExportTaskS3Location { /** - *The reservation ID of the Dedicated Host. This returns a null
response
- * if the Dedicated Host doesn't have an associated reservation.
The destination Amazon S3 bucket.
*/ - HostReservationId?: string; + S3Bucket?: string; /** - *The IDs and instance type that are currently running on the Dedicated - * Host.
+ *The prefix (logical hierarchy) in the bucket.
*/ - Instances?: HostInstance[]; + S3Prefix?: string; +} +export namespace ExportTaskS3Location { /** - *The Dedicated Host's state.
+ * @internal */ - State?: AllocationState | string; + export const filterSensitiveLog = (obj: ExportTaskS3Location): any => ({ + ...obj, + }); +} +/** + *Describes an export image task.
+ */ +export interface ExportImageTask { /** - *The time that the Dedicated Host was allocated.
+ *A description of the image being exported.
*/ - AllocationTime?: Date; + Description?: string; /** - *The time that the Dedicated Host was released.
+ *The ID of the export image task.
*/ - ReleaseTime?: Date; + ExportImageTaskId?: string; /** - *Any tags assigned to the Dedicated Host.
+ *The ID of the image.
*/ - Tags?: Tag[]; + ImageId?: string; /** - *Indicates whether host recovery is enabled or disabled for the Dedicated Host.
+ *The percent complete of the export image task.
*/ - HostRecovery?: HostRecovery | string; + Progress?: string; /** - *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.
Information about the destination Amazon S3 bucket.
*/ - AllowsMultipleInstanceTypes?: AllowsMultipleInstanceTypes | string; + S3ExportLocation?: ExportTaskS3Location; /** - *The ID of the Amazon Web Services account that owns the Dedicated Host.
+ *The status of the export image task. The possible values are active
, completed
,
+ * deleting
, and deleted
.
The ID of the Availability Zone in which the Dedicated Host is allocated.
+ *The status message for the export image task.
*/ - AvailabilityZoneId?: string; + StatusMessage?: string; /** - *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.
Any tags assigned to the export image task.
*/ - MemberOfServiceLinkedResourceGroup?: boolean; + Tags?: Tag[]; } -export namespace Host { +export namespace ExportImageTask { /** * @internal */ - export const filterSensitiveLog = (obj: Host): any => ({ + export const filterSensitiveLog = (obj: ExportImageTask): any => ({ ...obj, }); } -export interface DescribeHostsResult { +export interface DescribeExportImageTasksResult { /** - *Information about the Dedicated Hosts.
+ *Information about the export image tasks.
*/ - Hosts?: Host[]; + ExportImageTasks?: ExportImageTask[]; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The token to use to get the next page of results. This value is null
when there are no more results
+ * to return.
The IAM instance profile associations.
+ *The export task IDs.
*/ - AssociationIds?: string[]; + ExportTaskIds?: string[]; /** - *The filters.
- *
- * instance-id
- The ID of the instance.
- * state
- The state of the association (associating
|
- * associated
| disassociating
).
the filters for the export tasks.
*/ Filters?: Filter[]; +} +export namespace DescribeExportTasksRequest { /** - *The maximum number of results to return in a single call. To retrieve the remaining
- * results, make another call with the returned NextToken
value.
The token to request the next page of results.
+ *Information about the export tasks.
*/ - NextToken?: string; + ExportTasks?: ExportTask[]; } -export namespace DescribeIamInstanceProfileAssociationsRequest { +export namespace DescribeExportTasksResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeIamInstanceProfileAssociationsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeExportTasksResult): any => ({ ...obj, }); } -export interface DescribeIamInstanceProfileAssociationsResult { +export interface DescribeFastSnapshotRestoresRequest { /** - *Information about the IAM instance profile associations.
+ *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
).
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
*/ NextToken?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes fast snapshot restores for a snapshot.
+ */ +export interface DescribeFastSnapshotRestoreSuccessItem { /** - *The ARN of the principal, which can be an IAM role, IAM user, or the root user.
+ *The ID of the snapshot.
*/ - PrincipalArn: string | undefined; + SnapshotId?: string; /** - *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
- *
The Availability Zone.
*/ - export const filterSensitiveLog = (obj: DescribeIdentityIdFormatRequest): any => ({ - ...obj, - }); -} + AvailabilityZone?: string; -export interface DescribeIdentityIdFormatResult { /** - *Information about the ID format for the resources.
+ *The state of fast snapshot restores.
*/ - Statuses?: IdFormat[]; -} + State?: FastSnapshotRestoreStateCode | string; -export namespace DescribeIdentityIdFormatResult { /** - * @internal + *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
.
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
- *
The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.
*/ - Resource?: string; -} + OwnerId?: string; -export namespace DescribeIdFormatRequest { /** - * @internal + *The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.
*/ - export const filterSensitiveLog = (obj: DescribeIdFormatRequest): any => ({ - ...obj, - }); -} + OwnerAlias?: string; -export interface DescribeIdFormatResult { /** - *Information about the ID format for the resource.
+ *The time at which fast snapshot restores entered the enabling
state.
The time at which fast snapshot restores entered the optimizing
state.
Contains the parameters for DescribeImageAttribute.
- */ -export interface DescribeImageAttributeRequest { /** - *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.
The time at which fast snapshot restores entered the enabled
state.
The ID of the AMI.
+ *The time at which fast snapshot restores entered the disabling
state.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The time at which fast snapshot restores entered the disabled
state.
Describes a launch permission.
- */ -export interface LaunchPermission { - /** - *The name of the group.
- */ - Group?: PermissionGroup | string; - - /** - *The Amazon Web Services account ID.
- *Constraints: Up to 10 000 account IDs can be specified in a single request.
- */ - UserId?: string; - +export interface DescribeFastSnapshotRestoresResult { /** - *The Amazon Resource Name (ARN) of an organization.
+ *Information about the state of fast snapshot restores.
*/ - OrganizationArn?: string; + FastSnapshotRestores?: DescribeFastSnapshotRestoreSuccessItem[]; /** - *The Amazon Resource Name (ARN) of an organizational unit (OU).
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Describes an image attribute.
- */ -export interface ImageAttribute { - /** - *The block device mapping entries.
- */ - BlockDeviceMappings?: BlockDeviceMapping[]; - - /** - *The ID of the AMI.
- */ - ImageId?: string; - - /** - *The launch permissions.
- */ - LaunchPermissions?: LaunchPermission[]; +export enum FleetEventType { + FLEET_CHANGE = "fleet-change", + INSTANCE_CHANGE = "instance-change", + SERVICE_ERROR = "service-error", +} +export interface DescribeFleetHistoryRequest { /** - *The product codes.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
A description for the AMI.
+ *The type of events to describe. By default, all events are described.
*/ - Description?: AttributeValue; + EventType?: FleetEventType | string; /** - *The kernel ID.
+ *The maximum number of results to return in a single call. Specify a value between 1 and
+ * 1000. The default value is 1000. To retrieve the remaining results, make another call with
+ * the returned NextToken
value.
The RAM disk ID.
+ *The token for the next set of results.
*/ - RamdiskId?: AttributeValue; + NextToken?: string; /** - *Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
+ *The ID of the EC2 Fleet.
*/ - SriovNetSupport?: AttributeValue; + FleetId: string | undefined; /** - *Describes a value for a resource attribute that is a String.
+ *The start date and time for the events, in UTC format (for example, + * YYYY-MM-DDTHH:MM:SSZ).
*/ - BootMode?: AttributeValue; + StartTime: Date | undefined; } -export namespace ImageAttribute { +export namespace DescribeFleetHistoryRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ImageAttribute): any => ({ + export const filterSensitiveLog = (obj: DescribeFleetHistoryRequest): any => ({ ...obj, }); } -export interface DescribeImagesRequest { +/** + *Describes an EC2 Fleet or Spot Fleet event.
+ */ +export interface EventInformation { /** - *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.
The description of the event.
*/ - ExecutableUsers?: string[]; + EventDescription?: string; /** - *The filters.
- *The event.
+ * + *
+ * error
events:
- * architecture
- The image architecture (i386
|
- * x86_64
| arm64
).
+ * iamFleetRoleInvalid
- The EC2 Fleet or Spot Fleet does not have the required
+ * permissions either to launch or terminate an instance.
- * block-device-mapping.delete-on-termination
- A Boolean value that indicates
- * whether the Amazon EBS volume is deleted on instance termination.
+ * allLaunchSpecsTemporarilyBlacklisted
- None of the configurations
+ * are valid, and several attempts to launch instances have failed. For more
+ * information, see the description of the event.
- * block-device-mapping.device-name
- The device name specified in the block device mapping (for
- * example, /dev/sdh
or xvdh
).
+ * spotInstanceCountLimitExceeded
- You've reached the limit on the
+ * number of Spot Instances that you can launch.
- * block-device-mapping.snapshot-id
- The ID of the snapshot used for the Amazon EBS
- * volume.
+ * spotFleetRequestConfigurationInvalid
- The configuration is not
+ * valid. For more information, see the description of the event.
+ * fleetRequestChange
events:
- * block-device-mapping.volume-size
- The volume size of the Amazon EBS volume, in GiB.
+ * active
- The EC2 Fleet or Spot Fleet request has been validated and Amazon EC2 is
+ * attempting to maintain the target number of running instances.
- * block-device-mapping.volume-type
- The volume type of the Amazon EBS volume
- * (io1
| io2
| gp2
| gp3
| sc1
- *
| st1
| standard
).
+ * cancelled
- The EC2 Fleet or 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.
- * block-device-mapping.encrypted
- A Boolean that indicates whether the Amazon EBS volume is encrypted.
- * description
- The description of the image (provided during image
- * creation).
+ * cancelled_running
- The EC2 Fleet or 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.
- * ena-support
- A Boolean that indicates whether enhanced networking
- * with ENA is enabled.
+ * cancelled_terminating
- The EC2 Fleet or Spot Fleet request is canceled and
+ * its instances are terminating. The request remains in this state until all
+ * instances are terminated.
- * hypervisor
- The hypervisor type (ovm
|
- * xen
).
+ * 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.
- * image-id
- The ID of the image.
+ * 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.
- * image-type
- The image type (machine
| kernel
|
- * ramdisk
).
+ * modify_succeeded
- The EC2 Fleet or Spot Fleet request was modified.
- * is-public
- A Boolean that indicates whether the image is public.
+ * submitted
- The EC2 Fleet or Spot Fleet request is being evaluated and Amazon EC2
+ * is preparing to launch the target number of instances.
- * 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. To only list Windows-based AMIs, use
- * 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
).
+ * progress
- The EC2 Fleet or Spot Fleet request is in the process of being fulfilled.
+ * instanceChange
events:
- * state
- The state of the image (available
| pending
- * | failed
).
+ * launched
- A new instance was launched.
- * state-reason-code
- The reason code for the state change.
+ * terminated
- An instance was terminated by the user.
- * state-reason-message
- The message for the state change.
+ * 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:
- * sriov-net-support
- A value of simple
indicates
- * that enhanced networking with the Intel 82599 VF interface is enabled.
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.
*
- * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
+ * launchSpecTemporarilyBlacklisted
- The configuration is not valid
+ * and several attempts to launch instances have failed. For more information, see
+ * the description of the event.
- * 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.
+ * launchSpecUnusable
- The price in a launch specification is not
+ * valid because it is below the Spot price.
- * virtualization-type
- The virtualization type (paravirtual
|
- * hvm
).
+ * registerWithLoadBalancersFailed
- An attempt to register
+ * instances with load balancers failed. For more information, see the description
+ * of the event.
The image IDs.
- *Default: Describes all images available to you.
+ *The ID of the instance. This information is available only for
+ * instanceChange
events.
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.
Describes an event in the history of an EC2 Fleet.
+ */ +export interface HistoryRecordEntry { /** - *If true
, all deprecated AMIs are included in the response. If
- * false
, no deprecated AMIs are included in the response. If no value is
- * specified, the default value is false
.
If you are the AMI owner, all deprecated AMIs appear in the response regardless of the value (true
or false
) that you set for this parameter.
Information about the event.
*/ - IncludeDeprecated?: boolean; + EventInformation?: EventInformation; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The event type.
*/ - DryRun?: boolean; + EventType?: FleetEventType | string; + + /** + *The date and time of the event, in UTC format (for example, + * YYYY-MM-DDTHH:MM:SSZ).
+ */ + Timestamp?: Date; } -export namespace DescribeImagesRequest { +export namespace HistoryRecordEntry { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeImagesRequest): any => ({ + export const filterSensitiveLog = (obj: HistoryRecordEntry): any => ({ ...obj, }); } -export type ArchitectureValues = "arm64" | "i386" | "x86_64" | "x86_64_mac"; - -export type BootModeValues = "legacy-bios" | "uefi"; - -export type HypervisorType = "ovm" | "xen"; - -export type ImageTypeValues = "kernel" | "machine" | "ramdisk"; +export interface DescribeFleetHistoryResult { + /** + *Information about the events in the history of the EC2 Fleet.
+ */ + HistoryRecords?: HistoryRecordEntry[]; -export type DeviceType = "ebs" | "instance-store"; + /** + *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 results, this value is not
+ * present.
The token for the next set of results.
+ */ + NextToken?: string; -/** - *Describes a state change.
- */ -export interface StateReason { /** - *The reason code for the state change.
+ *The ID of the EC Fleet.
*/ - Code?: string; + FleetId?: string; /** - *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.
The start date and time for the events, in UTC format (for example, + * YYYY-MM-DDTHH:MM:SSZ).
*/ - Message?: string; + StartTime?: Date; } -export namespace StateReason { +export namespace DescribeFleetHistoryResult { /** * @internal */ - export const filterSensitiveLog = (obj: StateReason): any => ({ + export const filterSensitiveLog = (obj: DescribeFleetHistoryResult): any => ({ ...obj, }); } -export type VirtualizationType = "hvm" | "paravirtual"; - -/** - *Describes an image.
- */ -export interface Image { +export interface DescribeFleetInstancesRequest { /** - *The architecture of the image.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The date and time the image was created.
+ *The maximum number of results to return in a single call. Specify a value between 1 and
+ * 1000. The default value is 1000. To retrieve the remaining results, make another call with
+ * the returned NextToken
value.
The ID of the AMI.
+ *The token for the next set of results.
*/ - ImageId?: string; + NextToken?: string; /** - *The location of the AMI.
+ *The ID of the EC2 Fleet.
*/ - ImageLocation?: string; + FleetId: string | undefined; /** - *The type of image.
+ *The filters.
+ *
+ * instance-type
- The instance type.
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.
The kernel associated with the image, if any. Only applicable for machine images.
+ *The running instances. This list is refreshed periodically and might be out of + * date.
*/ - KernelId?: string; + ActiveInstances?: ActiveInstance[]; /** - *The ID of the Amazon Web Services account that owns the image.
+ *The token for the next set of results.
*/ - OwnerId?: string; + NextToken?: string; /** - *This value is set to windows
for Windows AMIs; otherwise, it is blank.
The ID of the EC2 Fleet.
*/ - Platform?: PlatformValues | string; + FleetId?: string; +} +export namespace DescribeFleetInstancesResult { /** - *The platform details associated with the billing code of the AMI. For more information, - * see Understanding - * AMI billing in the Amazon Elastic Compute Cloud User Guide.
+ * @internal */ - PlatformDetails?: string; + export const filterSensitiveLog = (obj: DescribeFleetInstancesResult): any => ({ + ...obj, + }); +} +export interface DescribeFleetsRequest { /** - *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.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Any product codes associated with the AMI.
+ *The maximum number of results to return in a single call. Specify a value between 1 and
+ * 1000. The default value is 1000. To retrieve the remaining results, make another call with
+ * the returned NextToken
value.
The RAM disk associated with the image, if any. Only applicable for machine images.
+ *The token for the next set of results.
*/ - RamdiskId?: string; + NextToken?: string; /** - *The current state of the AMI. If the state is available
, the image is successfully registered and can be used to launch an instance.
The ID of the EC2 Fleets.
*/ - State?: ImageState | string; + FleetIds?: string[]; /** - *Any block device mapping entries.
+ *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
).
The description of the AMI that was provided during image creation.
+ * @internal */ - Description?: string; + export const filterSensitiveLog = (obj: DescribeFleetsRequest): any => ({ + ...obj, + }); +} +export enum FleetActivityStatus { + ERROR = "error", + FULFILLED = "fulfilled", + PENDING_FULFILLMENT = "pending_fulfillment", + PENDING_TERMINATION = "pending_termination", +} + +/** + *Describes the instances that could not be launched by the fleet.
+ */ +export interface DescribeFleetError { /** - *Specifies whether enhanced networking with ENA is enabled.
+ *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.
*/ - EnaSupport?: boolean; + LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse; /** - *The hypervisor type of the image.
+ *Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.
*/ - Hypervisor?: HypervisorType | string; + Lifecycle?: InstanceLifecycle | string; /** - *The Amazon Web Services account alias (for example, amazon
, self
) or
- * the Amazon Web Services account ID of the AMI owner.
The error code that indicates why the instance could not be launched. For more + * information about error codes, see Error Codes.
*/ - ImageOwnerAlias?: string; + ErrorCode?: string; /** - *The name of the AMI that was provided during image creation.
+ *The error message that describes why the instance could not be launched. For more + * information about error messages, see Error Codes.
*/ - Name?: string; + ErrorMessage?: string; +} +export namespace DescribeFleetError { /** - *The device name of the root device volume (for example, /dev/sda1
).
Describes the instances that were launched by the fleet.
+ */ +export interface DescribeFleetsInstances { /** - *The type of root device used by the AMI. The AMI can use an Amazon EBS volume or an instance store volume.
+ *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.
*/ - RootDeviceType?: DeviceType | string; + LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse; /** - *Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
+ *Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.
*/ - SriovNetSupport?: string; + Lifecycle?: InstanceLifecycle | string; /** - *The reason for the state change.
+ *The IDs of the instances.
*/ - StateReason?: StateReason; + InstanceIds?: string[]; /** - *Any tags assigned to the image.
+ *The instance type.
*/ - Tags?: Tag[]; + InstanceType?: _InstanceType | string; /** - *The type of virtualization of the AMI.
+ *The value is Windows
for Windows instances. Otherwise, the value is
+ * blank.
The boot mode of the image. For more information, see Boot modes in the - * Amazon Elastic Compute Cloud User Guide.
+ * @internal */ - BootMode?: BootModeValues | string; + export const filterSensitiveLog = (obj: DescribeFleetsInstances): any => ({ + ...obj, + }); +} + +/** + *Describes a launch template and overrides.
+ */ +export interface FleetLaunchTemplateConfig { + /** + *The launch template.
+ */ + LaunchTemplateSpecification?: FleetLaunchTemplateSpecification; /** - *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.
+ *Any parameters that you specify override the same parameters in the launch + * template.
*/ - DeprecationTime?: string; + Overrides?: FleetLaunchTemplateOverrides[]; } -export namespace Image { +export namespace FleetLaunchTemplateConfig { /** * @internal */ - export const filterSensitiveLog = (obj: Image): any => ({ + export const filterSensitiveLog = (obj: FleetLaunchTemplateConfig): any => ({ ...obj, }); } -export interface DescribeImagesResult { +/** + *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.
+ */ +export interface CapacityReservationOptions { /** - *Information about the images.
+ *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.
*/ - Images?: Image[]; + UsageStrategy?: FleetCapacityReservationUsageStrategy | string; } -export namespace DescribeImagesResult { +export namespace CapacityReservationOptions { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeImagesResult): any => ({ + export const filterSensitiveLog = (obj: CapacityReservationOptions): any => ({ ...obj, }); } -export interface DescribeImportImageTasksRequest { +/** + *Describes the configuration of On-Demand Instances in an EC2 Fleet.
+ */ +export interface OnDemandOptions { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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
+ *
Filter tasks using the task-state
filter and one of the following values: active
,
- * completed
, deleting
, or deleted
.
The strategy for using unused Capacity Reservations for fulfilling On-Demand + * capacity.
+ *Supported only for fleets of type instant
.
The IDs of the import image tasks.
+ *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
.
The maximum number of results to return in a single call.
+ *Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.
+ *Supported only for fleets of type instant
.
A token that indicates the next page of results.
+ *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
+ *
The maximum amount per hour for On-Demand Instances that you're willing to pay.
+ */ + MaxTotalPrice?: string; } -export namespace DescribeImportImageTasksRequest { +export namespace OnDemandOptions { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeImportImageTasksRequest): any => ({ + export const filterSensitiveLog = (obj: OnDemandOptions): any => ({ ...obj, }); } /** - *The response information for license configurations.
+ *The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an + * elevated risk of being interrupted.
*/ -export interface ImportImageLicenseConfigurationResponse { +export interface FleetSpotCapacityRebalance { /** - *The ARN of a license configuration.
+ *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.
The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot + * Instance after launching a new replacement Spot Instance.
+ *Valid only when replacementStrategy
is set to launch-before-terminate
.
Valid values: Minimum value of 120
seconds. Maximum value of 7200
seconds.
Describes the Amazon S3 bucket for the disk image.
+ *The strategies for managing your Spot Instances that are at an elevated risk of being + * interrupted.
*/ -export interface UserBucketDetails { - /** - *The Amazon S3 bucket from which the disk image was created.
- */ - S3Bucket?: string; - +export interface FleetSpotMaintenanceStrategies { /** - *The file name of the disk image.
+ *The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an + * elevated risk of being interrupted.
*/ - S3Key?: string; + CapacityRebalance?: FleetSpotCapacityRebalance; } -export namespace UserBucketDetails { +export namespace FleetSpotMaintenanceStrategies { /** * @internal */ - export const filterSensitiveLog = (obj: UserBucketDetails): any => ({ + export const filterSensitiveLog = (obj: FleetSpotMaintenanceStrategies): any => ({ ...obj, }); } /** - *Describes the snapshot created from the imported disk.
+ *Describes the configuration of Spot Instances in an EC2 Fleet.
*/ -export interface SnapshotDetail { - /** - *A description for the snapshot.
- */ - Description?: string; - - /** - *The block device mapping for the snapshot.
- */ - DeviceName?: string; - +export interface SpotOptions { /** - *The size of the disk in the snapshot, in GiB.
+ *The strategy that determines how to allocate the target Spot Instance capacity across the Spot Instance + * pools specified by the EC2 Fleet.
+ *
+ * lowest-price
- EC2 Fleet launches instances from the Spot Instance pools with the lowest
+ * price.
+ * diversified
- EC2 Fleet launches instances from all of the Spot Instance pools that you
+ * specify.
+ * capacity-optimized
(recommended) - EC2 Fleet launches instances from Spot Instance pools
+ * with optimal capacity for the number of instances that are launching. 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 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.
Default: lowest-price
+ *
The format of the disk image from which the snapshot is created.
+ *The strategies for managing your workloads on your Spot Instances that will be + * interrupted. Currently only the capacity rebalance strategy is available.
*/ - Format?: string; + MaintenanceStrategies?: FleetSpotMaintenanceStrategies; /** - *The percentage of progress for the task.
+ *The behavior when a Spot Instance is interrupted.
+ *Default: terminate
+ *
The snapshot ID of the disk being imported.
+ *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.
*/ - SnapshotId?: string; + InstancePoolsToUseCount?: number; /** - *A brief status of the snapshot creation.
+ *Indicates that the fleet uses a single instance type to launch all Spot Instances in the + * fleet.
+ *Supported only for fleets of type instant
.
A detailed status message for the snapshot creation.
+ *Indicates that the fleet launches all Spot Instances into a single Availability Zone.
+ *Supported only for fleets of type instant
.
The URL used to access the disk image.
+ *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
+ *
The Amazon S3 bucket for the disk image.
+ *The maximum amount per hour for Spot Instances that you're willing to pay.
*/ - UserBucket?: UserBucketDetails; + MaxTotalPrice?: string; } -export namespace SnapshotDetail { +export namespace SpotOptions { /** * @internal */ - export const filterSensitiveLog = (obj: SnapshotDetail): any => ({ + export const filterSensitiveLog = (obj: SpotOptions): any => ({ ...obj, }); } /** - *Describes an import image task.
+ *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.
The architecture of the virtual machine.
- *Valid values: i386
| x86_64
| arm64
- *
The number of units to request, filled using
+ * DefaultTargetCapacityType
.
A description of the import task.
+ *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.
*/ - Description?: string; + OnDemandTargetCapacity?: number; /** - *Indicates whether the image is encrypted.
+ *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.
*/ - Encrypted?: boolean; + SpotTargetCapacity?: number; /** - *The target hypervisor for the import task.
- *Valid values: xen
- *
The default TotalTargetCapacity
, which is either Spot
or
+ * On-Demand
.
The ID of the Amazon Machine Image (AMI) of the imported virtual machine.
+ *The unit for the target capacity.
+ *Default: units
(translates to number of instances)
The ID of the import image task.
+ * @internal */ - ImportTaskId?: string; + export const filterSensitiveLog = (obj: TargetCapacitySpecification): any => ({ + ...obj, + }); +} +/** + *Describes an EC2 Fleet.
+ */ +export interface FleetData { /** - *The identifier for the KMS key that was used to create the encrypted image.
+ *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.
The license type of the virtual machine.
+ *The creation date and time of the EC2 Fleet.
*/ - LicenseType?: string; + CreateTime?: Date; /** - *The description string for the import image task.
+ *The ID of the EC2 Fleet.
*/ - Platform?: string; + FleetId?: string; /** - *The percentage of progress of the import image task.
+ *The state of the EC2 Fleet.
*/ - Progress?: string; + FleetState?: FleetStateCode | string; /** - *Information about the snapshots.
+ *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
*/ - SnapshotDetails?: SnapshotDetail[]; + ClientToken?: string; /** - *A brief status for the import image task.
+ *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.
*/ - Status?: string; + ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy | string; /** - *A descriptive status message for the import image task.
+ *The number of units fulfilled by this request compared to the set target + * capacity.
*/ - StatusMessage?: string; + FulfilledCapacity?: number; /** - *The tags for the import image task.
+ *The number of units fulfilled by this request compared to the set target On-Demand + * capacity.
+ */ + FulfilledOnDemandCapacity?: number; + + /** + *The launch template and overrides.
+ */ + LaunchTemplateConfigs?: FleetLaunchTemplateConfig[]; + + /** + *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.
Indicates whether running instances should be terminated when the EC2 Fleet expires.
+ */ + TerminateInstancesWithExpiration?: boolean; + + /** + *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
.
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.
+ */ + ValidFrom?: Date; + + /** + *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.
+ */ + ValidUntil?: Date; + + /** + *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.
The configuration of Spot Instances in an EC2 Fleet.
+ */ + SpotOptions?: SpotOptions; + + /** + *The allocation strategy of On-Demand Instances in an EC2 Fleet.
+ */ + OnDemandOptions?: OnDemandOptions; + + /** + *The tags for an EC2 Fleet resource.
*/ Tags?: Tag[]; /** - *The ARNs of the license configurations that are associated with the import image task.
+ *Information about the instances that could not be launched by the fleet. Valid only when
+ * Type is set to instant
.
The usage operation value.
+ *Information about the instances that were launched by the fleet. Valid only when
+ * Type is set to instant
.
The boot mode of the virtual machine.
+ *Reserved.
*/ - BootMode?: BootModeValues | string; + Context?: string; } -export namespace ImportImageTask { +export namespace FleetData { /** * @internal */ - export const filterSensitiveLog = (obj: ImportImageTask): any => ({ + export const filterSensitiveLog = (obj: FleetData): any => ({ ...obj, }); } -export interface DescribeImportImageTasksResult { +export interface DescribeFleetsResult { /** - *A list of zero or more import image tasks that are currently active or were completed or canceled in the - * previous 7 days.
+ *The token for the next set of results.
*/ - ImportImageTasks?: ImportImageTask[]; + NextToken?: string; /** - *The token to use to get the next page of results. This value is null
when there are no more results
- * to return.
Information about the EC2 Fleets.
*/ - NextToken?: string; + Fleets?: FleetData[]; } -export namespace DescribeImportImageTasksResult { +export namespace DescribeFleetsResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeImportImageTasksResult): any => ({ + export const filterSensitiveLog = (obj: DescribeFleetsResult): any => ({ ...obj, }); } -export interface DescribeImportSnapshotTasksRequest { +export interface DescribeFlowLogsRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -1663,186 +1929,233 @@ export interface DescribeImportSnapshotTasksRequest {
DryRun?: boolean;
/**
- *
The filters.
+ *One or more filters.
+ *
+ * deliver-log-status
- The status of the logs delivery (SUCCESS
|
+ * FAILED
).
+ * log-destination-type
- The type of destination to which the flow
+ * log publishes data. Possible destination types include
+ * cloud-watch-logs
and s3
.
+ * 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
: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.
A list of import snapshot task IDs.
+ *One or more flow log IDs.
+ *Constraint: Maximum of 1000 flow log IDs.
*/ - ImportTaskIds?: string[]; + FlowLogIds?: string[]; /** - *The maximum number of results to return in a single call. To retrieve the remaining results, make another call
- * with the returned NextToken
value.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
A token that indicates the next page of results.
+ *The token for the next page of results.
*/ NextToken?: string; } -export namespace DescribeImportSnapshotTasksRequest { +export namespace DescribeFlowLogsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeImportSnapshotTasksRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeFlowLogsRequest): any => ({ ...obj, }); } /** - *Details about the import snapshot task.
+ *Describes the destination options for a flow log.
*/ -export interface SnapshotTaskDetail { +export interface DestinationOptionsResponse { /** - *The description of the snapshot.
+ *The format for the flow log.
*/ - Description?: string; + FileFormat?: DestinationFileFormat | string; /** - *The size of the disk in the snapshot, in GiB.
+ *Indicates whether to use Hive-compatible prefixes for flow logs stored in Amazon S3.
*/ - DiskImageSize?: number; + HiveCompatiblePartitions?: boolean; /** - *Indicates whether the snapshot is encrypted.
+ *Indicates whether to partition the flow log per hour.
*/ - Encrypted?: boolean; + PerHourPartition?: boolean; +} +export namespace DestinationOptionsResponse { /** - *The format of the disk image from which the snapshot is created.
+ * @internal */ - Format?: string; + export const filterSensitiveLog = (obj: DestinationOptionsResponse): any => ({ + ...obj, + }); +} +/** + *Describes a flow log.
+ */ +export interface FlowLog { /** - *The identifier for the KMS key that was used to create the encrypted snapshot.
+ *The date and time the flow log was created.
*/ - KmsKeyId?: string; + CreationTime?: Date; /** - *The percentage of completion for the import snapshot task.
+ *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.
The snapshot ID of the disk being imported.
+ *The ARN of the IAM role that posts logs to CloudWatch Logs.
*/ - SnapshotId?: string; + DeliverLogsPermissionArn?: string; /** - *A brief status for the import snapshot task.
+ *The status of the logs delivery (SUCCESS
| FAILED
).
A detailed status message for the import snapshot task.
+ *The flow log ID.
*/ - StatusMessage?: string; + FlowLogId?: string; /** - *The URL of the disk image from which the snapshot is created.
+ *The status of the flow log (ACTIVE
).
The Amazon S3 bucket for the disk image.
+ *The name of the flow log group.
*/ - UserBucket?: UserBucketDetails; -} + LogGroupName?: string; -export namespace SnapshotTaskDetail { /** - * @internal + *The ID of the resource on which the flow log was created.
*/ - export const filterSensitiveLog = (obj: SnapshotTaskDetail): any => ({ - ...obj, - }); -} + ResourceId?: string; -/** - *Describes an import snapshot task.
- */ -export interface ImportSnapshotTask { /** - *A description of the import snapshot task.
+ *The type of traffic captured for the flow log.
*/ - Description?: string; + TrafficType?: TrafficType | string; /** - *The ID of the import snapshot task.
+ *The type of destination to which the flow log data is published. Flow log data can be + * published to CloudWatch Logs or Amazon S3.
*/ - ImportTaskId?: string; + LogDestinationType?: LogDestinationType | string; /** - *Describes an import snapshot task.
+ *The destination to which the flow log data is published. Flow log data can be + * published to an CloudWatch Logs log group or an Amazon S3 bucket. If the flow log publishes to CloudWatch Logs, + * this element indicates the Amazon Resource Name (ARN) of the CloudWatch Logs log group to which + * the data is published. If the flow log publishes to Amazon S3, this element indicates the ARN + * of the Amazon S3 bucket to which the data is published.
*/ - SnapshotTaskDetail?: SnapshotTaskDetail; + LogDestination?: string; /** - *The tags for the import snapshot task.
+ *The format of the flow log record.
+ */ + LogFormat?: string; + + /** + *The tags for the flow log.
*/ Tags?: Tag[]; + + /** + *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
+ *
The destination options.
+ */ + DestinationOptions?: DestinationOptionsResponse; } -export namespace ImportSnapshotTask { +export namespace FlowLog { /** * @internal */ - export const filterSensitiveLog = (obj: ImportSnapshotTask): any => ({ + export const filterSensitiveLog = (obj: FlowLog): any => ({ ...obj, }); } -export interface DescribeImportSnapshotTasksResult { +export interface DescribeFlowLogsResult { /** - *A list of zero or more import snapshot tasks that are currently active or were completed or canceled in the - * previous 7 days.
+ *Information about the flow logs.
*/ - ImportSnapshotTasks?: ImportSnapshotTask[]; + FlowLogs?: FlowLog[]; /** - *The token to use to get the next page of results. This value is null
when there are no more results
- * to return.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The instance attribute.
- *Note: The enaSupport
attribute is not supported at this time.
Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -1851,4299 +2164,3257 @@ export interface DescribeInstanceAttributeRequest {
DryRun?: boolean;
/**
- *
The ID of the instance.
+ *The ID of the AFI.
*/ - InstanceId: string | undefined; + FpgaImageId: string | undefined; + + /** + *The AFI attribute.
+ */ + Attribute: FpgaImageAttributeName | string | undefined; } -export namespace DescribeInstanceAttributeRequest { +export namespace DescribeFpgaImageAttributeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeInstanceAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeFpgaImageAttributeRequest): any => ({ ...obj, }); } +export type PermissionGroup = "all"; + /** - *Describes a parameter used to set up an EBS volume in a block device mapping.
+ *Describes a load permission.
*/ -export interface EbsInstanceBlockDevice { - /** - *The time stamp when the attachment initiated.
- */ - AttachTime?: Date; - - /** - *Indicates whether the volume is deleted on instance termination.
- */ - DeleteOnTermination?: boolean; - +export interface LoadPermission { /** - *The attachment state.
+ *The Amazon Web Services account ID.
*/ - Status?: AttachmentStatus | string; + UserId?: string; /** - *The ID of the EBS volume.
+ *The name of the group.
*/ - VolumeId?: string; + Group?: PermissionGroup | string; } -export namespace EbsInstanceBlockDevice { +export namespace LoadPermission { /** * @internal */ - export const filterSensitiveLog = (obj: EbsInstanceBlockDevice): any => ({ + export const filterSensitiveLog = (obj: LoadPermission): any => ({ ...obj, }); } +export type ProductCodeValues = "devpay" | "marketplace"; + /** - *Describes a block device mapping.
+ *Describes a product code.
*/ -export interface InstanceBlockDeviceMapping { +export interface ProductCode { /** - *The device name (for example, /dev/sdh
or xvdh
).
The product code.
*/ - DeviceName?: string; + ProductCodeId?: string; /** - *Parameters used to automatically set up EBS volumes when the instance is - * launched.
+ *The type of product code.
*/ - Ebs?: EbsInstanceBlockDevice; + ProductCodeType?: ProductCodeValues | string; } -export namespace InstanceBlockDeviceMapping { +export namespace ProductCode { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceBlockDeviceMapping): any => ({ + export const filterSensitiveLog = (obj: ProductCode): any => ({ ...obj, }); } /** - *Describes a value for a resource attribute that is a Boolean value.
+ *Describes an Amazon FPGA image (AFI) attribute.
*/ -export interface AttributeBooleanValue { +export interface FpgaImageAttribute { /** - *The attribute value. The valid values are true
or false
.
The ID of the AFI.
*/ - Value?: boolean; -} + FpgaImageId?: string; -export namespace AttributeBooleanValue { /** - * @internal + *The name of the AFI.
*/ - export const filterSensitiveLog = (obj: AttributeBooleanValue): any => ({ - ...obj, - }); -} + Name?: string; -/** - *Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.
- */ -export interface EnclaveOptions { /** - *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.
The description of the AFI.
*/ - Enabled?: boolean; + Description?: string; + + /** + *The load permissions.
+ */ + LoadPermissions?: LoadPermission[]; + + /** + *The product codes.
+ */ + ProductCodes?: ProductCode[]; } -export namespace EnclaveOptions { +export namespace FpgaImageAttribute { /** * @internal */ - export const filterSensitiveLog = (obj: EnclaveOptions): any => ({ + export const filterSensitiveLog = (obj: FpgaImageAttribute): any => ({ ...obj, }); } -/** - *Describes an instance attribute.
- */ -export interface InstanceAttribute { +export interface DescribeFpgaImageAttributeResult { /** - *The security groups associated with the instance.
+ *Information about the attribute.
*/ - Groups?: GroupIdentifier[]; + FpgaImageAttribute?: FpgaImageAttribute; +} +export namespace DescribeFpgaImageAttributeResult { /** - *The block device mapping of the instance.
+ * @internal */ - BlockDeviceMappings?: InstanceBlockDeviceMapping[]; + export const filterSensitiveLog = (obj: DescribeFpgaImageAttributeResult): any => ({ + ...obj, + }); +} +export interface DescribeFpgaImagesRequest { /** - *If the value is true
, you can't terminate the instance through the Amazon
- * EC2 console, CLI, or API; otherwise, you can.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Indicates whether enhanced networking with ENA is enabled.
+ *The AFI IDs.
*/ - EnaSupport?: AttributeBooleanValue; + FpgaImageIds?: string[]; /** - *To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to true
; otherwise,
- * set it to false
.
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
).
Indicates whether the instance is optimized for Amazon EBS I/O.
+ *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
: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.
The ID of the instance.
+ *The token to retrieve the next page of results.
*/ - InstanceId?: string; + NextToken?: string; /** - *Indicates whether an instance stops or terminates when you initiate shutdown from the - * instance (using the operating system command for system shutdown).
+ *The maximum number of results to return in a single call.
*/ - InstanceInitiatedShutdownBehavior?: AttributeValue; + MaxResults?: number; +} +export namespace DescribeFpgaImagesRequest { /** - *The instance type.
+ * @internal */ - InstanceType?: AttributeValue; + export const filterSensitiveLog = (obj: DescribeFpgaImagesRequest): any => ({ + ...obj, + }); +} +/** + *Describes the data that identifies an Amazon FPGA image (AFI) on the PCI bus.
+ */ +export interface PciId { /** - *The kernel ID.
+ *The ID of the device.
*/ - KernelId?: AttributeValue; + DeviceId?: string; /** - *A list of product codes.
+ *The ID of the vendor.
*/ - ProductCodes?: ProductCode[]; + VendorId?: string; /** - *The RAM disk ID.
+ *The ID of the subsystem.
*/ - RamdiskId?: AttributeValue; + SubsystemId?: string; /** - *The device name of the root device volume (for example,
- * /dev/sda1
).
The ID of the vendor for the subsystem.
*/ - RootDeviceName?: AttributeValue; + SubsystemVendorId?: string; +} +export namespace PciId { /** - *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.
Describes the state of the bitstream generation process for an Amazon FPGA image (AFI).
+ */ +export interface FpgaImageState { /** - *Indicates whether enhanced networking with the Intel 82599 Virtual Function interface - * is enabled.
+ *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.
The user data.
+ *If the state is failed
, this is the error message.
Describes an Amazon FPGA image (AFI).
+ */ +export interface FpgaImage { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The FPGA image identifier (AFI ID).
*/ - DryRun?: boolean; + FpgaImageId?: string; /** - *The filters.
- *
- * instance-id
- The ID of the instance.
The global FPGA image identifier (AGFI ID).
*/ - Filters?: Filter[]; + FpgaImageGlobalId?: string; /** - *The instance IDs.
- *Default: Describes all your instances.
- *Constraints: Maximum 1000 explicitly specified instance IDs.
+ *The name of the AFI.
*/ - InstanceIds?: string[]; + Name?: string; /** - *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. You cannot specify this parameter and the instance IDs
- * parameter in the same call.
The description of the AFI.
*/ - MaxResults?: number; + Description?: string; /** - *The token to retrieve the next page of results.
+ *The version of the Amazon Web Services Shell that was used to create the bitstream.
*/ - NextToken?: string; -} + ShellVersion?: string; -export namespace DescribeInstanceCreditSpecificationsRequest { /** - * @internal + *Information about the PCI bus.
*/ - export const filterSensitiveLog = (obj: DescribeInstanceCreditSpecificationsRequest): any => ({ - ...obj, - }); -} + PciId?: PciId; -/** - *Describes the credit option for CPU usage of a burstable performance instance.
- */ -export interface InstanceCreditSpecification { /** - *The ID of the instance.
+ *Information about the state of the AFI.
*/ - InstanceId?: string; + State?: FpgaImageState; /** - *The credit option for CPU usage of the instance. Valid values are
- * standard
and unlimited
.
The date and time the AFI was created.
*/ - CpuCredits?: string; -} + CreateTime?: Date; -export namespace InstanceCreditSpecification { /** - * @internal + *The time of the most recent update to the AFI.
*/ - export const filterSensitiveLog = (obj: InstanceCreditSpecification): any => ({ - ...obj, - }); -} + UpdateTime?: Date; -export interface DescribeInstanceCreditSpecificationsResult { /** - *Information about the credit option for CPU usage of an instance.
+ *The ID of the Amazon Web Services account that owns the AFI.
*/ - InstanceCreditSpecifications?: InstanceCreditSpecification[]; + OwnerId?: string; /** - *The token to use to retrieve the next page of results. This value is null
- * when there are no more results to return.
The alias of the AFI owner. Possible values include self
, amazon
, and aws-marketplace
.
The product codes for the AFI.
*/ - export const filterSensitiveLog = (obj: DescribeInstanceCreditSpecificationsResult): any => ({ - ...obj, - }); -} + ProductCodes?: ProductCode[]; -export interface DescribeInstanceEventNotificationAttributesRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Any tags assigned to the AFI.
*/ - DryRun?: boolean; -} + Tags?: Tag[]; -export namespace DescribeInstanceEventNotificationAttributesRequest { /** - * @internal + *Indicates whether the AFI is public.
*/ - export const filterSensitiveLog = (obj: DescribeInstanceEventNotificationAttributesRequest): any => ({ - ...obj, - }); -} + Public?: boolean; -export interface DescribeInstanceEventNotificationAttributesResult { /** - *Information about the registered tag keys.
+ *Indicates whether data retention support is enabled for the AFI.
*/ - InstanceTagAttribute?: InstanceTagNotificationAttribute; + DataRetentionSupport?: boolean; } -export namespace DescribeInstanceEventNotificationAttributesResult { +export namespace FpgaImage { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeInstanceEventNotificationAttributesResult): any => ({ + export const filterSensitiveLog = (obj: FpgaImage): any => ({ ...obj, }); } -/** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the FPGA images.
*/ - DryRun?: boolean; + FpgaImages?: FpgaImage[]; /** - *The IDs of the event windows.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
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:
- 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.
The filters.
+ *
- * 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.
+ * instance-family
- The instance family of the offering (for example,
+ * m4
).
- * 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.
+ * payment-option
- The payment option (NoUpfront
|
+ * PartialUpfront
| AllUpfront
).
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.
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.
+ */ + MaxDuration?: number; + + /** + *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.
The token to request the next page of results.
+ *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.
+ */ + MinDuration?: number; + + /** + *The token to use to retrieve the next page of results.
*/ NextToken?: string; + + /** + *The ID of the reservation offering.
+ */ + OfferingId?: string; } -export namespace DescribeInstanceEventWindowsRequest { +export namespace DescribeHostReservationOfferingsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeInstanceEventWindowsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeHostReservationOfferingsRequest): any => ({ ...obj, }); } -export interface DescribeInstanceEventWindowsResult { +export enum PaymentOption { + ALL_UPFRONT = "AllUpfront", + NO_UPFRONT = "NoUpfront", + PARTIAL_UPFRONT = "PartialUpfront", +} + +/** + *Details about the Dedicated Host Reservation offering.
+ */ +export interface HostOffering { /** - *Information about the event windows.
+ *The currency of the offering.
*/ - InstanceEventWindows?: InstanceEventWindow[]; + CurrencyCode?: CurrencyCodeValues | string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The duration of the offering (in seconds).
+ */ + Duration?: number; + + /** + *The hourly price of the offering.
+ */ + HourlyPrice?: string; + + /** + *The instance family of the offering.
+ */ + InstanceFamily?: string; + + /** + *The ID of the offering.
+ */ + OfferingId?: string; + + /** + *The available payment option.
+ */ + PaymentOption?: PaymentOption | string; + + /** + *The upfront price of the offering. Does not apply to No Upfront + * offerings.
+ */ + UpfrontPrice?: string; +} + +export namespace HostOffering { + /** + * @internal + */ + export const filterSensitiveLog = (obj: HostOffering): any => ({ + ...obj, + }); +} + +export interface DescribeHostReservationOfferingsResult { + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the offerings.
+ */ + OfferingSet?: HostOffering[]; } -export namespace DescribeInstanceEventWindowsResult { +export namespace DescribeHostReservationOfferingsResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeInstanceEventWindowsResult): any => ({ + export const filterSensitiveLog = (obj: DescribeHostReservationOfferingsResult): any => ({ ...obj, }); } -export interface DescribeInstancesRequest { +export interface DescribeHostReservationsRequest { /** *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.
- * client-token
- The idempotency token you provided when you launched
- * the instance.
- * dns-name
- The public DNS name of the instance.
- * group-id
- The ID of the security group for the instance.
- * EC2-Classic only.
- * group-name
- The name of the security group for the instance.
- * EC2-Classic only.
- * 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-family
- The instance family (for example,
+ * m4
).
*
- * instance-state-name
- The state of the instance
- * (pending
| running
| shutting-down
|
- * terminated
| stopping
|
- * stopped
).
payment-option
- The payment option (NoUpfront
|
+ * PartialUpfront
| AllUpfront
).
*
- * instance-type
- The type of instance (for example,
- * t2.micro
).
state
- The state of the reservation (payment-pending
+ * | payment-failed
| active
|
+ * retired
).
*
- * instance.group-id
- The ID of the security group for the
- * instance.
+ * tag:
- 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.
- * 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
- Enable or disable metadata
- * access on http endpoint (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.
+ * 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.
The host reservation IDs.
+ */ + HostReservationIdSet?: string[]; + + /** + *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.
The token to use to retrieve the next page of results.
+ */ + NextToken?: string; +} + +export namespace DescribeHostReservationsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeHostReservationsRequest): any => ({ + ...obj, + }); +} + +export enum ReservationState { + ACTIVE = "active", + PAYMENT_FAILED = "payment-failed", + PAYMENT_PENDING = "payment-pending", + RETIRED = "retired", +} + +/** + *Details about the Dedicated Host Reservation and associated Dedicated + * Hosts.
+ */ +export interface HostReservation { + /** + *The number of Dedicated Hosts the reservation is associated with.
+ */ + Count?: number; + + /** + *The currency in which the upfrontPrice
and hourlyPrice
+ * amounts are specified. At this time, the only supported currency is
+ * USD
.
The length of the reservation's term, specified in seconds. Can be 31536000
+ * (1 year)
| 94608000 (3 years)
.
The date and time that the reservation ends.
+ */ + End?: Date; + + /** + *The IDs of the Dedicated Hosts associated with the reservation.
+ */ + HostIdSet?: string[]; + + /** + *The ID of the reservation that specifies the associated Dedicated Hosts.
+ */ + HostReservationId?: string; + + /** + *The hourly price of the reservation.
+ */ + HourlyPrice?: string; + + /** + *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.
+ */ + InstanceFamily?: string; + + /** + *The ID of the reservation. This remains the same regardless of which Dedicated + * Hosts are associated with it.
+ */ + OfferingId?: string; + + /** + *The payment option selected for this reservation.
+ */ + PaymentOption?: PaymentOption | string; + + /** + *The date and time that the reservation started.
+ */ + Start?: Date; + + /** + *The state of the reservation.
+ */ + State?: ReservationState | string; + + /** + *The upfront price of the reservation.
+ */ + UpfrontPrice?: string; + + /** + *Any tags assigned to the Dedicated Host Reservation.
+ */ + Tags?: Tag[]; +} + +export namespace HostReservation { + /** + * @internal + */ + export const filterSensitiveLog = (obj: HostReservation): any => ({ + ...obj, + }); +} + +export interface DescribeHostReservationsResult { + /** + *Details about the reservation's configuration.
+ */ + HostReservationSet?: HostReservation[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The filters.
+ *
- * network-interface.association.ip-owner-id
- The owner of the
- * Elastic IP address (IPv4) associated with the network interface.
auto-placement
- Whether auto-placement is enabled or disabled
+ * (on
| off
).
*
- * network-interface.association.allocation-id
- The allocation ID
- * returned when you allocated the Elastic IP address (IPv4) for your network
- * interface.
availability-zone
- The Availability Zone of the
+ * host.
*
- * network-interface.association.association-id
- The association ID
- * returned when the network interface was associated with an IPv4 address.
client-token
- The idempotency token that you provided when you
+ * allocated the host.
*
- * network-interface.attachment.attachment-id
- The ID of the
- * interface attachment.
host-reservation-id
- The ID of the reservation assigned to
+ * this host.
*
- * network-interface.attachment.instance-id
- The ID of the instance
- * to which the network interface is attached.
instance-type
- The instance type size that the Dedicated Host
+ * is configured to support.
*
- * network-interface.attachment.instance-owner-id
- The owner ID of
- * the instance to which the network interface is attached.
state
- The allocation state of the Dedicated Host
+ * (available
| under-assessment
|
+ * permanent-failure
| released
|
+ * released-permanent-failure
).
*
- * 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:
- 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.
+ * 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.
The instance IDs.
- *Default: Describes all your instances.
- */ - InstanceIds?: string[]; + Filter?: Filter[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The IDs of the Dedicated Hosts. The IDs are used for targeted instance + * launches.
*/ - DryRun?: boolean; + HostIds?: string[]; /** - *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. You cannot specify this parameter and the instance IDs
- * parameter in the same call.
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.
*/ MaxResults?: number; /** - *The token to request the next page of results.
+ *The token to use to retrieve the next page of results.
*/ NextToken?: string; } -export namespace DescribeInstancesRequest { +export namespace DescribeHostsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeInstancesRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeHostsRequest): any => ({ ...obj, }); } /** - *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.
Information about the number of instances that can be launched onto the Dedicated + * Host.
*/ -export interface CapacityReservationSpecificationResponse { +export interface InstanceCapacity { /** - *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.
The number of instances that can be launched onto the Dedicated Host based on the + * host's available capacity.
*/ - CapacityReservationPreference?: CapacityReservationPreference | string; + AvailableCapacity?: number; /** - *Information about the targeted Capacity Reservation or Capacity Reservation group.
+ *The instance type supported by the Dedicated Host.
*/ - CapacityReservationTarget?: CapacityReservationTargetResponse; + InstanceType?: string; + + /** + *The total number of instances that can be launched onto the Dedicated Host if there + * are no instances running on it.
+ */ + TotalCapacity?: number; } -export namespace CapacityReservationSpecificationResponse { +export namespace InstanceCapacity { /** * @internal */ - export const filterSensitiveLog = (obj: CapacityReservationSpecificationResponse): any => ({ + export const filterSensitiveLog = (obj: InstanceCapacity): any => ({ ...obj, }); } /** - *The CPU options for the instance.
+ *The capacity information for instances that can be launched onto the Dedicated Host.
*/ -export interface CpuOptions { +export interface AvailableCapacity { /** - *The number of CPU cores for the instance.
+ *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.
*/ - CoreCount?: number; + AvailableInstanceCapacity?: InstanceCapacity[]; /** - *The number of threads per CPU core.
+ *The number of vCPUs available for launching instances onto the Dedicated Host.
*/ - ThreadsPerCore?: number; + AvailableVCpus?: number; } -export namespace CpuOptions { +export namespace AvailableCapacity { /** * @internal */ - export const filterSensitiveLog = (obj: CpuOptions): any => ({ + export const filterSensitiveLog = (obj: AvailableCapacity): any => ({ ...obj, }); } /** - *Describes the association between an instance and an Elastic Graphics accelerator.
+ *Describes the properties of a Dedicated Host.
*/ -export interface ElasticGpuAssociation { +export interface HostProperties { /** - *The ID of the Elastic Graphics accelerator.
+ *The number of cores on the Dedicated Host.
*/ - ElasticGpuId?: string; + Cores?: number; /** - *The ID of the association.
+ *The instance type supported by the Dedicated Host. For example, m5.large
.
+ * If the host supports multiple instance types, no instanceType
+ * is returned.
The state of the association between the instance and the - * Elastic Graphics accelerator.
+ *The instance family supported by the Dedicated Host. For example, m5
.
The time the Elastic Graphics accelerator was associated with the instance.
+ *The number of sockets on the Dedicated Host.
*/ - ElasticGpuAssociationTime?: string; + Sockets?: number; + + /** + *The total number of vCPUs on the Dedicated Host.
+ */ + TotalVCpus?: number; } -export namespace ElasticGpuAssociation { +export namespace HostProperties { /** * @internal */ - export const filterSensitiveLog = (obj: ElasticGpuAssociation): any => ({ + export const filterSensitiveLog = (obj: HostProperties): any => ({ ...obj, }); } /** - *- * Describes the association between an instance and an elastic inference accelerator. - *
+ *Describes an instance running on a Dedicated Host.
*/ -export interface ElasticInferenceAcceleratorAssociation { - /** - *- * The Amazon Resource Name (ARN) of the elastic inference accelerator. - *
- */ - ElasticInferenceAcceleratorArn?: string; - +export interface HostInstance { /** - *- * The ID of the association. - *
+ *The ID of instance that is running on the Dedicated Host.
*/ - ElasticInferenceAcceleratorAssociationId?: string; + InstanceId?: string; /** - *- * The state of the elastic inference accelerator. - *
+ *The instance type (for example, m3.medium
) of the running instance.
- * The time at which the elastic inference accelerator is associated with an instance. - *
+ *The ID of the Amazon Web Services account that owns the instance.
*/ - ElasticInferenceAcceleratorAssociationTime?: Date; + OwnerId?: string; } -export namespace ElasticInferenceAcceleratorAssociation { +export namespace HostInstance { /** * @internal */ - export const filterSensitiveLog = (obj: ElasticInferenceAcceleratorAssociation): any => ({ + export const filterSensitiveLog = (obj: HostInstance): any => ({ ...obj, }); } /** - *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.
+ *Describes the properties of the Dedicated Host.
*/ -export interface HibernationOptions { +export interface Host { /** - *If this parameter is set to true
, your instance is enabled for
- * hibernation; otherwise, it is not enabled for hibernation.
Whether auto-placement is on or off.
*/ - Configured?: boolean; -} + AutoPlacement?: AutoPlacement | string; -export namespace HibernationOptions { /** - * @internal + *The Availability Zone of the Dedicated Host.
*/ - export const filterSensitiveLog = (obj: HibernationOptions): any => ({ - ...obj, - }); -} - -export type InstanceLifecycleType = "scheduled" | "spot"; + AvailabilityZone?: string; -/** - *Describes a license configuration.
- */ -export interface LicenseConfiguration { /** - *The Amazon Resource Name (ARN) of the license configuration.
+ *Information about the instances running on the Dedicated Host.
*/ - LicenseConfigurationArn?: string; -} + AvailableCapacity?: AvailableCapacity; -export namespace LicenseConfiguration { /** - * @internal + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
*/ - export const filterSensitiveLog = (obj: LicenseConfiguration): any => ({ - ...obj, - }); -} - -export type InstanceMetadataEndpointState = "disabled" | "enabled"; - -export enum InstanceMetadataProtocolState { - disabled = "disabled", - enabled = "enabled", -} - -export enum HttpTokensState { - optional = "optional", - required = "required", -} - -export type InstanceMetadataOptionsState = "applied" | "pending"; + ClientToken?: string; -/** - *The metadata options for the instance.
- */ -export interface InstanceMetadataOptionsResponse { /** - *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.
The ID of the Dedicated Host.
*/ - State?: InstanceMetadataOptionsState | string; + HostId?: string; /** - *The state of token usage for your instance metadata requests. If the parameter is not
- * specified in the request, the default state is optional
.
If the state is optional
, you can choose to retrieve instance metadata
- * with or without a signed token header on your request. If you retrieve the IAM role
- * credentials without a token, the version 1.0 role credentials are returned. If you
- * retrieve the IAM role credentials using a valid signed token, the version 2.0 role
- * credentials are returned.
If the state is required
, you must send a signed token header with any
- * instance metadata retrieval requests. In this state, retrieving the IAM role credential
- * always returns the version 2.0 credentials; the version 1.0 credentials are not
- * available.
The hardware specifications of the Dedicated Host.
*/ - HttpTokens?: HttpTokensState | string; + HostProperties?: HostProperties; /** - *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
+ *The reservation ID of the Dedicated Host. This returns a null
response
+ * if the Dedicated Host doesn't have an associated reservation.
Indicates whether the HTTP metadata endpoint on your instances is enabled or disabled.
+ *The IDs and instance type that are currently running on the Dedicated + * Host.
*/ - HttpEndpoint?: InstanceMetadataEndpointState | string; + Instances?: HostInstance[]; /** - *Indicates whether the IPv6 endpoint for the instance metadata service is enabled or disabled.
+ *The Dedicated Host's state.
*/ - HttpProtocolIpv6?: InstanceMetadataProtocolState | string; -} + State?: AllocationState | string; -export namespace InstanceMetadataOptionsResponse { /** - * @internal + *The time that the Dedicated Host was allocated.
*/ - export const filterSensitiveLog = (obj: InstanceMetadataOptionsResponse): any => ({ - ...obj, - }); -} - -export type MonitoringState = "disabled" | "disabling" | "enabled" | "pending"; + AllocationTime?: Date; -/** - *Describes the monitoring of an instance.
- */ -export interface Monitoring { /** - *Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is - * enabled.
+ *The time that the Dedicated Host was released.
*/ - State?: MonitoringState | string; -} + ReleaseTime?: Date; -export namespace Monitoring { /** - * @internal + *Any tags assigned to the Dedicated Host.
*/ - export const filterSensitiveLog = (obj: Monitoring): any => ({ - ...obj, - }); -} + Tags?: Tag[]; -/** - *Describes association information for an Elastic IP address (IPv4).
- */ -export interface InstanceNetworkInterfaceAssociation { /** - *The carrier IP address associated with the network interface.
+ *Indicates whether host recovery is enabled or disabled for the Dedicated Host.
*/ - CarrierIp?: string; + HostRecovery?: HostRecovery | string; /** - *The customer-owned IP address associated with the network interface.
+ *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.
The ID of the owner of the Elastic IP address.
+ *The ID of the Amazon Web Services account that owns the Dedicated Host.
*/ - IpOwnerId?: string; + OwnerId?: string; /** - *The public DNS name.
+ *The ID of the Availability Zone in which the Dedicated Host is allocated.
*/ - PublicDnsName?: string; + AvailabilityZoneId?: string; /** - *The public IP address or Elastic IP address bound to the network interface.
+ *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.
Describes a network interface attachment.
- */ -export interface InstanceNetworkInterfaceAttachment { +export interface DescribeHostsResult { /** - *The time stamp when the attachment initiated.
+ *Information about the Dedicated Hosts.
*/ - AttachTime?: Date; + Hosts?: Host[]; /** - *The ID of the network interface attachment.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Indicates whether the network interface is deleted when the instance is terminated.
+ * @internal */ - DeleteOnTermination?: boolean; + export const filterSensitiveLog = (obj: DescribeHostsResult): any => ({ + ...obj, + }); +} +export interface DescribeIamInstanceProfileAssociationsRequest { /** - *The index of the device on the instance for the network interface attachment.
+ *The IAM instance profile associations.
*/ - DeviceIndex?: number; + AssociationIds?: string[]; /** - *The attachment state.
+ *The filters.
+ *
+ * instance-id
- The ID of the instance.
+ * state
- The state of the association (associating
|
+ * associated
| disassociating
).
The index of the network card.
+ *The maximum number of results to return in a single call. To retrieve the remaining
+ * results, make another call with the returned NextToken
value.
The token to request the next page of results.
+ */ + NextToken?: string; } -export namespace InstanceNetworkInterfaceAttachment { +export namespace DescribeIamInstanceProfileAssociationsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceNetworkInterfaceAttachment): any => ({ + export const filterSensitiveLog = (obj: DescribeIamInstanceProfileAssociationsRequest): any => ({ ...obj, }); } -/** - *Information about an IPv4 prefix.
- */ -export interface InstanceIpv4Prefix { +export interface DescribeIamInstanceProfileAssociationsResult { /** - *One or more IPv4 prefixes assigned to the network interface.
+ *Information about the IAM instance profile associations.
*/ - Ipv4Prefix?: string; + IamInstanceProfileAssociations?: IamInstanceProfileAssociation[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about an IPv6 prefix.
- */ -export interface InstanceIpv6Prefix { +export interface DescribeIdentityIdFormatRequest { /** - *One or more IPv6 prefixes assigned to the network interface.
+ *The ARN of the principal, which can be an IAM role, IAM user, or the root user.
*/ - Ipv6Prefix?: string; + PrincipalArn: string | undefined; + + /** + *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
+ *
Describes a private IPv4 address.
- */ -export interface InstancePrivateIpAddress { +export interface DescribeIdentityIdFormatResult { /** - *The association information for an Elastic IP address for the network interface.
+ *Information about the ID format for the resources.
*/ - Association?: InstanceNetworkInterfaceAssociation; + Statuses?: IdFormat[]; +} +export namespace DescribeIdentityIdFormatResult { /** - *Indicates whether this IPv4 address is the primary private IP address of the network interface.
+ * @internal */ - Primary?: boolean; + export const filterSensitiveLog = (obj: DescribeIdentityIdFormatResult): any => ({ + ...obj, + }); +} +export interface DescribeIdFormatRequest { /** - *The private IPv4 DNS name.
+ *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
+ *
The private IPv4 address of the network interface.
+ * @internal */ - PrivateIpAddress?: string; + export const filterSensitiveLog = (obj: DescribeIdFormatRequest): any => ({ + ...obj, + }); } -export namespace InstancePrivateIpAddress { +export interface DescribeIdFormatResult { + /** + *Information about the ID format for the resource.
+ */ + Statuses?: IdFormat[]; +} + +export namespace DescribeIdFormatResult { /** * @internal */ - export const filterSensitiveLog = (obj: InstancePrivateIpAddress): any => ({ + export const filterSensitiveLog = (obj: DescribeIdFormatResult): any => ({ ...obj, }); } +export type ImageAttributeName = + | "blockDeviceMapping" + | "bootMode" + | "description" + | "kernel" + | "launchPermission" + | "productCodes" + | "ramdisk" + | "sriovNetSupport"; + /** - *Describes a network interface.
+ *Contains the parameters for DescribeImageAttribute.
*/ -export interface InstanceNetworkInterface { +export interface DescribeImageAttributeRequest { /** - *The association information for an Elastic IPv4 associated with the network - * interface.
+ *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.
The network interface attachment.
+ *The ID of the AMI.
*/ - Attachment?: InstanceNetworkInterfaceAttachment; + ImageId: string | undefined; /** - *The description.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
One or more security groups.
+ * @internal */ - Groups?: GroupIdentifier[]; + export const filterSensitiveLog = (obj: DescribeImageAttributeRequest): any => ({ + ...obj, + }); +} +/** + *Describes a launch permission.
+ */ +export interface LaunchPermission { /** - *One or more IPv6 addresses associated with the network interface.
+ *The name of the group.
*/ - Ipv6Addresses?: InstanceIpv6Address[]; + Group?: PermissionGroup | string; /** - *The MAC address.
+ *The Amazon Web Services account ID.
+ *Constraints: Up to 10 000 account IDs can be specified in a single request.
*/ - MacAddress?: string; + UserId?: string; /** - *The ID of the network interface.
+ *The Amazon Resource Name (ARN) of an organization.
*/ - NetworkInterfaceId?: string; + OrganizationArn?: string; /** - *The ID of the Amazon Web Services account that created the network interface.
+ *The Amazon Resource Name (ARN) of an organizational unit (OU).
*/ - OwnerId?: string; + OrganizationalUnitArn?: string; +} +export namespace LaunchPermission { /** - *The private DNS name.
+ * @internal */ - PrivateDnsName?: string; + export const filterSensitiveLog = (obj: LaunchPermission): any => ({ + ...obj, + }); +} +/** + *Describes an image attribute.
+ */ +export interface ImageAttribute { /** - *The IPv4 address of the network interface within the subnet.
+ *The block device mapping entries.
*/ - PrivateIpAddress?: string; + BlockDeviceMappings?: BlockDeviceMapping[]; /** - *One or more private IPv4 addresses associated with the network interface.
+ *The ID of the AMI.
*/ - PrivateIpAddresses?: InstancePrivateIpAddress[]; + ImageId?: string; /** - *Indicates whether source/destination checking is enabled.
+ *The launch permissions.
*/ - SourceDestCheck?: boolean; + LaunchPermissions?: LaunchPermission[]; /** - *The status of the network interface.
+ *The product codes.
*/ - Status?: NetworkInterfaceStatus | string; + ProductCodes?: ProductCode[]; /** - *The ID of the subnet.
+ *A description for the AMI.
*/ - SubnetId?: string; + Description?: AttributeValue; /** - *The ID of the VPC.
+ *The kernel ID.
*/ - VpcId?: string; + KernelId?: AttributeValue; /** - *Describes the type of network interface.
- *Valid values: interface
| efa
| trunk
- *
The RAM disk ID.
*/ - InterfaceType?: string; + RamdiskId?: AttributeValue; /** - *The IPv4 delegated prefixes that are assigned to the network interface.
+ *Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
*/ - Ipv4Prefixes?: InstanceIpv4Prefix[]; + SriovNetSupport?: AttributeValue; /** - *The IPv6 delegated prefixes that are assigned to the network interface.
+ *Describes a value for a resource attribute that is a String.
*/ - Ipv6Prefixes?: InstanceIpv6Prefix[]; + BootMode?: AttributeValue; } -export namespace InstanceNetworkInterface { +export namespace ImageAttribute { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceNetworkInterface): any => ({ + export const filterSensitiveLog = (obj: ImageAttribute): any => ({ ...obj, }); } -/** - *Describes the options for instance hostnames.
- */ -export interface PrivateDnsNameOptionsResponse { - /** - *The type of hostname to assign to an instance.
- */ - HostnameType?: HostnameType | string; - - /** - *Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
- */ - EnableResourceNameDnsARecord?: boolean; - - /** - *Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
- */ - EnableResourceNameDnsAAAARecord?: boolean; -} - -export namespace PrivateDnsNameOptionsResponse { +export interface DescribeImagesRequest { /** - * @internal + *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.
Describes the current state of an instance.
- */ -export interface InstanceState { /** - *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:
- *The filters.
+ *
- * 0
: pending
- *
+ * architecture
- The image architecture (i386
|
+ * x86_64
| arm64
).
- * 16
: running
- *
+ * block-device-mapping.delete-on-termination
- A Boolean value that indicates
+ * whether the Amazon EBS volume is deleted on instance termination.
- * 32
: shutting-down
- *
+ * block-device-mapping.device-name
- The device name specified in the block device mapping (for
+ * example, /dev/sdh
or xvdh
).
- * 48
: terminated
- *
+ * block-device-mapping.snapshot-id
- The ID of the snapshot used for the Amazon EBS
+ * volume.
- * 64
: stopping
- *
+ * 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.
+ * 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. To only list Windows-based AMIs, use
+ * 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.
- * 80
: stopped
- *
sriov-net-support
- A value of simple
indicates
+ * that enhanced networking with the Intel 82599 VF interface is enabled.
* You can ignore the high byte value by zeroing out all of the bits above 2^8 or 256 in - * decimal.
- */ - Code?: number; + *
+ * tag
: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
).
The current state of the instance.
+ *The image IDs.
+ *Default: Describes all images available to you.
*/ - Name?: InstanceStateName | string; + ImageIds?: string[]; + + /** + *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.
If true
, all deprecated AMIs are included in the response. If
+ * false
, no deprecated AMIs are included in the response. If no value is
+ * specified, the default value is false
.
If you are the AMI owner, all deprecated AMIs appear in the response regardless of the value (true
or false
) that you set for this parameter.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes an instance.
+ *Describes a state change.
*/ -export interface Instance { +export interface StateReason { /** - *The AMI launch index, which can be used to find this instance in the launch - * group.
+ *The reason code for the state change.
*/ - AmiLaunchIndex?: number; + Code?: string; /** - *The ID of the AMI used to launch the instance.
+ *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.
The ID of the instance.
+ * @internal */ - InstanceId?: string; + export const filterSensitiveLog = (obj: StateReason): any => ({ + ...obj, + }); +} +export type VirtualizationType = "hvm" | "paravirtual"; + +/** + *Describes an image.
+ */ +export interface Image { /** - *The instance type.
+ *The architecture of the image.
*/ - InstanceType?: _InstanceType | string; + Architecture?: ArchitectureValues | string; /** - *The kernel associated with this instance, if applicable.
+ *The date and time the image was created.
*/ - KernelId?: string; + CreationDate?: string; /** - *The name of the key pair, if this instance was launched with an associated key - * pair.
+ *The ID of the AMI.
*/ - KeyName?: string; + ImageId?: string; /** - *The time the instance was launched.
+ *The location of the AMI.
*/ - LaunchTime?: Date; + ImageLocation?: string; /** - *The monitoring for the instance.
+ *The type of image.
*/ - Monitoring?: Monitoring; + ImageType?: ImageTypeValues | string; /** - *The location where the instance launched, if applicable.
+ *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.
The value is Windows
for Windows instances; otherwise blank.
The kernel associated with the image, if any. Only applicable for machine images.
*/ - Platform?: PlatformValues | string; + KernelId?: string; /** - *(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.
[EC2-VPC] 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.
+ *The ID of the Amazon Web Services account that owns the image.
*/ - PrivateDnsName?: string; + OwnerId?: string; /** - *The private IPv4 address assigned to the instance.
+ *This value is set to windows
for Windows AMIs; otherwise, it is blank.
The product codes attached to this instance, if applicable.
+ *The platform details associated with the billing code of the AMI. For more information, + * see Understanding + * AMI billing in the Amazon Elastic Compute Cloud User Guide.
*/ - ProductCodes?: ProductCode[]; + PlatformDetails?: string; /** - *(IPv4 only) The public DNS name assigned to the instance. This name is not available
- * until the instance enters the running
state. For EC2-VPC, this name is only
- * available if you've enabled DNS hostnames for your VPC.
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.
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.
+ *Any product codes associated with the AMI.
*/ - PublicIpAddress?: string; + ProductCodes?: ProductCode[]; /** - *The RAM disk associated with this instance, if applicable.
+ *The RAM disk associated with the image, if any. Only applicable for machine images.
*/ RamdiskId?: string; /** - *The current state of the instance.
+ *The current state of the AMI. If the state is available
, the image is successfully registered and can be used to launch an instance.
The reason for the most recent state transition. This might be an empty string.
+ *Any block device mapping entries.
*/ - StateTransitionReason?: string; + BlockDeviceMappings?: BlockDeviceMapping[]; /** - *[EC2-VPC] The ID of the subnet in which the instance is running.
+ *The description of the AMI that was provided during image creation.
*/ - SubnetId?: string; + Description?: string; /** - *[EC2-VPC] The ID of the VPC in which the instance is running.
+ *Specifies whether enhanced networking with ENA is enabled.
*/ - VpcId?: string; + EnaSupport?: boolean; /** - *The architecture of the image.
+ *The hypervisor type of the image.
*/ - Architecture?: ArchitectureValues | string; + Hypervisor?: HypervisorType | string; /** - *Any block device mapping entries for the instance.
+ *The Amazon Web Services account alias (for example, amazon
, self
) or
+ * the Amazon Web Services account ID of the AMI owner.
The idempotency token you provided when you launched the instance, if - * applicable.
+ *The name of the AMI that was provided during image creation.
*/ - ClientToken?: string; + Name?: string; /** - *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.
+ *The device name of the root device volume (for example, /dev/sda1
).
Specifies whether enhanced networking with ENA is enabled.
+ *The type of root device used by the AMI. The AMI can use an Amazon EBS volume or an instance store volume.
*/ - EnaSupport?: boolean; + RootDeviceType?: DeviceType | string; /** - *The hypervisor type of the instance. The value xen
is used for both Xen and
- * Nitro hypervisors.
Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
*/ - Hypervisor?: HypervisorType | string; + SriovNetSupport?: string; /** - *The IAM instance profile associated with the instance, if applicable.
+ *The reason for the state change.
*/ - IamInstanceProfile?: IamInstanceProfile; + StateReason?: StateReason; /** - *Indicates whether this is a Spot Instance or a Scheduled Instance.
+ *Any tags assigned to the image.
*/ - InstanceLifecycle?: InstanceLifecycleType | string; + Tags?: Tag[]; /** - *The Elastic GPU associated with the instance.
+ *The type of virtualization of the AMI.
*/ - ElasticGpuAssociations?: ElasticGpuAssociation[]; + VirtualizationType?: VirtualizationType | string; /** - *The elastic inference accelerator associated with the instance.
+ *The boot mode of the image. For more information, see Boot modes in the + * Amazon Elastic Compute Cloud User Guide.
*/ - ElasticInferenceAcceleratorAssociations?: ElasticInferenceAcceleratorAssociation[]; + BootMode?: BootModeValues | string; /** - *[EC2-VPC] The network interfaces for the instance.
+ *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.
*/ - NetworkInterfaces?: InstanceNetworkInterface[]; + DeprecationTime?: string; +} +export namespace Image { /** - *The Amazon Resource Name (ARN) of the Outpost.
+ * @internal */ - OutpostArn?: string; + export const filterSensitiveLog = (obj: Image): any => ({ + ...obj, + }); +} +export interface DescribeImagesResult { /** - *The device name of the root device volume (for example,
- * /dev/sda1
).
Information about the images.
*/ - RootDeviceName?: string; + Images?: Image[]; +} +export namespace DescribeImagesResult { /** - *The root device type used by the AMI. The AMI can use an EBS volume or an instance - * store volume.
+ * @internal */ - RootDeviceType?: DeviceType | string; + export const filterSensitiveLog = (obj: DescribeImagesResult): any => ({ + ...obj, + }); +} +export interface DescribeImportImageTasksRequest { /** - *The security groups for the instance.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Indicates whether source/destination checking is enabled.
+ *Filter tasks using the task-state
filter and one of the following values: active
,
+ * completed
, deleting
, or deleted
.
If the request is a Spot Instance request, the ID of the request.
+ *The IDs of the import image tasks.
*/ - SpotInstanceRequestId?: string; + ImportTaskIds?: string[]; /** - *Specifies whether enhanced networking with the Intel 82599 Virtual Function interface - * is enabled.
+ *The maximum number of results to return in a single call.
*/ - SriovNetSupport?: string; + MaxResults?: number; /** - *The reason for the most recent state transition.
+ *A token that indicates the next page of results.
*/ - StateReason?: StateReason; + NextToken?: string; +} +export namespace DescribeImportImageTasksRequest { /** - *Any tags assigned to the instance.
+ * @internal */ - Tags?: Tag[]; + export const filterSensitiveLog = (obj: DescribeImportImageTasksRequest): any => ({ + ...obj, + }); +} +/** + *The response information for license configurations.
+ */ +export interface ImportImageLicenseConfigurationResponse { /** - *The virtualization type of the instance.
+ *The ARN of a license configuration.
*/ - VirtualizationType?: VirtualizationType | string; + LicenseConfigurationArn?: string; +} +export namespace ImportImageLicenseConfigurationResponse { /** - *The CPU options for the instance.
+ * @internal */ - CpuOptions?: CpuOptions; + export const filterSensitiveLog = (obj: ImportImageLicenseConfigurationResponse): any => ({ + ...obj, + }); +} +/** + *Describes the Amazon S3 bucket for the disk image.
+ */ +export interface UserBucketDetails { /** - *The ID of the Capacity Reservation.
+ *The Amazon S3 bucket from which the disk image was created.
*/ - CapacityReservationId?: string; + S3Bucket?: string; /** - *Information about the Capacity Reservation targeting option.
+ *The file name of the disk image.
*/ - CapacityReservationSpecification?: CapacityReservationSpecificationResponse; + S3Key?: string; +} +export namespace UserBucketDetails { /** - *Indicates whether the instance is enabled for hibernation.
+ * @internal */ - HibernationOptions?: HibernationOptions; + export const filterSensitiveLog = (obj: UserBucketDetails): any => ({ + ...obj, + }); +} +/** + *Describes the snapshot created from the imported disk.
+ */ +export interface SnapshotDetail { /** - *The license configurations for the instance.
+ *A description for the snapshot.
*/ - Licenses?: LicenseConfiguration[]; + Description?: string; /** - *The metadata options for the instance.
+ *The block device mapping for the snapshot.
*/ - MetadataOptions?: InstanceMetadataOptionsResponse; + DeviceName?: string; /** - *Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.
+ *The size of the disk in the snapshot, in GiB.
*/ - EnclaveOptions?: EnclaveOptions; + DiskImageSize?: number; /** - *The boot mode of the instance. For more information, see Boot modes in the - * Amazon EC2 User Guide.
+ *The format of the disk image from which the snapshot is created.
*/ - BootMode?: BootModeValues | string; + Format?: string; /** - *The platform details value for the instance. For more information, see AMI - * billing information fields in the - * Amazon EC2 User Guide.
+ *The percentage of progress for the task.
*/ - PlatformDetails?: string; + Progress?: string; /** - *The usage operation value for the instance. For more information, see AMI billing information fields - * in the Amazon EC2 User Guide.
+ *The snapshot ID of the disk being imported.
*/ - UsageOperation?: string; + SnapshotId?: string; /** - *The time that the usage operation was last updated.
+ *A brief status of the snapshot creation.
*/ - UsageOperationUpdateTime?: Date; + Status?: string; /** - *The options for the instance hostname.
+ *A detailed status message for the snapshot creation.
*/ - PrivateDnsNameOptions?: PrivateDnsNameOptionsResponse; + StatusMessage?: string; /** - *The IPv6 address assigned to the instance.
+ *The URL used to access the disk image.
*/ - Ipv6Address?: string; + Url?: string; + + /** + *The Amazon S3 bucket for the disk image.
+ */ + UserBucket?: UserBucketDetails; } -export namespace Instance { +export namespace SnapshotDetail { /** * @internal */ - export const filterSensitiveLog = (obj: Instance): any => ({ + export const filterSensitiveLog = (obj: SnapshotDetail): any => ({ ...obj, }); } /** - *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.
+ *Describes an import image task.
*/ -export interface Reservation { +export interface ImportImageTask { /** - *[EC2-Classic only] The security groups.
+ *The architecture of the virtual machine.
+ *Valid values: i386
| x86_64
| arm64
+ *
The instances.
+ *A description of the import task.
*/ - Instances?: Instance[]; + Description?: string; /** - *The ID of the Amazon Web Services account that owns the reservation.
+ *Indicates whether the image is encrypted.
*/ - OwnerId?: string; + Encrypted?: boolean; /** - *The ID of the requester that launched the instances on your behalf (for example, - * Amazon Web Services Management Console or Auto Scaling).
+ *The target hypervisor for the import task.
+ *Valid values: xen
+ *
The ID of the reservation.
+ *The ID of the Amazon Machine Image (AMI) of the imported virtual machine.
*/ - ReservationId?: string; -} + ImageId?: string; -export namespace Reservation { /** - * @internal + *The ID of the import image task.
*/ - export const filterSensitiveLog = (obj: Reservation): any => ({ - ...obj, - }); -} + ImportTaskId?: string; -export interface DescribeInstancesResult { /** - *Information about the reservations.
+ *The identifier for the KMS key that was used to create the encrypted image.
*/ - Reservations?: Reservation[]; + KmsKeyId?: string; /** - *The token to use to retrieve the next page of results. This value is null
- * when there are no more results to return.
The license type of the virtual machine.
*/ - NextToken?: string; -} + LicenseType?: string; -export namespace DescribeInstancesResult { /** - * @internal + *The description string for the import image task.
*/ - export const filterSensitiveLog = (obj: DescribeInstancesResult): any => ({ - ...obj, - }); -} + Platform?: string; -export interface DescribeInstanceStatusRequest { /** - *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
).
The instance IDs.
- *Default: Describes all your instances.
- *Constraints: Maximum 100 explicitly specified instance IDs.
- */ - InstanceIds?: string[]; - - /** - *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. You cannot specify this parameter and the instance IDs
- * parameter in the same call.
The percentage of progress of the import image task.
*/ - MaxResults?: number; + Progress?: string; /** - *The token to retrieve the next page of results.
+ *Information about the snapshots.
*/ - NextToken?: string; + SnapshotDetails?: SnapshotDetail[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
A brief status for the import image task.
*/ - DryRun?: boolean; + Status?: string; /** - *When true
, includes the health status for all instances. When
- * false
, includes the health status for running instances only.
Default: false
- *
A descriptive status message for the import image task.
*/ - IncludeAllInstances?: boolean; -} + StatusMessage?: string; -export namespace DescribeInstanceStatusRequest { /** - * @internal + *The tags for the import image task.
*/ - export const filterSensitiveLog = (obj: DescribeInstanceStatusRequest): any => ({ - ...obj, - }); -} - -export type EventCode = - | "instance-reboot" - | "instance-retirement" - | "instance-stop" - | "system-maintenance" - | "system-reboot"; + Tags?: Tag[]; -/** - *Describes a scheduled event for an instance.
- */ -export interface InstanceStatusEvent { /** - *The ID of the event.
+ *The ARNs of the license configurations that are associated with the import image task.
*/ - InstanceEventId?: string; + LicenseSpecifications?: ImportImageLicenseConfigurationResponse[]; /** - *The event code.
+ *The usage operation value.
*/ - Code?: EventCode | string; + UsageOperation?: string; /** - *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].
+ *The boot mode of the virtual machine.
*/ - Description?: string; + BootMode?: BootModeValues | string; +} +export namespace ImportImageTask { /** - *The latest scheduled end time for the event.
+ * @internal */ - NotAfter?: Date; + export const filterSensitiveLog = (obj: ImportImageTask): any => ({ + ...obj, + }); +} +export interface DescribeImportImageTasksResult { /** - *The earliest scheduled start time for the event.
+ *A list of zero or more import image tasks that are currently active or were completed or canceled in the + * previous 7 days.
*/ - NotBefore?: Date; + ImportImageTasks?: ImportImageTask[]; /** - *The deadline for starting the event.
+ *The token to use to get the next page of results. This value is null
when there are no more results
+ * to return.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The filters.
+ */ + Filters?: Filter[]; -/** - *Describes the instance status.
- */ -export interface InstanceStatusDetails { /** - *The time when a status check failed. For an instance that was launched and impaired, - * this is the time when the instance was launched.
+ *A list of import snapshot task IDs.
*/ - ImpairedSince?: Date; + ImportTaskIds?: string[]; /** - *The type of instance status.
+ *The maximum number of results to return in a single call. To retrieve the remaining results, make another call
+ * with the returned NextToken
value.
The status.
+ *A token that indicates the next page of results.
*/ - Status?: StatusType | string; + NextToken?: string; } -export namespace InstanceStatusDetails { +export namespace DescribeImportSnapshotTasksRequest { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceStatusDetails): any => ({ + export const filterSensitiveLog = (obj: DescribeImportSnapshotTasksRequest): any => ({ ...obj, }); } -export type SummaryStatus = "impaired" | "initializing" | "insufficient-data" | "not-applicable" | "ok"; - /** - *Describes the status of an instance.
+ *Details about the import snapshot task.
*/ -export interface InstanceStatusSummary { +export interface SnapshotTaskDetail { /** - *The system instance health or application instance health.
+ *The description of the snapshot.
*/ - Details?: InstanceStatusDetails[]; + Description?: string; /** - *The status.
+ *The size of the disk in the snapshot, in GiB.
*/ - Status?: SummaryStatus | string; -} + DiskImageSize?: number; -export namespace InstanceStatusSummary { /** - * @internal + *Indicates whether the snapshot is encrypted.
*/ - export const filterSensitiveLog = (obj: InstanceStatusSummary): any => ({ - ...obj, - }); -} + Encrypted?: boolean; -/** - *Describes the status of an instance.
- */ -export interface InstanceStatus { /** - *The Availability Zone of the instance.
+ *The format of the disk image from which the snapshot is created.
*/ - AvailabilityZone?: string; + Format?: string; /** - *The Amazon Resource Name (ARN) of the Outpost.
+ *The identifier for the KMS key that was used to create the encrypted snapshot.
*/ - OutpostArn?: string; + KmsKeyId?: string; /** - *Any scheduled events associated with the instance.
+ *The percentage of completion for the import snapshot task.
*/ - Events?: InstanceStatusEvent[]; + Progress?: string; /** - *The ID of the instance.
+ *The snapshot ID of the disk being imported.
*/ - InstanceId?: string; + SnapshotId?: string; /** - *The intended state of the instance. DescribeInstanceStatus requires
- * that an instance be in the running
state.
A brief status for the import snapshot task.
*/ - InstanceState?: InstanceState; + Status?: string; /** - *Reports impaired functionality that stems from issues internal to the instance, such - * as impaired reachability.
+ *A detailed status message for the import snapshot task.
*/ - InstanceStatus?: InstanceStatusSummary; + StatusMessage?: string; /** - *Reports impaired functionality that stems from issues related to the systems that - * support an instance, such as hardware failures and network connectivity problems.
+ *The URL of the disk image from which the snapshot is created.
*/ - SystemStatus?: InstanceStatusSummary; + Url?: string; + + /** + *The Amazon S3 bucket for the disk image.
+ */ + UserBucket?: UserBucketDetails; } -export namespace InstanceStatus { +export namespace SnapshotTaskDetail { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceStatus): any => ({ + export const filterSensitiveLog = (obj: SnapshotTaskDetail): any => ({ ...obj, }); } -export interface DescribeInstanceStatusResult { +/** + *Describes an import snapshot task.
+ */ +export interface ImportSnapshotTask { /** - *Information about the status of the instances.
+ *A description of the import snapshot task.
*/ - InstanceStatuses?: InstanceStatus[]; + Description?: string; /** - *The token to use to retrieve the next page of results. This value is null
- * when there are no more results to return.
The ID of the import snapshot task.
*/ - NextToken?: string; + ImportTaskId?: string; + + /** + *Describes an import snapshot task.
+ */ + SnapshotTaskDetail?: SnapshotTaskDetail; + + /** + *The tags for the import snapshot task.
+ */ + Tags?: Tag[]; } -export namespace DescribeInstanceStatusResult { +export namespace ImportSnapshotTask { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeInstanceStatusResult): any => ({ + export const filterSensitiveLog = (obj: ImportSnapshotTask): any => ({ ...obj, }); } -export type LocationType = "availability-zone" | "availability-zone-id" | "region"; +export interface DescribeImportSnapshotTasksResult { + /** + *A list of zero or more import snapshot tasks that are currently active or were completed or canceled in the + * previous 7 days.
+ */ + ImportSnapshotTasks?: ImportSnapshotTask[]; -export interface DescribeInstanceTypeOfferingsRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is
- * DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The token to use to get the next page of results. This value is null
when there are no more results
+ * to return.
The location type.
+ * @internal */ - LocationType?: LocationType | string; + export const filterSensitiveLog = (obj: DescribeImportSnapshotTasksResult): any => ({ + ...obj, + }); +} + +export type InstanceAttributeName = + | "blockDeviceMapping" + | "disableApiTermination" + | "ebsOptimized" + | "enaSupport" + | "enclaveOptions" + | "groupSet" + | "instanceInitiatedShutdownBehavior" + | "instanceType" + | "kernel" + | "productCodes" + | "ramdisk" + | "rootDeviceName" + | "sourceDestCheck" + | "sriovNetSupport" + | "userData"; +export interface DescribeInstanceAttributeRequest { /** - *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
.
The instance attribute.
+ *Note: The enaSupport
attribute is not supported at this time.
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 next token value.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The token to retrieve the next page of results.
+ *The ID of the instance.
*/ - NextToken?: string; + InstanceId: string | undefined; } -export namespace DescribeInstanceTypeOfferingsRequest { +export namespace DescribeInstanceAttributeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeInstanceTypeOfferingsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeInstanceAttributeRequest): any => ({ ...obj, }); } /** - *The instance types offered.
+ *Describes a parameter used to set up an EBS volume in a block device mapping.
*/ -export interface InstanceTypeOffering { +export interface EbsInstanceBlockDevice { /** - *The instance type. For more information, see Instance types in the Amazon EC2 User Guide.
+ *The time stamp when the attachment initiated.
*/ - InstanceType?: _InstanceType | string; + AttachTime?: Date; /** - *The location type.
+ *Indicates whether the volume is deleted on instance termination.
*/ - LocationType?: LocationType | string; + DeleteOnTermination?: boolean; /** - *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
.)
The attachment state.
*/ - Location?: string; + Status?: AttachmentStatus | string; + + /** + *The ID of the EBS volume.
+ */ + VolumeId?: string; } -export namespace InstanceTypeOffering { +export namespace EbsInstanceBlockDevice { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceTypeOffering): any => ({ + export const filterSensitiveLog = (obj: EbsInstanceBlockDevice): any => ({ ...obj, }); } -export interface DescribeInstanceTypeOfferingsResult { +/** + *Describes a block device mapping.
+ */ +export interface InstanceBlockDeviceMapping { /** - *The instance types offered.
+ *The device name (for example, /dev/sdh
or xvdh
).
The token to use to retrieve the next page of results. This value is null
when there
- * are no more results to return.
Parameters used to automatically set up EBS volumes when the instance is + * launched.
*/ - NextToken?: string; + Ebs?: EbsInstanceBlockDevice; } -export namespace DescribeInstanceTypeOfferingsResult { +export namespace InstanceBlockDeviceMapping { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeInstanceTypeOfferingsResult): any => ({ + export const filterSensitiveLog = (obj: InstanceBlockDeviceMapping): any => ({ ...obj, }); } -export interface DescribeInstanceTypesRequest { +/** + *Describes a value for a resource attribute that is a Boolean value.
+ */ +export interface AttributeBooleanValue { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is
- * DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The attribute value. The valid values are true
or false
.
The instance types. For more information, see Instance types in the Amazon EC2 User Guide.
+ * @internal */ - InstanceTypes?: (_InstanceType | string)[]; + export const filterSensitiveLog = (obj: AttributeBooleanValue): any => ({ + ...obj, + }); +} +/** + *Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.
+ */ +export interface EnclaveOptions { /** - *One or more filters. Filter names and values are case-sensitive.
- *
- * auto-recovery-supported
- Indicates whether auto recovery is supported (true
| false
).
- * bare-metal
- Indicates whether it is a bare metal instance type (true
| false
).
- * burstable-performance-supported
- Indicates whether it is a burstable
- * performance 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-supported
- Indicates whether data is encrypted at rest
- * (required
| 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-interfaces
- The maximum number of network interfaces per instance.
- * network-info.network-performance
- The network performance (for example, "25
- * Gigabit").
- * processor-info.supported-architecture
- The CPU architecture
- * (arm64
| i386
| x86_64
).
- * processor-info.sustained-clock-speed-in-ghz
- The CPU clock speed, in GHz.
- * 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".
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 next token value.
- */ - MaxResults?: number; - - /** - *The token to retrieve the next page of results.
+ *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.
Describes the optimized EBS performance for supported instance types.
+ *Describes an instance attribute.
*/ -export interface EbsOptimizedInfo { +export interface InstanceAttribute { /** - *The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.
+ *The security groups associated with the instance.
*/ - BaselineBandwidthInMbps?: number; + Groups?: GroupIdentifier[]; /** - *The baseline throughput performance for an EBS-optimized instance type, in MB/s.
+ *The block device mapping of the instance.
*/ - BaselineThroughputInMBps?: number; + BlockDeviceMappings?: InstanceBlockDeviceMapping[]; /** - *The baseline input/output storage operations per seconds for an EBS-optimized instance type.
+ *If the value is true
, you can't terminate the instance through the Amazon
+ * EC2 console, CLI, or API; otherwise, you can.
The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.
+ *Indicates whether enhanced networking with ENA is enabled.
*/ - MaximumBandwidthInMbps?: number; + EnaSupport?: AttributeBooleanValue; /** - *The maximum throughput performance for an EBS-optimized instance type, in MB/s.
+ *To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to true
; otherwise,
+ * set it to false
.
The maximum input/output storage operations per second for an EBS-optimized instance type.
+ *Indicates whether the instance is optimized for Amazon EBS I/O.
*/ - MaximumIops?: number; -} + EbsOptimized?: AttributeBooleanValue; -export namespace EbsOptimizedInfo { /** - * @internal + *The ID of the instance.
*/ - export const filterSensitiveLog = (obj: EbsOptimizedInfo): any => ({ - ...obj, - }); -} - -export type EbsOptimizedSupport = "default" | "supported" | "unsupported"; - -export type EbsEncryptionSupport = "supported" | "unsupported"; - -export enum EbsNvmeSupport { - REQUIRED = "required", - SUPPORTED = "supported", - UNSUPPORTED = "unsupported", -} + InstanceId?: string; -/** - *Describes the Amazon EBS features supported by the instance type.
- */ -export interface EbsInfo { /** - *Indicates whether the instance type is Amazon EBS-optimized. For more information, see Amazon EBS-optimized - * instances in Amazon EC2 User Guide.
+ *Indicates whether an instance stops or terminates when you initiate shutdown from the + * instance (using the operating system command for system shutdown).
*/ - EbsOptimizedSupport?: EbsOptimizedSupport | string; + InstanceInitiatedShutdownBehavior?: AttributeValue; /** - *Indicates whether Amazon EBS encryption is supported.
+ *The instance type.
*/ - EncryptionSupport?: EbsEncryptionSupport | string; + InstanceType?: AttributeValue; /** - *Describes the optimized EBS performance for the instance type.
+ *The kernel ID.
*/ - EbsOptimizedInfo?: EbsOptimizedInfo; + KernelId?: AttributeValue; /** - *Indicates whether non-volatile memory express (NVMe) is supported.
+ *A list of product codes.
*/ - NvmeSupport?: EbsNvmeSupport | string; -} + ProductCodes?: ProductCode[]; -export namespace EbsInfo { /** - * @internal + *The RAM disk ID.
*/ - export const filterSensitiveLog = (obj: EbsInfo): any => ({ - ...obj, - }); -} + RamdiskId?: AttributeValue; -/** - *Describes the memory for the FPGA accelerator for the instance type.
- */ -export interface FpgaDeviceMemoryInfo { /** - *The size of the memory available to the FPGA accelerator, in MiB.
+ *The device name of the root device volume (for example,
+ * /dev/sda1
).
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.
Indicates whether enhanced networking with the Intel 82599 Virtual Function interface + * is enabled.
+ */ + SriovNetSupport?: AttributeValue; + + /** + *The user data.
+ */ + UserData?: AttributeValue; } -export namespace FpgaDeviceMemoryInfo { +export namespace InstanceAttribute { /** * @internal */ - export const filterSensitiveLog = (obj: FpgaDeviceMemoryInfo): any => ({ + export const filterSensitiveLog = (obj: InstanceAttribute): any => ({ ...obj, }); } -/** - *Describes the FPGA accelerator for the instance type.
- */ -export interface FpgaDeviceInfo { +export interface DescribeInstanceCreditSpecificationsRequest { /** - *The name of the FPGA accelerator.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The manufacturer of the FPGA accelerator.
+ *The filters.
+ *
+ * instance-id
- The ID of the instance.
The count of FPGA accelerators for the instance type.
+ *The instance IDs.
+ *Default: Describes all your instances.
+ *Constraints: Maximum 1000 explicitly specified instance IDs.
*/ - Count?: number; + InstanceIds?: string[]; /** - *Describes the memory for the FPGA accelerator for the instance type.
+ *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. You cannot specify this parameter and the instance IDs
+ * parameter in the same call.
The token to retrieve the next page of results.
+ */ + NextToken?: string; } -export namespace FpgaDeviceInfo { +export namespace DescribeInstanceCreditSpecificationsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: FpgaDeviceInfo): any => ({ + export const filterSensitiveLog = (obj: DescribeInstanceCreditSpecificationsRequest): any => ({ ...obj, }); } /** - *Describes the FPGAs for the instance type.
+ *Describes the credit option for CPU usage of a burstable performance instance.
*/ -export interface FpgaInfo { +export interface InstanceCreditSpecification { /** - *Describes the FPGAs for the instance type.
+ *The ID of the instance.
*/ - Fpgas?: FpgaDeviceInfo[]; + InstanceId?: string; /** - *The total memory of all FPGA accelerators for the instance type.
+ *The credit option for CPU usage of the instance. Valid values are
+ * standard
and unlimited
.
Describes the memory available to the GPU accelerator.
- */ -export interface GpuDeviceMemoryInfo { +export interface DescribeInstanceCreditSpecificationsResult { /** - *The size of the memory available to the GPU accelerator, in MiB.
+ *Information about the credit option for CPU usage of an instance.
*/ - SizeInMiB?: number; + InstanceCreditSpecifications?: InstanceCreditSpecification[]; + + /** + *The token to use to retrieve the next page of results. This value is null
+ * when there are no more results to return.
Describes the GPU accelerators for the instance type.
- */ -export interface GpuDeviceInfo { - /** - *The name of the GPU accelerator.
- */ - Name?: string; - - /** - *The manufacturer of the GPU accelerator.
- */ - Manufacturer?: string; - - /** - *The number of GPUs for the instance type.
- */ - Count?: number; - +export interface DescribeInstanceEventNotificationAttributesRequest { /** - *Describes the memory available to the GPU accelerator.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes the GPU accelerators for the instance type.
- */ -export interface GpuInfo { - /** - *Describes the GPU accelerators for the instance type.
- */ - Gpus?: GpuDeviceInfo[]; - +export interface DescribeInstanceEventNotificationAttributesResult { /** - *The total size of the memory for the GPU accelerators for the instance type, in MiB.
+ *Information about the registered tag keys.
*/ - TotalGpuMemoryInMiB?: number; + InstanceTagAttribute?: InstanceTagNotificationAttribute; } -export namespace GpuInfo { +export namespace DescribeInstanceEventNotificationAttributesResult { /** * @internal */ - export const filterSensitiveLog = (obj: GpuInfo): any => ({ + export const filterSensitiveLog = (obj: DescribeInstanceEventNotificationAttributesResult): any => ({ ...obj, }); } -export enum InstanceTypeHypervisor { - NITRO = "nitro", - XEN = "xen", -} - /** - *Describes the Inference accelerators for the instance type.
+ *The number of Inference accelerators for the instance type.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The name of the Inference accelerator.
+ *The IDs of the event windows.
*/ - Name?: string; + InstanceEventWindowIds?: string[]; /** - *The manufacturer of the Inference accelerator.
+ *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:
- 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.
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.
Describes the Inference accelerators for the instance type.
- */ -export interface InferenceAcceleratorInfo { /** - *Describes the Inference accelerators for the instance type.
+ *The token to request the next page of results.
*/ - Accelerators?: InferenceDeviceInfo[]; + NextToken?: string; } -export namespace InferenceAcceleratorInfo { +export namespace DescribeInstanceEventWindowsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: InferenceAcceleratorInfo): any => ({ + export const filterSensitiveLog = (obj: DescribeInstanceEventWindowsRequest): any => ({ ...obj, }); } -export type DiskType = "hdd" | "ssd"; - -/** - *Describes a disk.
- */ -export interface DiskInfo { - /** - *The size of the disk in GB.
- */ - SizeInGB?: number; - - /** - *The number of disks with this configuration.
- */ - Count?: number; - - /** - *The type of disk.
- */ - Type?: DiskType | string; -} - -export namespace DiskInfo { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DiskInfo): any => ({ - ...obj, - }); -} - -export enum InstanceStorageEncryptionSupport { - required = "required", - unsupported = "unsupported", -} - -export enum EphemeralNvmeSupport { - REQUIRED = "required", - SUPPORTED = "supported", - UNSUPPORTED = "unsupported", -} - -/** - *Describes the instance store features that are supported by the instance type.
- */ -export interface InstanceStorageInfo { - /** - *The total size of the disks, in GB.
- */ - TotalSizeInGB?: number; - - /** - *Describes the disks that are available for the instance type.
- */ - Disks?: DiskInfo[]; - - /** - *Indicates whether non-volatile memory express (NVMe) is supported.
- */ - NvmeSupport?: EphemeralNvmeSupport | string; - - /** - *Indicates whether data is encrypted at rest.
- */ - EncryptionSupport?: InstanceStorageEncryptionSupport | string; -} - -export namespace InstanceStorageInfo { - /** - * @internal - */ - export const filterSensitiveLog = (obj: InstanceStorageInfo): any => ({ - ...obj, - }); -} - -/** - *Describes the memory for the instance type.
- */ -export interface MemoryInfo { - /** - *The size of the memory, in MiB.
- */ - SizeInMiB?: number; -} - -export namespace MemoryInfo { - /** - * @internal - */ - export const filterSensitiveLog = (obj: MemoryInfo): any => ({ - ...obj, - }); -} - -/** - *Describes the Elastic Fabric Adapters for the instance type.
- */ -export interface EfaInfo { - /** - *The maximum number of Elastic Fabric Adapters for the instance type.
- */ - MaximumEfaInterfaces?: number; -} - -export namespace EfaInfo { - /** - * @internal - */ - export const filterSensitiveLog = (obj: EfaInfo): any => ({ - ...obj, - }); -} - -export type EnaSupport = "required" | "supported" | "unsupported"; - -/** - *Describes the network card support of the instance type.
- */ -export interface NetworkCardInfo { - /** - *The index of the network card.
- */ - NetworkCardIndex?: number; - - /** - *The network performance of the network card.
- */ - NetworkPerformance?: string; - - /** - *The maximum number of network interfaces for the network card.
- */ - MaximumNetworkInterfaces?: number; -} - -export namespace NetworkCardInfo { - /** - * @internal - */ - export const filterSensitiveLog = (obj: NetworkCardInfo): any => ({ - ...obj, - }); -} - -/** - *Describes the networking features of the instance type.
- */ -export interface NetworkInfo { - /** - *The network performance.
- */ - NetworkPerformance?: string; - - /** - *The maximum number of network interfaces for the instance type.
- */ - MaximumNetworkInterfaces?: number; - - /** - *The maximum number of physical network cards that can be allocated to the instance.
- */ - MaximumNetworkCards?: number; - - /** - *The index of the default network card, starting at 0.
- */ - DefaultNetworkCardIndex?: number; - - /** - *Describes the network cards for the instance type.
- */ - NetworkCards?: NetworkCardInfo[]; - - /** - *The maximum number of IPv4 addresses per network interface.
- */ - Ipv4AddressesPerInterface?: number; - - /** - *The maximum number of IPv6 addresses per network interface.
- */ - Ipv6AddressesPerInterface?: number; - - /** - *Indicates whether IPv6 is supported.
- */ - Ipv6Supported?: boolean; - - /** - *Indicates whether Elastic Network Adapter (ENA) is supported.
- */ - EnaSupport?: EnaSupport | string; - - /** - *Indicates whether Elastic Fabric Adapter (EFA) is supported.
- */ - EfaSupported?: boolean; - - /** - *Describes the Elastic Fabric Adapters for the instance type.
- */ - EfaInfo?: EfaInfo; - - /** - *Indicates whether the instance type automatically encrypts in-transit traffic between instances.
- */ - EncryptionInTransitSupported?: boolean; -} - -export namespace NetworkInfo { +export interface DescribeInstanceEventWindowsResult { /** - * @internal + *Information about the event windows.
*/ - export const filterSensitiveLog = (obj: NetworkInfo): any => ({ - ...obj, - }); -} - -export type PlacementGroupStrategy = "cluster" | "partition" | "spread"; + InstanceEventWindows?: InstanceEventWindow[]; -/** - *Describes the placement group support of the instance type.
- */ -export interface PlacementGroupInfo { /** - *The supported placement group types.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Describes the processor used by the instance type.
- */ -export interface ProcessorInfo { - /** - *The architectures supported by the instance type.
- */ - SupportedArchitectures?: (ArchitectureType | string)[]; - - /** - *The speed of the processor, in GHz.
- */ - SustainedClockSpeedInGhz?: number; -} - -export namespace ProcessorInfo { +export interface DescribeInstancesRequest { /** - * @internal - */ - export const filterSensitiveLog = (obj: ProcessorInfo): any => ({ - ...obj, - }); -} - -export type BootModeType = "legacy-bios" | "uefi"; - -export type RootDeviceType = "ebs" | "instance-store"; - -export type UsageClassType = "on-demand" | "spot"; - -/** - *Describes the vCPU configurations for the instance type.
- */ -export interface VCpuInfo { - /** - *The default number of vCPUs for the instance type.
- */ - DefaultVCpus?: number; - - /** - *The default number of cores for the instance type.
- */ - DefaultCores?: number; - - /** - *The default number of threads per core for the instance type.
- */ - DefaultThreadsPerCore?: number; - - /** - *The valid number of cores that can be configured for the instance type.
- */ - ValidCores?: number[]; - - /** - *The valid number of threads per core that can be configured for the instance type.
- */ - ValidThreadsPerCore?: number[]; -} - -export namespace VCpuInfo { - /** - * @internal - */ - export const filterSensitiveLog = (obj: VCpuInfo): any => ({ - ...obj, - }); -} - -/** - *Describes the instance type.
- */ -export interface InstanceTypeInfo { - /** - *The instance type. For more information, see Instance types in the Amazon EC2 User Guide.
- */ - InstanceType?: _InstanceType | string; - - /** - *Indicates whether the instance type is current generation.
- */ - CurrentGeneration?: boolean; - - /** - *Indicates whether the instance type is eligible for the free tier.
- */ - FreeTierEligible?: boolean; - - /** - *Indicates whether the instance type is offered for spot or On-Demand.
- */ - SupportedUsageClasses?: (UsageClassType | string)[]; - - /** - *The supported root device types.
- */ - SupportedRootDeviceTypes?: (RootDeviceType | string)[]; - - /** - *The supported virtualization types.
- */ - SupportedVirtualizationTypes?: (VirtualizationType | string)[]; - - /** - *Indicates whether the instance is a bare metal instance type.
- */ - BareMetal?: boolean; - - /** - *The hypervisor for the instance type.
- */ - Hypervisor?: InstanceTypeHypervisor | string; - - /** - *Describes the processor.
- */ - ProcessorInfo?: ProcessorInfo; - - /** - *Describes the vCPU configurations for the instance type.
- */ - VCpuInfo?: VCpuInfo; - - /** - *Describes the memory for the instance type.
- */ - MemoryInfo?: MemoryInfo; - - /** - *Indicates whether instance storage is supported.
- */ - InstanceStorageSupported?: boolean; - - /** - *Describes the instance storage for the instance type.
- */ - InstanceStorageInfo?: InstanceStorageInfo; - - /** - *Describes the Amazon EBS settings for the instance type.
- */ - EbsInfo?: EbsInfo; - - /** - *Describes the network settings for the instance type.
- */ - NetworkInfo?: NetworkInfo; - - /** - *Describes the GPU accelerator settings for the instance type.
- */ - GpuInfo?: GpuInfo; - - /** - *Describes the FPGA accelerator settings for the instance type.
- */ - FpgaInfo?: FpgaInfo; - - /** - *Describes the placement group settings for the instance type.
- */ - PlacementGroupInfo?: PlacementGroupInfo; - - /** - *Describes the Inference accelerator settings for the instance type.
- */ - InferenceAcceleratorInfo?: InferenceAcceleratorInfo; - - /** - *Indicates whether On-Demand hibernation is supported.
- */ - HibernationSupported?: boolean; - - /** - *Indicates whether the instance type is a burstable performance instance type.
- */ - BurstablePerformanceSupported?: boolean; - - /** - *Indicates whether Dedicated Hosts are supported on the instance type.
- */ - DedicatedHostsSupported?: boolean; - - /** - *Indicates whether auto recovery is supported.
- */ - AutoRecoverySupported?: boolean; - - /** - *The supported boot modes. For more information, see Boot modes in the - * Amazon EC2 User Guide.
- */ - SupportedBootModes?: (BootModeType | string)[]; -} - -export namespace InstanceTypeInfo { - /** - * @internal - */ - export const filterSensitiveLog = (obj: InstanceTypeInfo): any => ({ - ...obj, - }); -} - -export interface DescribeInstanceTypesResult { - /** - *The instance type. For more information, see Instance types in the Amazon EC2 User Guide.
- */ - InstanceTypes?: InstanceTypeInfo[]; - - /** - *The token to use to retrieve the next page of results. This value is null
when there
- * are no more results to return.
One or more filters.
+ *The filters.
*
- * attachment.state
- The current state of the attachment between the gateway
- * and the VPC (available
). Present only if a VPC is attached.
affinity
- The affinity setting for an instance running on a
+ * Dedicated Host (default
| host
).
*
- * attachment.vpc-id
- The ID of an attached VPC.
architecture
- The instance architecture (i386
|
+ * x86_64
| arm64
).
*
- * internet-gateway-id
- The ID of the Internet gateway.
availability-zone
- The Availability Zone of the instance.
*
- * owner-id
- The ID of the Amazon Web Services account that owns the internet gateway.
block-device-mapping.attach-time
- The attach time for an EBS
+ * volume mapped to the instance, for example,
+ * 2010-09-15T17:15:20.000Z
.
*
- * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
block-device-mapping.delete-on-termination
- A Boolean that
+ * indicates whether the EBS volume is deleted on instance termination.
*
- * 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.
block-device-mapping.device-name
- The device name specified in the
+ * block device mapping (for example, /dev/sdh
or
+ * xvdh
).
* Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more internet gateway IDs.
- *Default: Describes all your internet gateways.
- */ - InternetGatewayIds?: string[]; - - /** - *The token for the next page of results.
- */ - NextToken?: string; - - /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Information about one or more internet gateways.
- */ - InternetGateways?: InternetGateway[]; - - /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The IDs of the IPv6 address pools.
- */ - PoolIds?: string[]; - - /** - *The token for the next page of results.
- */ - NextToken?: string; - - /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more filters.
- *
- * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
block-device-mapping.status
- The status for the EBS volume
+ * (attaching
| attached
| detaching
|
+ * detached
).
*
- * 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.
block-device-mapping.volume-id
- The volume ID of the EBS
+ * volume.
* Describes a CIDR block for an address pool.
- */ -export interface PoolCidrBlock { - /** - *The CIDR block.
- */ - Cidr?: string; -} - -export namespace PoolCidrBlock { - /** - * @internal - */ - export const filterSensitiveLog = (obj: PoolCidrBlock): any => ({ - ...obj, - }); -} - -/** - *Describes an IPv6 address pool.
- */ -export interface Ipv6Pool { - /** - *The ID of the address pool.
- */ - PoolId?: string; - - /** - *The description for the address pool.
- */ - Description?: string; - - /** - *The CIDR blocks for the address pool.
- */ - PoolCidrBlocks?: PoolCidrBlock[]; - - /** - *Any tags for the address pool.
- */ - Tags?: Tag[]; -} - -export namespace Ipv6Pool { - /** - * @internal - */ - export const filterSensitiveLog = (obj: Ipv6Pool): any => ({ - ...obj, - }); -} - -export interface DescribeIpv6PoolsResult { - /** - *Information about the IPv6 address pools.
- */ - Ipv6Pools?: Ipv6Pool[]; - - /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The filters.
- *
- * key-pair-id
- The ID of the key pair.
+ * client-token
- The idempotency token you provided when you launched
+ * the instance.
- * fingerprint
- The fingerprint of the key pair.
+ * dns-name
- The public DNS name of the instance.
- * key-name
- The name of the key pair.
+ * group-id
- The ID of the security group for the instance.
+ * EC2-Classic only.
- * 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.
+ * group-name
- The name of the security group for the instance.
+ * EC2-Classic only.
- * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
The key pair names.
- *Default: Describes all of your key pairs.
- */ - KeyNames?: string[]; - - /** - *The IDs of the key pairs.
- */ - KeyPairIds?: string[]; - - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes a key pair.
- */ -export interface KeyPairInfo { - /** - *The ID of the key pair.
- */ - KeyPairId?: string; - - /** - *If you used CreateKeyPair to create the key pair:
- *
+ * 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.
For RSA key pairs, the key fingerprint is the SHA-1 digest of the DER encoded private key. - *
- *
+ * host-id
- The ID of the Dedicated Host on which the instance is
+ * running, if applicable.
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:
- *
+ * hypervisor
- The hypervisor type of the instance
+ * (ovm
| xen
). The value xen
+ * is used for both Xen and Nitro hypervisors.
For RSA key pairs, the key fingerprint is the MD5 public key fingerprint as specified in section 4 of RFC4716.
- *
+ * iam-instance-profile.arn
- The instance profile associated with
+ * the instance. Specified as an ARN.
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.
- *The name of the key pair.
- */ - KeyName?: string; - - /** - *The type of key pair.
- */ - KeyType?: KeyType | string; - - /** - *Any tags applied to the key pair.
- */ - Tags?: Tag[]; -} - -export namespace KeyPairInfo { - /** - * @internal - */ - export const filterSensitiveLog = (obj: KeyPairInfo): any => ({ - ...obj, - }); -} - -export interface DescribeKeyPairsResult { - /** - *Information about the key pairs.
- */ - KeyPairs?: KeyPairInfo[]; -} - -export namespace DescribeKeyPairsResult { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DescribeKeyPairsResult): any => ({ - ...obj, - }); -} - -export interface DescribeLaunchTemplatesRequest { - /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
One or more launch template IDs.
- */ - LaunchTemplateIds?: string[]; - - /** - *One or more launch template names.
- */ - LaunchTemplateNames?: string[]; - - /** - *One or more filters.
- *
+ * image-id
- The ID of the image used to launch the
+ * instance.
- * create-time
- The time the launch template was created.
instance-id
- The ID of the instance.
*
- * launch-template-name
- The name of the launch template.
instance-lifecycle
- Indicates whether this is a Spot Instance or
+ * a Scheduled Instance (spot
| scheduled
).
*
- * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
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).
*
- * 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.
instance-state-name
- The state of the instance
+ * (pending
| running
| shutting-down
|
+ * terminated
| stopping
|
+ * stopped
).
* The token to request the next page of results.
- */ - NextToken?: string; - - /** - *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.
Information about the launch templates.
- */ - LaunchTemplates?: LaunchTemplate[]; - - /** - *The token to use to retrieve the next page of results. This value is
- * null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The ID of the launch template. To describe one or more versions of a specified launch - * template, you must specify either the launch template ID or the launch template name in - * the request. To describe all the latest or default launch template versions in your - * account, you must omit this parameter.
- */ - LaunchTemplateId?: string; - - /** - *The name of the launch template. To describe one or more versions of a specified - * launch template, you must specify either the launch template ID or the launch template - * name in the request. To describe all the latest or default launch template versions in - * your account, you must omit this parameter.
- */ - LaunchTemplateName?: string; - - /** - *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 call. You cannot specify numbers.
The version number after which to describe launch template versions.
- */ - MinVersion?: string; - - /** - *The version number up to which to describe launch template versions.
- */ - MaxVersion?: string; - - /** - *The token to request the next page of results.
- */ - NextToken?: string; - - /** - *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.
One or more filters.
- *
- * create-time
- The time the launch template version was created.
+ * instance-type
- The type of instance (for example,
+ * t2.micro
).
- * ebs-optimized
- A boolean that indicates whether the instance
- * is optimized for Amazon EBS I/O.
instance.group-id
- The ID of the security group for the
+ * instance.
*
- * iam-instance-profile
- The ARN of the IAM instance
- * profile.
instance.group-name
- The name of the security group for the
+ * instance.
*
- * image-id
- The ID of the AMI.
ip-address
- The public IPv4 address of the instance.
*
- * instance-type
- The instance type.
kernel-id
- The kernel ID.
*
- * is-default-version
- A boolean that indicates whether the
- * launch template version is the default version.
key-name
- The name of the key pair used when the instance was
+ * launched.
*
- * kernel-id
- The kernel ID.
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).
*
- * ram-disk-id
- The RAM disk ID.
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.
* Information about the launch template versions.
- */ - LaunchTemplateVersions?: LaunchTemplateVersion[]; - - /** - *The token to use to retrieve the next page of results. This value is
- * null
when there are no more results to return.
The IDs of the local gateway route tables.
- */ - LocalGatewayRouteTableIds?: string[]; - - /** - *One or more filters.
- *
- * local-gateway-id
- The ID of a local gateway.
+ * metadata-options.http-tokens
- The metadata request authorization
+ * state (optional
| required
)
- * local-gateway-route-table-id
- The ID of a local gateway route table.
+ * 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
- Enable or disable metadata
+ * access on http endpoint (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.
- * state
- The state of the local gateway route table.
+ * owner-id
- The Amazon Web Services account ID of the instance owner.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
- */ - NextToken?: string; - - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes a local gateway route table.
- */ -export interface LocalGatewayRouteTable { - /** - *The ID of the local gateway route table.
- */ - LocalGatewayRouteTableId?: string; - - /** - *The Amazon Resource Name (ARN) of the local gateway route table.
- */ - LocalGatewayRouteTableArn?: string; - - /** - *The ID of the local gateway.
- */ - LocalGatewayId?: string; - - /** - *The Amazon Resource Name (ARN) of the Outpost.
- */ - OutpostArn?: string; - - /** - *The ID of the Amazon Web Services account that owns the local gateway route table.
- */ - OwnerId?: string; - - /** - *The state of the local gateway route table.
- */ - State?: string; - - /** - *The tags assigned to the local gateway route table.
- */ - Tags?: Tag[]; -} - -export namespace LocalGatewayRouteTable { - /** - * @internal - */ - export const filterSensitiveLog = (obj: LocalGatewayRouteTable): any => ({ - ...obj, - }); -} - -export interface DescribeLocalGatewayRouteTablesResult { - /** - *Information about the local gateway route tables.
- */ - LocalGatewayRouteTables?: LocalGatewayRouteTable[]; - - /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The IDs of the associations.
- */ - LocalGatewayRouteTableVirtualInterfaceGroupAssociationIds?: string[]; - - /** - *One or more filters.
- *
- * local-gateway-id
- The ID of a local gateway.
+ * placement-group-name
- The name of the placement group for the
+ * instance.
- * local-gateway-route-table-id
- The ID of the local gateway route table.
+ * placement-partition-number
- The partition in which the instance is
+ * located.
- * local-gateway-route-table-virtual-interface-group-association-id
- The ID of the association.
+ * platform
- The platform. To list only Windows instances, use
+ * windows
.
- * local-gateway-route-table-virtual-interface-group-id
- The ID of the virtual interface group.
+ * private-dns-name
- The private IPv4 DNS name of the
+ * instance.
- * state
- The state of the association.
+ * 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
).
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
- */ - NextToken?: string; - - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes an association between a local gateway route table and a virtual interface group.
- */ -export interface LocalGatewayRouteTableVirtualInterfaceGroupAssociation { - /** - *The ID of the association.
- */ - LocalGatewayRouteTableVirtualInterfaceGroupAssociationId?: string; - - /** - *The ID of the virtual interface group.
- */ - LocalGatewayVirtualInterfaceGroupId?: string; - - /** - *The ID of the local gateway.
- */ - LocalGatewayId?: string; - - /** - *The ID of the local gateway route table.
- */ - LocalGatewayRouteTableId?: string; - - /** - *The Amazon Resource Name (ARN) of the local gateway route table for the virtual interface group.
- */ - LocalGatewayRouteTableArn?: string; - - /** - *The ID of the Amazon Web Services account that owns the local gateway virtual interface group association.
- */ - OwnerId?: string; - - /** - *The state of the association.
- */ - State?: string; - - /** - *The tags assigned to the association.
- */ - Tags?: Tag[]; -} - -export namespace LocalGatewayRouteTableVirtualInterfaceGroupAssociation { - /** - * @internal - */ - export const filterSensitiveLog = (obj: LocalGatewayRouteTableVirtualInterfaceGroupAssociation): any => ({ - ...obj, - }); -} - -export interface DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult { - /** - *Information about the associations.
- */ - LocalGatewayRouteTableVirtualInterfaceGroupAssociations?: LocalGatewayRouteTableVirtualInterfaceGroupAssociation[]; - - /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The IDs of the associations.
- */ - LocalGatewayRouteTableVpcAssociationIds?: string[]; - - /** - *One or more filters.
- *
- * local-gateway-id
- The ID of a local gateway.
+ * ramdisk-id
- The RAM disk ID.
- * local-gateway-route-table-id
- The ID of the local gateway route table.
+ * 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.
- * local-gateway-route-table-vpc-association-id
- The ID of the association.
+ * 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.
- * state
- The state of the association.
tag:
- 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.
*
- * vpc-id
- The ID of the VPC.
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.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ *The instance IDs.
+ *Default: Describes all your instances.
*/ - NextToken?: string; + InstanceIds?: string[]; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -6151,2466 +5422,2519 @@ export interface DescribeLocalGatewayRouteTableVpcAssociationsRequest {
* Otherwise, it is UnauthorizedOperation
.
Information about the associations.
+ *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. You cannot specify this parameter and the instance IDs
+ * parameter in the same call.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The token to request the next page of results.
*/ NextToken?: string; } -export namespace DescribeLocalGatewayRouteTableVpcAssociationsResult { +export namespace DescribeInstancesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeLocalGatewayRouteTableVpcAssociationsResult): any => ({ + export const filterSensitiveLog = (obj: DescribeInstancesRequest): any => ({ ...obj, }); } -export interface DescribeLocalGatewaysRequest { +/** + *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.
One or more filters.
- *
- * local-gateway-id
- The ID of a local gateway.
- * 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.
Describes the instance's Capacity Reservation preferences. Possible preferences include:
+ *
- * outpost-arn
- The Amazon Resource Name (ARN) of the Outpost.
+ * open
- The instance can run in any open
Capacity Reservation that
+ * has matching attributes (instance type, platform, Availability Zone).
- * state
- The state of the association.
+ * none
- The instance avoids running in a Capacity Reservation even if one is
+ * available. The instance runs in On-Demand capacity.
One or more filters.
+ *Information about the targeted Capacity Reservation or Capacity Reservation group.
*/ - Filters?: Filter[]; + CapacityReservationTarget?: CapacityReservationTargetResponse; +} +export namespace CapacityReservationSpecificationResponse { /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The CPU options for the instance.
+ */ +export interface CpuOptions { /** - *The token for the next page of results.
+ *The number of CPU cores for the instance.
*/ - NextToken?: string; + CoreCount?: number; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The number of threads per CPU core.
*/ - DryRun?: boolean; + ThreadsPerCore?: number; } -export namespace DescribeLocalGatewaysRequest { +export namespace CpuOptions { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeLocalGatewaysRequest): any => ({ + export const filterSensitiveLog = (obj: CpuOptions): any => ({ ...obj, }); } /** - *Describes a local gateway.
+ *Describes the association between an instance and an Elastic Graphics accelerator.
*/ -export interface LocalGateway { - /** - *The ID of the local gateway.
- */ - LocalGatewayId?: string; - +export interface ElasticGpuAssociation { /** - *The Amazon Resource Name (ARN) of the Outpost.
+ *The ID of the Elastic Graphics accelerator.
*/ - OutpostArn?: string; + ElasticGpuId?: string; /** - *The ID of the Amazon Web Services account that owns the local gateway.
+ *The ID of the association.
*/ - OwnerId?: string; + ElasticGpuAssociationId?: string; /** - *The state of the local gateway.
+ *The state of the association between the instance and the + * Elastic Graphics accelerator.
*/ - State?: string; + ElasticGpuAssociationState?: string; /** - *The tags assigned to the local gateway.
+ *The time the Elastic Graphics accelerator was associated with the instance.
*/ - Tags?: Tag[]; + ElasticGpuAssociationTime?: string; } -export namespace LocalGateway { +export namespace ElasticGpuAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: LocalGateway): any => ({ + export const filterSensitiveLog = (obj: ElasticGpuAssociation): any => ({ ...obj, }); } -export interface DescribeLocalGatewaysResult { +/** + *+ * Describes the association between an instance and an elastic inference accelerator. + *
+ */ +export interface ElasticInferenceAcceleratorAssociation { /** - *Information about the local gateways.
+ *+ * The Amazon Resource Name (ARN) of the elastic inference accelerator. + *
*/ - LocalGateways?: LocalGateway[]; + ElasticInferenceAcceleratorArn?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
+ * The ID of the association. + *
*/ - NextToken?: string; + ElasticInferenceAcceleratorAssociationId?: string; + + /** + *+ * The state of the elastic inference accelerator. + *
+ */ + ElasticInferenceAcceleratorAssociationState?: string; + + /** + *+ * The time at which the elastic inference accelerator is associated with an instance. + *
+ */ + ElasticInferenceAcceleratorAssociationTime?: Date; } -export namespace DescribeLocalGatewaysResult { +export namespace ElasticInferenceAcceleratorAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeLocalGatewaysResult): any => ({ + export const filterSensitiveLog = (obj: ElasticInferenceAcceleratorAssociation): any => ({ ...obj, }); } -export interface DescribeLocalGatewayVirtualInterfaceGroupsRequest { - /** - *The IDs of the virtual interface groups.
- */ - LocalGatewayVirtualInterfaceGroupIds?: string[]; - +/** + *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.
+ */ +export interface HibernationOptions { /** - *One or more filters.
- *
- * local-gateway-id
- The ID of a local gateway.
- * local-gateway-virtual-interface-id
- The ID of the virtual interface.
- * local-gateway-virtual-interface-group-id
- The ID of the virtual interface group.
If this parameter is set to true
, your instance is enabled for
+ * hibernation; otherwise, it is not enabled for hibernation.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
- */ - NextToken?: string; +export type InstanceLifecycleType = "scheduled" | "spot"; +/** + *Describes a license configuration.
+ */ +export interface LicenseConfiguration { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Amazon Resource Name (ARN) of the license configuration.
*/ - DryRun?: boolean; + LicenseConfigurationArn?: string; } -export namespace DescribeLocalGatewayVirtualInterfaceGroupsRequest { +export namespace LicenseConfiguration { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeLocalGatewayVirtualInterfaceGroupsRequest): any => ({ + export const filterSensitiveLog = (obj: LicenseConfiguration): any => ({ ...obj, }); } +export type InstanceMetadataEndpointState = "disabled" | "enabled"; + +export enum InstanceMetadataProtocolState { + disabled = "disabled", + enabled = "enabled", +} + +export enum HttpTokensState { + optional = "optional", + required = "required", +} + +export type InstanceMetadataOptionsState = "applied" | "pending"; + /** - *Describes a local gateway virtual interface group.
+ *The metadata options for the instance.
*/ -export interface LocalGatewayVirtualInterfaceGroup { +export interface InstanceMetadataOptionsResponse { /** - *The ID of the virtual interface group.
+ *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.
The IDs of the virtual interfaces.
+ *The state of token usage for your instance metadata requests. If the parameter is not
+ * specified in the request, the default state is optional
.
If the state is optional
, you can choose to retrieve instance metadata
+ * with or without a signed token header on your request. If you retrieve the IAM role
+ * credentials without a token, the version 1.0 role credentials are returned. If you
+ * retrieve the IAM role credentials using a valid signed token, the version 2.0 role
+ * credentials are returned.
If the state is required
, you must send a signed token header with any
+ * instance metadata retrieval requests. In this state, retrieving the IAM role credential
+ * always returns the version 2.0 credentials; the version 1.0 credentials are not
+ * available.
The ID of the local gateway.
+ *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
*/ - LocalGatewayId?: string; + HttpPutResponseHopLimit?: number; /** - *The ID of the Amazon Web Services account that owns the local gateway virtual interface group.
+ *Indicates whether the HTTP metadata endpoint on your instances is enabled or disabled.
*/ - OwnerId?: string; + HttpEndpoint?: InstanceMetadataEndpointState | string; /** - *The tags assigned to the virtual interface group.
+ *Indicates whether the IPv6 endpoint for the instance metadata service is enabled or disabled.
*/ - Tags?: Tag[]; + HttpProtocolIpv6?: InstanceMetadataProtocolState | string; } -export namespace LocalGatewayVirtualInterfaceGroup { +export namespace InstanceMetadataOptionsResponse { /** * @internal */ - export const filterSensitiveLog = (obj: LocalGatewayVirtualInterfaceGroup): any => ({ + export const filterSensitiveLog = (obj: InstanceMetadataOptionsResponse): any => ({ ...obj, }); } -export interface DescribeLocalGatewayVirtualInterfaceGroupsResult { - /** - *The virtual interface groups.
- */ - LocalGatewayVirtualInterfaceGroups?: LocalGatewayVirtualInterfaceGroup[]; +export type MonitoringState = "disabled" | "disabling" | "enabled" | "pending"; +/** + *Describes the monitoring of an instance.
+ */ +export interface Monitoring { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is + * enabled.
*/ - NextToken?: string; + State?: MonitoringState | string; } -export namespace DescribeLocalGatewayVirtualInterfaceGroupsResult { +export namespace Monitoring { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeLocalGatewayVirtualInterfaceGroupsResult): any => ({ + export const filterSensitiveLog = (obj: Monitoring): any => ({ ...obj, }); } -export interface DescribeLocalGatewayVirtualInterfacesRequest { +/** + *Describes association information for an Elastic IP address (IPv4).
+ */ +export interface InstanceNetworkInterfaceAssociation { /** - *The IDs of the virtual interfaces.
+ *The carrier IP address associated with the network interface.
*/ - LocalGatewayVirtualInterfaceIds?: string[]; + CarrierIp?: string; /** - *One or more filters.
+ *The customer-owned IP address associated with the network interface.
*/ - Filters?: Filter[]; + CustomerOwnedIp?: string; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The ID of the owner of the Elastic IP address.
*/ - MaxResults?: number; + IpOwnerId?: string; /** - *The token for the next page of results.
+ *The public DNS name.
*/ - NextToken?: string; + PublicDnsName?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The public IP address or Elastic IP address bound to the network interface.
*/ - DryRun?: boolean; + PublicIp?: string; } -export namespace DescribeLocalGatewayVirtualInterfacesRequest { +export namespace InstanceNetworkInterfaceAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeLocalGatewayVirtualInterfacesRequest): any => ({ + export const filterSensitiveLog = (obj: InstanceNetworkInterfaceAssociation): any => ({ ...obj, }); } /** - *Describes a local gateway virtual interface.
+ *Describes a network interface attachment.
*/ -export interface LocalGatewayVirtualInterface { +export interface InstanceNetworkInterfaceAttachment { /** - *The ID of the virtual interface.
+ *The time stamp when the attachment initiated.
*/ - LocalGatewayVirtualInterfaceId?: string; + AttachTime?: Date; /** - *The ID of the local gateway.
+ *The ID of the network interface attachment.
*/ - LocalGatewayId?: string; + AttachmentId?: string; /** - *The ID of the VLAN.
+ *Indicates whether the network interface is deleted when the instance is terminated.
*/ - Vlan?: number; + DeleteOnTermination?: boolean; /** - *The local address.
+ *The index of the device on the instance for the network interface attachment.
*/ - LocalAddress?: string; + DeviceIndex?: number; /** - *The peer address.
+ *The attachment state.
*/ - PeerAddress?: string; + Status?: AttachmentStatus | string; /** - *The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the local gateway.
+ *The index of the network card.
*/ - LocalBgpAsn?: number; + NetworkCardIndex?: number; +} +export namespace InstanceNetworkInterfaceAttachment { /** - *The peer BGP ASN.
+ * @internal */ - PeerBgpAsn?: number; + export const filterSensitiveLog = (obj: InstanceNetworkInterfaceAttachment): any => ({ + ...obj, + }); +} +/** + *Information about an IPv4 prefix.
+ */ +export interface InstanceIpv4Prefix { /** - *The ID of the Amazon Web Services account that owns the local gateway virtual interface.
+ *One or more IPv4 prefixes assigned to the network interface.
*/ - OwnerId?: string; + Ipv4Prefix?: string; +} +export namespace InstanceIpv4Prefix { /** - *The tags assigned to the virtual interface.
+ * @internal */ - Tags?: Tag[]; + export const filterSensitiveLog = (obj: InstanceIpv4Prefix): any => ({ + ...obj, + }); } -export namespace LocalGatewayVirtualInterface { +/** + *Information about an IPv6 prefix.
+ */ +export interface InstanceIpv6Prefix { + /** + *One or more IPv6 prefixes assigned to the network interface.
+ */ + Ipv6Prefix?: string; +} + +export namespace InstanceIpv6Prefix { /** * @internal */ - export const filterSensitiveLog = (obj: LocalGatewayVirtualInterface): any => ({ + export const filterSensitiveLog = (obj: InstanceIpv6Prefix): any => ({ ...obj, }); } -export interface DescribeLocalGatewayVirtualInterfacesResult { +/** + *Describes a private IPv4 address.
+ */ +export interface InstancePrivateIpAddress { + /** + *The association information for an Elastic IP address for the network interface.
+ */ + Association?: InstanceNetworkInterfaceAssociation; + + /** + *Indicates whether this IPv4 address is the primary private IP address of the network interface.
+ */ + Primary?: boolean; + /** - *Information about the virtual interfaces.
+ *The private IPv4 DNS name.
*/ - LocalGatewayVirtualInterfaces?: LocalGatewayVirtualInterface[]; + PrivateDnsName?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The private IPv4 address of the network interface.
*/ - NextToken?: string; + PrivateIpAddress?: string; } -export namespace DescribeLocalGatewayVirtualInterfacesResult { +export namespace InstancePrivateIpAddress { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeLocalGatewayVirtualInterfacesResult): any => ({ + export const filterSensitiveLog = (obj: InstancePrivateIpAddress): any => ({ ...obj, }); } -export interface DescribeManagedPrefixListsRequest { +/** + *Describes a network interface.
+ */ +export interface InstanceNetworkInterface { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The association information for an Elastic IPv4 associated with the network + * interface.
*/ - DryRun?: boolean; + Association?: InstanceNetworkInterfaceAssociation; /** - *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.
The network interface attachment.
*/ - Filters?: Filter[]; + Attachment?: InstanceNetworkInterfaceAttachment; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The description.
*/ - MaxResults?: number; + Description?: string; /** - *The token for the next page of results.
+ *One or more security groups.
*/ - NextToken?: string; + Groups?: GroupIdentifier[]; /** - *One or more prefix list IDs.
+ *One or more IPv6 addresses associated with the network interface.
*/ - PrefixListIds?: string[]; -} + Ipv6Addresses?: InstanceIpv6Address[]; -export namespace DescribeManagedPrefixListsRequest { /** - * @internal + *The MAC address.
*/ - export const filterSensitiveLog = (obj: DescribeManagedPrefixListsRequest): any => ({ - ...obj, - }); -} + MacAddress?: string; -export interface DescribeManagedPrefixListsResult { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the network interface.
*/ - NextToken?: string; + NetworkInterfaceId?: string; /** - *Information about the prefix lists.
+ *The ID of the Amazon Web Services account that created the network interface.
*/ - PrefixLists?: ManagedPrefixList[]; -} + OwnerId?: string; -export namespace DescribeManagedPrefixListsResult { /** - * @internal + *The private DNS name.
*/ - export const filterSensitiveLog = (obj: DescribeManagedPrefixListsResult): any => ({ - ...obj, - }); -} + PrivateDnsName?: string; -export interface DescribeMovingAddressesRequest { /** - *One or more filters.
- *
- * moving-status
- The status of the Elastic IP address
- * (MovingToVpc
| RestoringToClassic
).
The IPv4 address of the network interface within the subnet.
*/ - Filters?: Filter[]; + PrivateIpAddress?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more private IPv4 addresses associated with the network interface.
*/ - DryRun?: boolean; + PrivateIpAddresses?: InstancePrivateIpAddress[]; /** - *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.
+ *Indicates whether source/destination checking is enabled.
*/ - MaxResults?: number; + SourceDestCheck?: boolean; /** - *The token for the next page of results.
+ *The status of the network interface.
*/ - NextToken?: string; + Status?: NetworkInterfaceStatus | string; /** - *One or more Elastic IP addresses.
+ *The ID of the subnet.
*/ - PublicIps?: string[]; -} + SubnetId?: string; -export namespace DescribeMovingAddressesRequest { /** - * @internal + *The ID of the VPC.
*/ - export const filterSensitiveLog = (obj: DescribeMovingAddressesRequest): any => ({ - ...obj, - }); -} + VpcId?: string; -export type MoveStatus = "movingToVpc" | "restoringToClassic"; + /** + *Describes the type of network interface.
+ *Valid values: interface
| efa
| trunk
+ *
Describes the status of a moving Elastic IP address.
- */ -export interface MovingAddressStatus { /** - *The status of the Elastic IP address that's being moved to the EC2-VPC platform, or restored to the EC2-Classic platform.
+ *The IPv4 delegated prefixes that are assigned to the network interface.
*/ - MoveStatus?: MoveStatus | string; + Ipv4Prefixes?: InstanceIpv4Prefix[]; /** - *The Elastic IP address.
+ *The IPv6 delegated prefixes that are assigned to the network interface.
*/ - PublicIp?: string; + Ipv6Prefixes?: InstanceIpv6Prefix[]; } -export namespace MovingAddressStatus { +export namespace InstanceNetworkInterface { /** * @internal */ - export const filterSensitiveLog = (obj: MovingAddressStatus): any => ({ + export const filterSensitiveLog = (obj: InstanceNetworkInterface): any => ({ ...obj, }); } -export interface DescribeMovingAddressesResult { +/** + *Describes the options for instance hostnames.
+ */ +export interface PrivateDnsNameOptionsResponse { /** - *The status for each Elastic IP address.
+ *The type of hostname to assign to an instance.
*/ - MovingAddressStatuses?: MovingAddressStatus[]; + HostnameType?: HostnameType | string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
*/ - NextToken?: string; + EnableResourceNameDnsARecord?: boolean; + + /** + *Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
+ */ + EnableResourceNameDnsAAAARecord?: boolean; } -export namespace DescribeMovingAddressesResult { +export namespace PrivateDnsNameOptionsResponse { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeMovingAddressesResult): any => ({ + export const filterSensitiveLog = (obj: PrivateDnsNameOptionsResponse): any => ({ ...obj, }); } -export interface DescribeNatGatewaysRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes the current state of an instance.
+ */ +export interface InstanceState { /** - *One or more filters.
- *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:
+ *
- * nat-gateway-id
- The ID of the NAT gateway.
+ * 0
: pending
+ *
- * state
- The state of the NAT gateway (pending
|
- * failed
| available
| deleting
| deleted
).
+ * 16
: running
+ *
- * subnet-id
- The ID of the subnet in which the NAT gateway resides.
+ * 32
: shutting-down
+ *
- * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
+ * 48
: terminated
+ *
- * 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.
+ * 64
: stopping
+ *
- * vpc-id
- The ID of the VPC in which the NAT gateway resides.
+ * 80
: stopped
+ *
You can ignore the high byte value by zeroing out all of the bits above 2^8 or 256 in + * decimal.
+ */ + Code?: number; + + /** + *The current state of the instance.
+ */ + Name?: InstanceStateName | string; +} + +export namespace InstanceState { + /** + * @internal + */ + export const filterSensitiveLog = (obj: InstanceState): any => ({ + ...obj, + }); +} + +/** + *Describes an instance.
+ */ +export interface Instance { + /** + *The AMI launch index, which can be used to find this instance in the launch + * group.
*/ - Filter?: Filter[]; + AmiLaunchIndex?: number; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The ID of the AMI used to launch the instance.
*/ - MaxResults?: number; + ImageId?: string; /** - *One or more NAT gateway IDs.
+ *The ID of the instance.
*/ - NatGatewayIds?: string[]; + InstanceId?: string; /** - *The token for the next page of results.
+ *The instance type.
*/ - NextToken?: string; -} + InstanceType?: _InstanceType | string; -export namespace DescribeNatGatewaysRequest { /** - * @internal + *The kernel associated with this instance, if applicable.
*/ - export const filterSensitiveLog = (obj: DescribeNatGatewaysRequest): any => ({ - ...obj, - }); -} + KernelId?: string; -export interface DescribeNatGatewaysResult { /** - *Information about the NAT gateways.
+ *The name of the key pair, if this instance was launched with an associated key + * pair.
*/ - NatGateways?: NatGateway[]; + KeyName?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The time the instance was launched.
*/ - NextToken?: string; -} + LaunchTime?: Date; -export namespace DescribeNatGatewaysResult { /** - * @internal + *The monitoring for the instance.
*/ - export const filterSensitiveLog = (obj: DescribeNatGatewaysResult): any => ({ - ...obj, - }); -} + Monitoring?: Monitoring; -export interface DescribeNetworkAclsRequest { /** - *One or more 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.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
: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.
The location where the instance launched, if applicable.
*/ - Filters?: Filter[]; + Placement?: Placement; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The value is Windows
for Windows instances; otherwise blank.
One or more network ACL IDs.
- *Default: Describes all your network ACLs.
+ *(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.
[EC2-VPC] 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.
*/ - NetworkAclIds?: string[]; + PrivateDnsName?: string; /** - *The token for the next page of results.
+ *The private IPv4 address assigned to the instance.
*/ - NextToken?: string; + PrivateIpAddress?: string; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The product codes attached to this instance, if applicable.
*/ - MaxResults?: number; -} + ProductCodes?: ProductCode[]; -export namespace DescribeNetworkAclsRequest { /** - * @internal + *(IPv4 only) The public DNS name assigned to the instance. This name is not available
+ * until the instance enters the running
state. For EC2-VPC, this name is only
+ * available if you've enabled DNS hostnames for your VPC.
Information about one or more network ACLs.
+ *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.
*/ - NetworkAcls?: NetworkAcl[]; + PublicIpAddress?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The RAM disk associated with this instance, if applicable.
*/ - NextToken?: string; -} + RamdiskId?: string; -export namespace DescribeNetworkAclsResult { /** - * @internal + *The current state of the instance.
*/ - export const filterSensitiveLog = (obj: DescribeNetworkAclsResult): any => ({ - ...obj, - }); -} + State?: InstanceState; -export interface DescribeNetworkInsightsAnalysesRequest { /** - *The ID of the network insights analyses. You must specify either analysis IDs or a path ID.
+ *The reason for the most recent state transition. This might be an empty string.
*/ - NetworkInsightsAnalysisIds?: string[]; + StateTransitionReason?: string; /** - *The ID of the path. You must specify either a path ID or analysis IDs.
+ *[EC2-VPC] The ID of the subnet in which the instance is running.
*/ - NetworkInsightsPathId?: string; + SubnetId?: string; /** - *The time when the network insights analyses started.
+ *[EC2-VPC] The ID of the VPC in which the instance is running.
*/ - AnalysisStartTime?: Date; + VpcId?: string; /** - *The time when the network insights analyses ended.
+ *The architecture of the image.
*/ - AnalysisEndTime?: Date; + Architecture?: ArchitectureValues | string; /** - *The filters. The following are possible values:
- *PathFound - A Boolean value that indicates whether a feasible path is found.
- *Status - The status of the analysis (running | succeeded | failed).
- *Any block device mapping entries for the instance.
*/ - Filters?: Filter[]; + BlockDeviceMappings?: InstanceBlockDeviceMapping[]; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The idempotency token you provided when you launched the instance, if + * applicable.
*/ - MaxResults?: number; + ClientToken?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
*/ - DryRun?: boolean; + EbsOptimized?: boolean; /** - *The token for the next page of results.
+ *Specifies whether enhanced networking with ENA is enabled.
*/ - NextToken?: string; -} + EnaSupport?: boolean; -export namespace DescribeNetworkInsightsAnalysesRequest { /** - * @internal + *The hypervisor type of the instance. The value xen
is used for both Xen and
+ * Nitro hypervisors.
Describes a path component.
- */ -export interface AnalysisComponent { /** - *The ID of the component.
+ *The IAM instance profile associated with the instance, if applicable.
*/ - Id?: string; + IamInstanceProfile?: IamInstanceProfile; /** - *The Amazon Resource Name (ARN) of the component.
+ *Indicates whether this is a Spot Instance or a Scheduled Instance.
*/ - Arn?: string; -} + InstanceLifecycle?: InstanceLifecycleType | string; -export namespace AnalysisComponent { /** - * @internal - */ - export const filterSensitiveLog = (obj: AnalysisComponent): any => ({ - ...obj, - }); -} + *The Elastic GPU associated with the instance.
+ */ + ElasticGpuAssociations?: ElasticGpuAssociation[]; -/** - *Describes a network access control (ACL) rule.
- */ -export interface AnalysisAclRule { /** - *The IPv4 address range, in CIDR notation.
+ *The elastic inference accelerator associated with the instance.
*/ - Cidr?: string; + ElasticInferenceAcceleratorAssociations?: ElasticInferenceAcceleratorAssociation[]; /** - *Indicates whether the rule is an outbound rule.
+ *[EC2-VPC] The network interfaces for the instance.
*/ - Egress?: boolean; + NetworkInterfaces?: InstanceNetworkInterface[]; /** - *The range of ports.
+ *The Amazon Resource Name (ARN) of the Outpost.
*/ - PortRange?: PortRange; + OutpostArn?: string; /** - *The protocol.
+ *The device name of the root device volume (for example,
+ * /dev/sda1
).
Indicates whether to allow or deny traffic that matches the rule.
+ *The root device type used by the AMI. The AMI can use an EBS volume or an instance + * store volume.
*/ - RuleAction?: string; + RootDeviceType?: DeviceType | string; /** - *The rule number.
+ *The security groups for the instance.
*/ - RuleNumber?: number; -} + SecurityGroups?: GroupIdentifier[]; -export namespace AnalysisAclRule { /** - * @internal + *Indicates whether source/destination checking is enabled.
*/ - export const filterSensitiveLog = (obj: AnalysisAclRule): any => ({ - ...obj, - }); -} + SourceDestCheck?: boolean; -/** - *Describes a load balancer listener.
- */ -export interface AnalysisLoadBalancerListener { /** - *The port on which the load balancer is listening.
+ *If the request is a Spot Instance request, the ID of the request.
*/ - LoadBalancerPort?: number; + SpotInstanceRequestId?: string; /** - *[Classic Load Balancers] The back-end port for the listener.
+ *Specifies whether enhanced networking with the Intel 82599 Virtual Function interface + * is enabled.
*/ - InstancePort?: number; -} + SriovNetSupport?: string; -export namespace AnalysisLoadBalancerListener { /** - * @internal + *The reason for the most recent state transition.
*/ - export const filterSensitiveLog = (obj: AnalysisLoadBalancerListener): any => ({ - ...obj, - }); -} + StateReason?: StateReason; -/** - *Describes a load balancer target.
- */ -export interface AnalysisLoadBalancerTarget { /** - *The IP address.
+ *Any tags assigned to the instance.
*/ - Address?: string; + Tags?: Tag[]; /** - *The Availability Zone.
+ *The virtualization type of the instance.
*/ - AvailabilityZone?: string; + VirtualizationType?: VirtualizationType | string; /** - *Information about the instance.
+ *The CPU options for the instance.
*/ - Instance?: AnalysisComponent; + CpuOptions?: CpuOptions; /** - *The port on which the target is listening.
+ *The ID of the Capacity Reservation.
*/ - Port?: number; -} + CapacityReservationId?: string; -export namespace AnalysisLoadBalancerTarget { /** - * @internal + *Information about the Capacity Reservation targeting option.
*/ - export const filterSensitiveLog = (obj: AnalysisLoadBalancerTarget): any => ({ - ...obj, - }); -} + CapacityReservationSpecification?: CapacityReservationSpecificationResponse; -/** - *Describes a route table route.
- */ -export interface AnalysisRouteTableRoute { /** - *The destination IPv4 address, in CIDR notation.
+ *Indicates whether the instance is enabled for hibernation.
*/ - DestinationCidr?: string; + HibernationOptions?: HibernationOptions; /** - *The prefix of the Amazon Web Service.
+ *The license configurations for the instance.
*/ - DestinationPrefixListId?: string; + Licenses?: LicenseConfiguration[]; /** - *The ID of an egress-only internet gateway.
+ *The metadata options for the instance.
*/ - EgressOnlyInternetGatewayId?: string; + MetadataOptions?: InstanceMetadataOptionsResponse; /** - *The ID of the gateway, such as an internet gateway or virtual private gateway.
+ *Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.
*/ - GatewayId?: string; + EnclaveOptions?: EnclaveOptions; /** - *The ID of the instance, such as a NAT instance.
+ *The boot mode of the instance. For more information, see Boot modes in the + * Amazon EC2 User Guide.
*/ - InstanceId?: string; + BootMode?: BootModeValues | string; /** - *The ID of a NAT gateway.
+ *The platform details value for the instance. For more information, see AMI + * billing information fields in the + * Amazon EC2 User Guide.
*/ - NatGatewayId?: string; + PlatformDetails?: string; /** - *The ID of a network interface.
+ *The usage operation value for the instance. For more information, see AMI billing information fields + * in the Amazon EC2 User Guide.
*/ - NetworkInterfaceId?: string; + UsageOperation?: string; /** - *Describes how the route was created. The following are 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.
The time that the usage operation was last updated.
*/ - Origin?: string; + UsageOperationUpdateTime?: Date; /** - *The ID of a transit gateway.
+ *The options for the instance hostname.
*/ - TransitGatewayId?: string; + PrivateDnsNameOptions?: PrivateDnsNameOptionsResponse; /** - *The ID of a VPC peering connection.
+ *The IPv6 address assigned to the instance.
*/ - VpcPeeringConnectionId?: string; + Ipv6Address?: string; } -export namespace AnalysisRouteTableRoute { +export namespace Instance { /** * @internal */ - export const filterSensitiveLog = (obj: AnalysisRouteTableRoute): any => ({ + export const filterSensitiveLog = (obj: Instance): any => ({ ...obj, }); } /** - *Describes a security group rule.
+ *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.
*/ -export interface AnalysisSecurityGroupRule { - /** - *The IPv4 address range, in CIDR notation.
- */ - Cidr?: string; - +export interface Reservation { /** - *The direction. The following are possible values:
- *egress
- *ingress
- *[EC2-Classic only] The security groups.
*/ - Direction?: string; + Groups?: GroupIdentifier[]; /** - *The security group ID.
+ *The instances.
*/ - SecurityGroupId?: string; + Instances?: Instance[]; /** - *The port range.
+ *The ID of the Amazon Web Services account that owns the reservation.
*/ - PortRange?: PortRange; + OwnerId?: string; /** - *The prefix list ID.
+ *The ID of the requester that launched the instances on your behalf (for example, + * Amazon Web Services Management Console or Auto Scaling).
*/ - PrefixListId?: string; + RequesterId?: string; /** - *The protocol name.
+ *The ID of the reservation.
*/ - Protocol?: string; + ReservationId?: string; } -export namespace AnalysisSecurityGroupRule { +export namespace Reservation { /** * @internal */ - export const filterSensitiveLog = (obj: AnalysisSecurityGroupRule): any => ({ + export const filterSensitiveLog = (obj: Reservation): any => ({ ...obj, }); } -/** - *Describes an explanation code for an unreachable path. For more information, see Reachability Analyzer explanation codes.
- */ -export interface Explanation { - /** - *The network ACL.
- */ - Acl?: AnalysisComponent; - +export interface DescribeInstancesResult { /** - *The network ACL rule.
+ *Information about the reservations.
*/ - AclRule?: AnalysisAclRule; + Reservations?: Reservation[]; /** - *The IPv4 address, in CIDR notation.
+ *The token to use to retrieve the next page of results. This value is null
+ * when there are no more results to return.
The IPv4 addresses, in CIDR notation.
+ * @internal */ - Addresses?: string[]; + export const filterSensitiveLog = (obj: DescribeInstancesResult): any => ({ + ...obj, + }); +} +export interface DescribeInstanceStatusRequest { /** - *The resource to which the component is attached.
+ *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
).
The Availability Zones.
+ *The instance IDs.
+ *Default: Describes all your instances.
+ *Constraints: Maximum 100 explicitly specified instance IDs.
*/ - AvailabilityZones?: string[]; + InstanceIds?: string[]; /** - *The CIDR ranges.
+ *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. You cannot specify this parameter and the instance IDs
+ * parameter in the same call.
The component.
+ *The token to retrieve the next page of results.
*/ - Component?: AnalysisComponent; + NextToken?: string; /** - *The customer gateway.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The destination.
+ *When true
, includes the health status for all instances. When
+ * false
, includes the health status for running instances only.
Default: false
+ *
The destination VPC.
+ * @internal */ - DestinationVpc?: AnalysisComponent; + export const filterSensitiveLog = (obj: DescribeInstanceStatusRequest): any => ({ + ...obj, + }); +} - /** - *The direction. The following are possible values:
- *egress
- *ingress
- *Describes a scheduled event for an instance.
+ */ +export interface InstanceStatusEvent { /** - *The explanation code.
+ *The ID of the event.
*/ - ExplanationCode?: string; + InstanceEventId?: string; /** - *The route table.
+ *The event code.
*/ - IngressRouteTable?: AnalysisComponent; + Code?: EventCode | string; /** - *The internet gateway.
+ *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].
*/ - InternetGateway?: AnalysisComponent; + Description?: string; /** - *The Amazon Resource Name (ARN) of the load balancer.
+ *The latest scheduled end time for the event.
*/ - LoadBalancerArn?: string; + NotAfter?: Date; /** - *The listener for a Classic Load Balancer.
+ *The earliest scheduled start time for the event.
*/ - ClassicLoadBalancerListener?: AnalysisLoadBalancerListener; + NotBefore?: Date; /** - *The listener port of the load balancer.
+ *The deadline for starting the event.
*/ - LoadBalancerListenerPort?: number; + NotBeforeDeadline?: Date; +} +export namespace InstanceStatusEvent { /** - *The target.
+ * @internal */ - LoadBalancerTarget?: AnalysisLoadBalancerTarget; + export const filterSensitiveLog = (obj: InstanceStatusEvent): any => ({ + ...obj, + }); +} - /** - *The target group.
- */ - LoadBalancerTargetGroup?: AnalysisComponent; +export type StatusName = "reachability"; - /** - *The target groups.
- */ - LoadBalancerTargetGroups?: AnalysisComponent[]; +export type StatusType = "failed" | "initializing" | "insufficient-data" | "passed"; +/** + *Describes the instance status.
+ */ +export interface InstanceStatusDetails { /** - *The target port.
+ *The time when a status check failed. For an instance that was launched and impaired, + * this is the time when the instance was launched.
*/ - LoadBalancerTargetPort?: number; + ImpairedSince?: Date; /** - *The load balancer listener.
+ *The type of instance status.
*/ - ElasticLoadBalancerListener?: AnalysisComponent; + Name?: StatusName | string; /** - *The missing component.
+ *The status.
*/ - MissingComponent?: string; + Status?: StatusType | string; +} +export namespace InstanceStatusDetails { /** - *The NAT gateway.
+ * @internal */ - NatGateway?: AnalysisComponent; + export const filterSensitiveLog = (obj: InstanceStatusDetails): any => ({ + ...obj, + }); +} - /** - *The network interface.
- */ - NetworkInterface?: AnalysisComponent; +export type SummaryStatus = "impaired" | "initializing" | "insufficient-data" | "not-applicable" | "ok"; +/** + *Describes the status of an instance.
+ */ +export interface InstanceStatusSummary { /** - *The packet field.
+ *The system instance health or application instance health.
*/ - PacketField?: string; + Details?: InstanceStatusDetails[]; /** - *The VPC peering connection.
+ *The status.
*/ - VpcPeeringConnection?: AnalysisComponent; + Status?: SummaryStatus | string; +} +export namespace InstanceStatusSummary { /** - *The port.
+ * @internal */ - Port?: number; + export const filterSensitiveLog = (obj: InstanceStatusSummary): any => ({ + ...obj, + }); +} +/** + *Describes the status of an instance.
+ */ +export interface InstanceStatus { /** - *The port ranges.
+ *The Availability Zone of the instance.
*/ - PortRanges?: PortRange[]; + AvailabilityZone?: string; /** - *The prefix list.
+ *The Amazon Resource Name (ARN) of the Outpost.
*/ - PrefixList?: AnalysisComponent; + OutpostArn?: string; /** - *The protocols.
+ *Any scheduled events associated with the instance.
*/ - Protocols?: string[]; + Events?: InstanceStatusEvent[]; /** - *The route table route.
+ *The ID of the instance.
*/ - RouteTableRoute?: AnalysisRouteTableRoute; + InstanceId?: string; /** - *The route table.
+ *The intended state of the instance. DescribeInstanceStatus requires
+ * that an instance be in the running
state.
The security group.
+ *Reports impaired functionality that stems from issues internal to the instance, such + * as impaired reachability.
*/ - SecurityGroup?: AnalysisComponent; + InstanceStatus?: InstanceStatusSummary; /** - *The security group rule.
+ *Reports impaired functionality that stems from issues related to the systems that + * support an instance, such as hardware failures and network connectivity problems.
*/ - SecurityGroupRule?: AnalysisSecurityGroupRule; + SystemStatus?: InstanceStatusSummary; +} +export namespace InstanceStatus { /** - *The security groups.
+ * @internal */ - SecurityGroups?: AnalysisComponent[]; + export const filterSensitiveLog = (obj: InstanceStatus): any => ({ + ...obj, + }); +} +export interface DescribeInstanceStatusResult { /** - *The source VPC.
+ *Information about the status of the instances.
*/ - SourceVpc?: AnalysisComponent; + InstanceStatuses?: InstanceStatus[]; /** - *The state.
+ *The token to use to retrieve the next page of results. This value is null
+ * when there are no more results to return.
The subnet.
+ * @internal */ - Subnet?: AnalysisComponent; + export const filterSensitiveLog = (obj: DescribeInstanceStatusResult): any => ({ + ...obj, + }); +} + +export type LocationType = "availability-zone" | "availability-zone-id" | "region"; +export interface DescribeInstanceTypeOfferingsRequest { /** - *The route table for the subnet.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is
+ * DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The component VPC.
+ *The location type.
*/ - Vpc?: AnalysisComponent; + LocationType?: LocationType | string; /** - *The VPC endpoint.
+ *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
.
The VPN connection.
+ *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 next token value.
*/ - VpnConnection?: AnalysisComponent; + MaxResults?: number; /** - *The VPN gateway.
+ *The token to retrieve the next page of results.
*/ - VpnGateway?: AnalysisComponent; + NextToken?: string; } -export namespace Explanation { +export namespace DescribeInstanceTypeOfferingsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: Explanation): any => ({ + export const filterSensitiveLog = (obj: DescribeInstanceTypeOfferingsRequest): any => ({ ...obj, }); } /** - *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.
+ *The instance types offered.
*/ -export interface AnalysisPacketHeader { - /** - *The destination addresses.
- */ - DestinationAddresses?: string[]; - - /** - *The destination port ranges.
- */ - DestinationPortRanges?: PortRange[]; - +export interface InstanceTypeOffering { /** - *The protocol.
+ *The instance type. For more information, see Instance types in the Amazon EC2 User Guide.
*/ - Protocol?: string; + InstanceType?: _InstanceType | string; /** - *The source addresses.
+ *The location type.
*/ - SourceAddresses?: string[]; + LocationType?: LocationType | string; /** - *The source port ranges.
+ *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
.)
Describes a path component.
- */ -export interface PathComponent { - /** - *The sequence number.
- */ - SequenceNumber?: number; - - /** - *The network ACL rule.
- */ - AclRule?: AnalysisAclRule; - - /** - *The component.
- */ - Component?: AnalysisComponent; - +export interface DescribeInstanceTypeOfferingsResult { /** - *The destination VPC.
+ *The instance types offered.
*/ - DestinationVpc?: AnalysisComponent; + InstanceTypeOfferings?: InstanceTypeOffering[]; /** - *The outbound header.
+ *The token to use to retrieve the next page of results. This value is null
when there
+ * are no more results to return.
The inbound header.
+ * @internal */ - InboundHeader?: AnalysisPacketHeader; + export const filterSensitiveLog = (obj: DescribeInstanceTypeOfferingsResult): any => ({ + ...obj, + }); +} +export interface DescribeInstanceTypesRequest { /** - *The route table route.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is
+ * DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The security group rule.
+ *The instance types. For more information, see Instance types in the Amazon EC2 User Guide.
*/ - SecurityGroupRule?: AnalysisSecurityGroupRule; + InstanceTypes?: (_InstanceType | string)[]; /** - *The source VPC.
+ *One or more filters. Filter names and values are case-sensitive.
+ *
+ * auto-recovery-supported
- Indicates whether auto recovery is supported (true
| false
).
+ * bare-metal
- Indicates whether it is a bare metal instance type (true
| false
).
+ * burstable-performance-supported
- Indicates whether it is a burstable
+ * performance 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-supported
- Indicates whether data is encrypted at rest
+ * (required
| 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-interfaces
- The maximum number of network interfaces per instance.
+ * network-info.network-performance
- The network performance (for example, "25
+ * Gigabit").
+ * processor-info.supported-architecture
- The CPU architecture
+ * (arm64
| i386
| x86_64
).
+ * processor-info.sustained-clock-speed-in-ghz
- The CPU clock speed, in GHz.
+ * 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".
The subnet.
+ *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 next token value.
*/ - Subnet?: AnalysisComponent; + MaxResults?: number; /** - *The component VPC.
+ *The token to retrieve the next page of results.
*/ - Vpc?: AnalysisComponent; + NextToken?: string; } -export namespace PathComponent { +export namespace DescribeInstanceTypesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: PathComponent): any => ({ + export const filterSensitiveLog = (obj: DescribeInstanceTypesRequest): any => ({ ...obj, }); } -export type AnalysisStatus = "failed" | "running" | "succeeded"; - /** - *Describes a network insights analysis.
+ *Describes the optimized EBS performance for supported instance types.
*/ -export interface NetworkInsightsAnalysis { - /** - *The ID of the network insights analysis.
- */ - NetworkInsightsAnalysisId?: string; - - /** - *The Amazon Resource Name (ARN) of the network insights analysis.
- */ - NetworkInsightsAnalysisArn?: string; - - /** - *The ID of the path.
- */ - NetworkInsightsPathId?: string; - - /** - *The Amazon Resource Names (ARN) of the Amazon Web Services resources that the path must traverse.
- */ - FilterInArns?: string[]; - - /** - *The time the analysis started.
- */ - StartDate?: Date; - - /** - *The status of the network insights analysis.
- */ - Status?: AnalysisStatus | string; - - /** - *The status message, if the status is failed
.
Indicates whether the destination is reachable from the source.
+ *The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.
*/ - NetworkPathFound?: boolean; + BaselineBandwidthInMbps?: number; /** - *The components in the path from source to destination.
+ *The baseline throughput performance for an EBS-optimized instance type, in MB/s.
*/ - ForwardPathComponents?: PathComponent[]; + BaselineThroughputInMBps?: number; /** - *The components in the path from destination to source.
+ *The baseline input/output storage operations per seconds for an EBS-optimized instance type.
*/ - ReturnPathComponents?: PathComponent[]; + BaselineIops?: number; /** - *The explanations. For more information, see Reachability Analyzer explanation codes.
+ *The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.
*/ - Explanations?: Explanation[]; + MaximumBandwidthInMbps?: number; /** - *Potential intermediate components.
+ *The maximum throughput performance for an EBS-optimized instance type, in MB/s.
*/ - AlternatePathHints?: AlternatePathHint[]; + MaximumThroughputInMBps?: number; /** - *The tags.
+ *The maximum input/output storage operations per second for an EBS-optimized instance type.
*/ - Tags?: Tag[]; + MaximumIops?: number; } -export namespace NetworkInsightsAnalysis { +export namespace EbsOptimizedInfo { /** * @internal */ - export const filterSensitiveLog = (obj: NetworkInsightsAnalysis): any => ({ + export const filterSensitiveLog = (obj: EbsOptimizedInfo): any => ({ ...obj, }); } -export interface DescribeNetworkInsightsAnalysesResult { - /** - *Information about the network insights analyses.
- */ - NetworkInsightsAnalyses?: NetworkInsightsAnalysis[]; +export type EbsOptimizedSupport = "default" | "supported" | "unsupported"; - /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The IDs of the paths.
- */ - NetworkInsightsPathIds?: string[]; - - /** - *The filters. The following are possible values:
- *Destination - The ID of the resource.
- *DestinationPort - The destination port.
- *Name - The path name.
- *Protocol - The protocol.
- *Source - The ID of the resource.
- *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes the Amazon EBS features supported by the instance type.
+ */ +export interface EbsInfo { /** - *The token for the next page of results.
+ *Indicates whether the instance type is Amazon EBS-optimized. For more information, see Amazon EBS-optimized + * instances in Amazon EC2 User Guide.
*/ - NextToken?: string; -} + EbsOptimizedSupport?: EbsOptimizedSupport | string; -export namespace DescribeNetworkInsightsPathsRequest { /** - * @internal + *Indicates whether Amazon EBS encryption is supported.
*/ - export const filterSensitiveLog = (obj: DescribeNetworkInsightsPathsRequest): any => ({ - ...obj, - }); -} + EncryptionSupport?: EbsEncryptionSupport | string; -export interface DescribeNetworkInsightsPathsResult { /** - *Information about the paths.
+ *Describes the optimized EBS performance for the instance type.
*/ - NetworkInsightsPaths?: NetworkInsightsPath[]; + EbsOptimizedInfo?: EbsOptimizedInfo; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Indicates whether non-volatile memory express (NVMe) is supported.
*/ - NextToken?: string; + NvmeSupport?: EbsNvmeSupport | string; } -export namespace DescribeNetworkInsightsPathsResult { +export namespace EbsInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeNetworkInsightsPathsResult): any => ({ + export const filterSensitiveLog = (obj: EbsInfo): any => ({ ...obj, }); } -export type NetworkInterfaceAttribute = "attachment" | "description" | "groupSet" | "sourceDestCheck"; - /** - *Contains the parameters for DescribeNetworkInterfaceAttribute.
+ *Describes the memory for the FPGA accelerator for the instance type.
*/ -export interface DescribeNetworkInterfaceAttributeRequest { - /** - *The attribute of the network interface. This parameter is required.
- */ - Attribute?: NetworkInterfaceAttribute | string; - - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the network interface.
+ *The size of the memory available to the FPGA accelerator, in MiB.
*/ - NetworkInterfaceId: string | undefined; + SizeInMiB?: number; } -export namespace DescribeNetworkInterfaceAttributeRequest { +export namespace FpgaDeviceMemoryInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeNetworkInterfaceAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: FpgaDeviceMemoryInfo): any => ({ ...obj, }); } /** - *Contains the output of DescribeNetworkInterfaceAttribute.
+ *Describes the FPGA accelerator for the instance type.
*/ -export interface DescribeNetworkInterfaceAttributeResult { - /** - *The attachment (if any) of the network interface.
- */ - Attachment?: NetworkInterfaceAttachment; - +export interface FpgaDeviceInfo { /** - *The description of the network interface.
+ *The name of the FPGA accelerator.
*/ - Description?: AttributeValue; + Name?: string; /** - *The security groups associated with the network interface.
+ *The manufacturer of the FPGA accelerator.
*/ - Groups?: GroupIdentifier[]; + Manufacturer?: string; /** - *The ID of the network interface.
+ *The count of FPGA accelerators for the instance type.
*/ - NetworkInterfaceId?: string; + Count?: number; /** - *Indicates whether source/destination checking is enabled.
+ *Describes the memory for the FPGA accelerator for the instance type.
*/ - SourceDestCheck?: AttributeBooleanValue; + MemoryInfo?: FpgaDeviceMemoryInfo; } -export namespace DescribeNetworkInterfaceAttributeResult { +export namespace FpgaDeviceInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeNetworkInterfaceAttributeResult): any => ({ + export const filterSensitiveLog = (obj: FpgaDeviceInfo): any => ({ ...obj, }); } /** - *Contains the parameters for DescribeNetworkInterfacePermissions.
+ *Describes the FPGAs for the instance type.
*/ -export interface DescribeNetworkInterfacePermissionsRequest { +export interface FpgaInfo { /** - *One or more network interface permission IDs.
+ *Describes the FPGAs for the instance type.
*/ - NetworkInterfacePermissionIds?: string[]; + Fpgas?: FpgaDeviceInfo[]; /** - *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
).
The total memory of all FPGA accelerators for the instance type.
*/ - Filters?: Filter[]; + TotalFpgaMemoryInMiB?: number; +} +export namespace FpgaInfo { /** - *The token to request the next page of results.
+ * @internal */ - NextToken?: string; + export const filterSensitiveLog = (obj: FpgaInfo): any => ({ + ...obj, + }); +} +/** + *Describes the memory available to the GPU accelerator.
+ */ +export interface GpuDeviceMemoryInfo { /** - *The maximum number of results to return in a single call. To retrieve the remaining results,
- * make another call with the returned NextToken
value. If this parameter is not specified, up to 50 results are returned by default.
The size of the memory available to the GPU accelerator, in MiB.
*/ - MaxResults?: number; + SizeInMiB?: number; } -export namespace DescribeNetworkInterfacePermissionsRequest { +export namespace GpuDeviceMemoryInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeNetworkInterfacePermissionsRequest): any => ({ + export const filterSensitiveLog = (obj: GpuDeviceMemoryInfo): any => ({ ...obj, }); } /** - *Contains the output for DescribeNetworkInterfacePermissions.
+ *Describes the GPU accelerators for the instance type.
*/ -export interface DescribeNetworkInterfacePermissionsResult { +export interface GpuDeviceInfo { /** - *The network interface permissions.
+ *The name of the GPU accelerator.
*/ - NetworkInterfacePermissions?: NetworkInterfacePermission[]; + Name?: string; /** - *The token to use to retrieve the next page of results.
+ *The manufacturer of the GPU accelerator.
*/ - NextToken?: string; + Manufacturer?: string; + + /** + *The number of GPUs for the instance type.
+ */ + Count?: number; + + /** + *Describes the memory available to the GPU accelerator.
+ */ + MemoryInfo?: GpuDeviceMemoryInfo; } -export namespace DescribeNetworkInterfacePermissionsResult { +export namespace GpuDeviceInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeNetworkInterfacePermissionsResult): any => ({ + export const filterSensitiveLog = (obj: GpuDeviceInfo): any => ({ ...obj, }); } /** - *Contains the parameters for DescribeNetworkInterfaces.
+ *Describes the GPU accelerators for the instance type.
*/ -export interface DescribeNetworkInterfacesRequest { +export interface GpuInfo { /** - *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.
- * 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
: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.
Describes the GPU accelerators for the instance type.
+ */ + Gpus?: GpuDeviceInfo[]; + + /** + *The total size of the memory for the GPU accelerators for the instance type, in MiB.
*/ - Filters?: Filter[]; + TotalGpuMemoryInMiB?: number; +} +export namespace GpuInfo { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes the Inference accelerators for the instance type.
+ */ +export interface InferenceDeviceInfo { /** - *One or more network interface IDs.
- *Default: Describes all your network interfaces.
+ *The number of Inference accelerators for the instance type.
*/ - NetworkInterfaceIds?: string[]; + Count?: number; /** - *The token to retrieve the next page of results.
+ *The name of the Inference accelerator.
*/ - NextToken?: string; + Name?: string; /** - *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. You cannot specify this - * parameter and the network interface IDs parameter in the same request.
+ *The manufacturer of the Inference accelerator.
*/ - MaxResults?: number; + Manufacturer?: string; } -export namespace DescribeNetworkInterfacesRequest { +export namespace InferenceDeviceInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeNetworkInterfacesRequest): any => ({ + export const filterSensitiveLog = (obj: InferenceDeviceInfo): any => ({ ...obj, }); } /** - *Contains the output of DescribeNetworkInterfaces.
+ *Describes the Inference accelerators for the instance type.
*/ -export interface DescribeNetworkInterfacesResult { +export interface InferenceAcceleratorInfo { /** - *Information about one or more network interfaces.
+ *Describes the Inference accelerators for the instance type.
*/ - NetworkInterfaces?: NetworkInterface[]; + Accelerators?: InferenceDeviceInfo[]; +} +export namespace InferenceAcceleratorInfo { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Describes a disk.
+ */ +export interface DiskInfo { + /** + *The size of the disk in GB.
+ */ + SizeInGB?: number; + + /** + *The number of disks with this configuration.
+ */ + Count?: number; + + /** + *The type of disk.
+ */ + Type?: DiskType | string; +} + +export namespace DiskInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeNetworkInterfacesResult): any => ({ + export const filterSensitiveLog = (obj: DiskInfo): any => ({ ...obj, }); } -export interface DescribePlacementGroupsRequest { +export enum InstanceStorageEncryptionSupport { + required = "required", + unsupported = "unsupported", +} + +export enum EphemeralNvmeSupport { + REQUIRED = "required", + SUPPORTED = "supported", + UNSUPPORTED = "unsupported", +} + +/** + *Describes the instance store features that are supported by the instance type.
+ */ +export interface InstanceStorageInfo { /** - *The filters.
- *
- * group-name
- The name of the placement group.
- * state
- The state of the placement group (pending
|
- * available
| deleting
|
- * deleted
).
- * strategy
- The strategy of the placement group
- * (cluster
| spread
|
- * partition
).
- * tag:
- 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.
The total size of the disks, in GB.
*/ - Filters?: Filter[]; + TotalSizeInGB?: number; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes the disks that are available for the instance type.
*/ - DryRun?: boolean; + Disks?: DiskInfo[]; /** - *The names of the placement groups.
- *Default: Describes all your placement groups, or only those otherwise - * specified.
+ *Indicates whether non-volatile memory express (NVMe) is supported.
*/ - GroupNames?: string[]; + NvmeSupport?: EphemeralNvmeSupport | string; /** - *The IDs of the placement groups.
+ *Indicates whether data is encrypted at rest.
*/ - GroupIds?: string[]; + EncryptionSupport?: InstanceStorageEncryptionSupport | string; } -export namespace DescribePlacementGroupsRequest { +export namespace InstanceStorageInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribePlacementGroupsRequest): any => ({ + export const filterSensitiveLog = (obj: InstanceStorageInfo): any => ({ ...obj, }); } -export interface DescribePlacementGroupsResult { +/** + *Describes the memory for the instance type.
+ */ +export interface MemoryInfo { /** - *Information about the placement groups.
+ *The size of the memory, in MiB.
*/ - PlacementGroups?: PlacementGroup[]; + SizeInMiB?: number; } -export namespace DescribePlacementGroupsResult { +export namespace MemoryInfo { + /** + * @internal + */ + export const filterSensitiveLog = (obj: MemoryInfo): any => ({ + ...obj, + }); +} + +/** + *Describes the Elastic Fabric Adapters for the instance type.
+ */ +export interface EfaInfo { + /** + *The maximum number of Elastic Fabric Adapters for the instance type.
+ */ + MaximumEfaInterfaces?: number; +} + +export namespace EfaInfo { + /** + * @internal + */ + export const filterSensitiveLog = (obj: EfaInfo): any => ({ + ...obj, + }); +} + +export type EnaSupport = "required" | "supported" | "unsupported"; + +/** + *Describes the network card support of the instance type.
+ */ +export interface NetworkCardInfo { + /** + *The index of the network card.
+ */ + NetworkCardIndex?: number; + + /** + *The network performance of the network card.
+ */ + NetworkPerformance?: string; + + /** + *The maximum number of network interfaces for the network card.
+ */ + MaximumNetworkInterfaces?: number; +} + +export namespace NetworkCardInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribePlacementGroupsResult): any => ({ - ...obj, - }); -} + export const filterSensitiveLog = (obj: NetworkCardInfo): any => ({ + ...obj, + }); +} + +/** + *Describes the networking features of the instance type.
+ */ +export interface NetworkInfo { + /** + *The network performance.
+ */ + NetworkPerformance?: string; + + /** + *The maximum number of network interfaces for the instance type.
+ */ + MaximumNetworkInterfaces?: number; + + /** + *The maximum number of physical network cards that can be allocated to the instance.
+ */ + MaximumNetworkCards?: number; + + /** + *The index of the default network card, starting at 0.
+ */ + DefaultNetworkCardIndex?: number; + + /** + *Describes the network cards for the instance type.
+ */ + NetworkCards?: NetworkCardInfo[]; + + /** + *The maximum number of IPv4 addresses per network interface.
+ */ + Ipv4AddressesPerInterface?: number; + + /** + *The maximum number of IPv6 addresses per network interface.
+ */ + Ipv6AddressesPerInterface?: number; -export interface DescribePrefixListsRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Indicates whether IPv6 is supported.
*/ - DryRun?: boolean; + Ipv6Supported?: boolean; /** - *One or more filters.
- *
- * prefix-list-id
: The ID of a prefix list.
- * prefix-list-name
: The name of a prefix list.
Indicates whether Elastic Network Adapter (ENA) is supported.
*/ - Filters?: Filter[]; + EnaSupport?: EnaSupport | string; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Indicates whether Elastic Fabric Adapter (EFA) is supported.
*/ - MaxResults?: number; + EfaSupported?: boolean; /** - *The token for the next page of results.
+ *Describes the Elastic Fabric Adapters for the instance type.
*/ - NextToken?: string; + EfaInfo?: EfaInfo; /** - *One or more prefix list IDs.
+ *Indicates whether the instance type automatically encrypts in-transit traffic between instances.
*/ - PrefixListIds?: string[]; + EncryptionInTransitSupported?: boolean; } -export namespace DescribePrefixListsRequest { +export namespace NetworkInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribePrefixListsRequest): any => ({ + export const filterSensitiveLog = (obj: NetworkInfo): any => ({ ...obj, }); } +export type PlacementGroupStrategy = "cluster" | "partition" | "spread"; + /** - *Describes prefixes for Amazon Web Services services.
+ *Describes the placement group support of the instance type.
*/ -export interface PrefixList { - /** - *The IP address range of the Amazon Web Service.
- */ - Cidrs?: string[]; - - /** - *The ID of the prefix.
- */ - PrefixListId?: string; - +export interface PlacementGroupInfo { /** - *The name of the prefix.
+ *The supported placement group types.
*/ - PrefixListName?: string; + SupportedStrategies?: (PlacementGroupStrategy | string)[]; } -export namespace PrefixList { +export namespace PlacementGroupInfo { /** * @internal */ - export const filterSensitiveLog = (obj: PrefixList): any => ({ + export const filterSensitiveLog = (obj: PlacementGroupInfo): any => ({ ...obj, }); } -export interface DescribePrefixListsResult { +export type ArchitectureType = "arm64" | "i386" | "x86_64" | "x86_64_mac"; + +/** + *Describes the processor used by the instance type.
+ */ +export interface ProcessorInfo { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The architectures supported by the instance type.
*/ - NextToken?: string; + SupportedArchitectures?: (ArchitectureType | string)[]; /** - *All available prefix lists.
+ *The speed of the processor, in GHz.
*/ - PrefixLists?: PrefixList[]; + SustainedClockSpeedInGhz?: number; } -export namespace DescribePrefixListsResult { +export namespace ProcessorInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribePrefixListsResult): any => ({ + export const filterSensitiveLog = (obj: ProcessorInfo): any => ({ ...obj, }); } -export interface DescribePrincipalIdFormatRequest { +export type BootModeType = "legacy-bios" | "uefi"; + +export type RootDeviceType = "ebs" | "instance-store"; + +export type UsageClassType = "on-demand" | "spot"; + +/** + *Describes the vCPU configurations for the instance type.
+ */ +export interface VCpuInfo { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The default number of vCPUs for the instance type.
*/ - DryRun?: boolean; + DefaultVCpus?: number; /** - *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
- *
The default number of cores for the instance type.
*/ - Resources?: string[]; + DefaultCores?: number; /** - *The maximum number of results to return in a single call. To retrieve the remaining - * results, make another call with the returned NextToken value.
+ *The default number of threads per core for the instance type.
*/ - MaxResults?: number; + DefaultThreadsPerCore?: number; /** - *The token to request the next page of results.
+ *The valid number of cores that can be configured for the instance type.
*/ - NextToken?: string; + ValidCores?: number[]; + + /** + *The valid number of threads per core that can be configured for the instance type.
+ */ + ValidThreadsPerCore?: number[]; } -export namespace DescribePrincipalIdFormatRequest { +export namespace VCpuInfo { /** * @internal */ - export const filterSensitiveLog = (obj: DescribePrincipalIdFormatRequest): any => ({ + export const filterSensitiveLog = (obj: VCpuInfo): any => ({ ...obj, }); } /** - *PrincipalIdFormat description
+ *Describes the instance type.
*/ -export interface PrincipalIdFormat { +export interface InstanceTypeInfo { /** - *PrincipalIdFormatARN description
+ *The instance type. For more information, see Instance types in the Amazon EC2 User Guide.
*/ - Arn?: string; + InstanceType?: _InstanceType | string; /** - *PrincipalIdFormatStatuses description
+ *Indicates whether the instance type is current generation.
*/ - Statuses?: IdFormat[]; -} + CurrentGeneration?: boolean; -export namespace PrincipalIdFormat { /** - * @internal + *Indicates whether the instance type is eligible for the free tier.
*/ - export const filterSensitiveLog = (obj: PrincipalIdFormat): any => ({ - ...obj, - }); -} + FreeTierEligible?: boolean; -export interface DescribePrincipalIdFormatResult { /** - *Information about the ID format settings for the ARN.
+ *Indicates whether the instance type is offered for spot or On-Demand.
*/ - Principals?: PrincipalIdFormat[]; + SupportedUsageClasses?: (UsageClassType | string)[]; /** - *The token to use to retrieve the next page of results. This value is null when there are no more results to return.
+ *The supported root device types.
*/ - NextToken?: string; -} + SupportedRootDeviceTypes?: (RootDeviceType | string)[]; -export namespace DescribePrincipalIdFormatResult { /** - * @internal + *The supported virtualization types.
*/ - export const filterSensitiveLog = (obj: DescribePrincipalIdFormatResult): any => ({ - ...obj, - }); -} + SupportedVirtualizationTypes?: (VirtualizationType | string)[]; -export interface DescribePublicIpv4PoolsRequest { /** - *The IDs of the address pools.
+ *Indicates whether the instance is a bare metal instance type.
*/ - PoolIds?: string[]; + BareMetal?: boolean; /** - *The token for the next page of results.
+ *The hypervisor for the instance type.
*/ - NextToken?: string; + Hypervisor?: InstanceTypeHypervisor | string; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Describes the processor.
*/ - MaxResults?: number; + ProcessorInfo?: ProcessorInfo; /** - *One or more filters.
- *
- * tag
: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.
Describes the vCPU configurations for the instance type.
*/ - Filters?: Filter[]; -} + VCpuInfo?: VCpuInfo; -export namespace DescribePublicIpv4PoolsRequest { /** - * @internal + *Describes the memory for the instance type.
*/ - export const filterSensitiveLog = (obj: DescribePublicIpv4PoolsRequest): any => ({ - ...obj, - }); -} + MemoryInfo?: MemoryInfo; -/** - *Describes an address range of an IPv4 address pool.
- */ -export interface PublicIpv4PoolRange { /** - *The first IP address in the range.
+ *Indicates whether instance storage is supported.
*/ - FirstAddress?: string; + InstanceStorageSupported?: boolean; /** - *The last IP address in the range.
+ *Describes the instance storage for the instance type.
*/ - LastAddress?: string; + InstanceStorageInfo?: InstanceStorageInfo; /** - *The number of addresses in the range.
+ *Describes the Amazon EBS settings for the instance type.
*/ - AddressCount?: number; + EbsInfo?: EbsInfo; /** - *The number of available addresses in the range.
+ *Describes the network settings for the instance type.
*/ - AvailableAddressCount?: number; -} + NetworkInfo?: NetworkInfo; -export namespace PublicIpv4PoolRange { /** - * @internal + *Describes the GPU accelerator settings for the instance type.
*/ - export const filterSensitiveLog = (obj: PublicIpv4PoolRange): any => ({ - ...obj, - }); -} + GpuInfo?: GpuInfo; -/** - *Describes an IPv4 address pool.
- */ -export interface PublicIpv4Pool { /** - *The ID of the address pool.
+ *Describes the FPGA accelerator settings for the instance type.
+ */ + FpgaInfo?: FpgaInfo; + + /** + *Describes the placement group settings for the instance type.
*/ - PoolId?: string; + PlacementGroupInfo?: PlacementGroupInfo; /** - *A description of the address pool.
+ *Describes the Inference accelerator settings for the instance type.
*/ - Description?: string; + InferenceAcceleratorInfo?: InferenceAcceleratorInfo; /** - *The address ranges.
+ *Indicates whether On-Demand hibernation is supported.
*/ - PoolAddressRanges?: PublicIpv4PoolRange[]; + HibernationSupported?: boolean; /** - *The total number of addresses.
+ *Indicates whether the instance type is a burstable performance instance type.
*/ - TotalAddressCount?: number; + BurstablePerformanceSupported?: boolean; /** - *The total number of available addresses.
+ *Indicates whether Dedicated Hosts are supported on the instance type.
*/ - TotalAvailableAddressCount?: number; + DedicatedHostsSupported?: boolean; /** - *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.
+ *Indicates whether auto recovery is supported.
*/ - NetworkBorderGroup?: string; + AutoRecoverySupported?: boolean; /** - *Any tags for the address pool.
+ *The supported boot modes. For more information, see Boot modes in the + * Amazon EC2 User Guide.
*/ - Tags?: Tag[]; + SupportedBootModes?: (BootModeType | string)[]; } -export namespace PublicIpv4Pool { +export namespace InstanceTypeInfo { /** * @internal */ - export const filterSensitiveLog = (obj: PublicIpv4Pool): any => ({ + export const filterSensitiveLog = (obj: InstanceTypeInfo): any => ({ ...obj, }); } -export interface DescribePublicIpv4PoolsResult { +export interface DescribeInstanceTypesResult { /** - *Information about the address pools.
+ *The instance type. For more information, see Instance types in the Amazon EC2 User Guide.
*/ - PublicIpv4Pools?: PublicIpv4Pool[]; + InstanceTypes?: InstanceTypeInfo[]; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The token to use to retrieve the next page of results. This value is null
when there
+ * are no more results to return.
The filters.
- *One or more filters.
+ *
- * endpoint
- The endpoint of the Region (for example, ec2.us-east-1.amazonaws.com
).
+ * attachment.state
- The current state of the attachment between the gateway
+ * and the VPC (available
). Present only if a VPC is attached.
- * opt-in-status
- The opt-in status of the Region (opt-in-not-required
| opted-in
|
- * not-opted-in
).
+ * attachment.vpc-id
- The ID of an attached VPC.
- * region-name
- The name of the Region (for example, us-east-1
).
+ * 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
: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.
The names of the Regions. You can specify any Regions, whether they are enabled and disabled for your account.
- */ - RegionNames?: string[]; - /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -8619,86 +7943,68 @@ export interface DescribeRegionsRequest {
DryRun?: boolean;
/**
- *
Indicates whether to display all Regions, including Regions that are disabled for your account.
- */ - AllRegions?: boolean; -} - -export namespace DescribeRegionsRequest { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DescribeRegionsRequest): any => ({ - ...obj, - }); -} - -/** - *Describes a Region.
- */ -export interface Region { - /** - *The Region service endpoint.
+ *One or more internet gateway IDs.
+ *Default: Describes all your internet gateways.
*/ - Endpoint?: string; + InternetGatewayIds?: string[]; /** - *The name of the Region.
+ *The token for the next page of results.
*/ - RegionName?: string; + NextToken?: string; /** - *The Region opt-in status. The possible values are opt-in-not-required
, opted-in
, and
- * not-opted-in
.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Information about the Regions.
+ *Information about one or more internet gateways.
*/ - Regions?: Region[]; + InternetGateways?: InternetGateway[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the root volume replacement task to view.
+ *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
.
Filter to use:
- *
- * instance-id
- The ID of the instance for which the root volume replacement task was created.
One or more filters for the request. For more information about filtering, see Filtering CLI output.
*/ Filters?: Filter[]; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The maximum number of results to return in the request.
*/ MaxResults?: number; @@ -8708,1081 +8014,1025 @@ export interface DescribeReplaceRootVolumeTasksRequest { NextToken?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The IDs of the IPAM pools you would like information on.
*/ - DryRun?: boolean; + IpamPoolIds?: string[]; } -export namespace DescribeReplaceRootVolumeTasksRequest { +export namespace DescribeIpamPoolsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeReplaceRootVolumeTasksRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeIpamPoolsRequest): any => ({ ...obj, }); } -export interface DescribeReplaceRootVolumeTasksResult { +export interface DescribeIpamPoolsResult { /** - *Information about the root volume replacement task.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the IPAM pools.
*/ - NextToken?: string; + IpamPools?: IpamPool[]; } -export namespace DescribeReplaceRootVolumeTasksResult { +export namespace DescribeIpamPoolsResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeReplaceRootVolumeTasksResult): any => ({ + export const filterSensitiveLog = (obj: DescribeIpamPoolsResult): any => ({ ...obj, }); } -export enum OfferingClassType { - CONVERTIBLE = "convertible", - STANDARD = "standard", -} - -export type OfferingTypeValues = - | "All Upfront" - | "Heavy Utilization" - | "Light Utilization" - | "Medium Utilization" - | "No Upfront" - | "Partial Upfront"; - -/** - *Contains the parameters for DescribeReservedInstances.
- */ -export interface DescribeReservedInstancesRequest { +export interface DescribeIpamsRequest { /** - *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. Instances that include (Amazon VPC)
in the product platform
- * description will only be displayed to EC2-Classic account holders and are for use with
- * Amazon VPC (Linux/UNIX
| Linux/UNIX (Amazon VPC)
| SUSE
- * Linux
| SUSE Linux (Amazon VPC)
| Red Hat Enterprise
- * Linux
| Red Hat Enterprise Linux (Amazon VPC)
| Red Hat
- * Enterprise Linux with HA (Amazon VPC)
| Windows
| Windows
- * (Amazon VPC)
| Windows with SQL Server Standard
| Windows with
- * SQL Server Standard (Amazon VPC)
| Windows with SQL Server Web
|
- * Windows with SQL Server Web (Amazon VPC)
| Windows with SQL Server
- * Enterprise
| Windows with SQL Server Enterprise (Amazon
- * VPC)
).
- * 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:
- 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).
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
.
One or more filters for the request. For more information about filtering, see Filtering CLI output.
*/ Filters?: Filter[]; /** - *Describes whether the Reserved Instance is Standard or Convertible.
+ *The maximum number of results to return in the request.
*/ - OfferingClass?: OfferingClassType | string; + MaxResults?: number; /** - *One or more Reserved Instance IDs.
- *Default: Describes all your Reserved Instances, or only those otherwise specified.
+ *The token for the next page of results.
*/ - ReservedInstancesIds?: string[]; + NextToken?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The IDs of the IPAMs you want information on.
+ */ + IpamIds?: string[]; +} + +export namespace DescribeIpamsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeIpamsRequest): any => ({ + ...obj, + }); +} + +export interface DescribeIpamsResult { + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the IPAMs.
+ */ + Ipams?: Ipam[]; +} + +export namespace DescribeIpamsResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeIpamsResult): any => ({ + ...obj, + }); +} + +export interface DescribeIpamScopesRequest { + /** + *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
.
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.
One or more filters for the request. For more information about filtering, see Filtering CLI output.
*/ - OfferingType?: OfferingTypeValues | string; + Filters?: Filter[]; + + /** + *The maximum number of results to return in the request.
+ */ + MaxResults?: number; + + /** + *The token for the next page of results.
+ */ + NextToken?: string; + + /** + *The IDs of the scopes you want information on.
+ */ + IpamScopeIds?: string[]; } -export namespace DescribeReservedInstancesRequest { +export namespace DescribeIpamScopesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeReservedInstancesRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeIpamScopesRequest): any => ({ ...obj, }); } -export type RIProductDescription = "Linux/UNIX" | "Linux/UNIX (Amazon VPC)" | "Windows" | "Windows (Amazon VPC)"; +export interface DescribeIpamScopesResult { + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The scopes you want information on.
+ */ + IpamScopes?: IpamScope[]; +} -/** - *Describes a recurring charge.
- */ -export interface RecurringCharge { +export namespace DescribeIpamScopesResult { /** - *The amount of the recurring charge.
+ * @internal */ - Amount?: number; + export const filterSensitiveLog = (obj: DescribeIpamScopesResult): any => ({ + ...obj, + }); +} + +export interface DescribeIpv6PoolsRequest { + /** + *The IDs of the IPv6 address pools.
+ */ + PoolIds?: string[]; /** - *The frequency of the recurring charge.
+ *The token for the next page of results.
*/ - Frequency?: RecurringChargeFrequency | string; + NextToken?: string; + + /** + *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
One or more filters.
+ *
+ * tag
: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.
Describes a CIDR block for an address pool.
+ */ +export interface PoolCidrBlock { + /** + *The CIDR block.
+ */ + Cidr?: string; } -export type ReservedInstanceState = - | "active" - | "payment-failed" - | "payment-pending" - | "queued" - | "queued-deleted" - | "retired"; +export namespace PoolCidrBlock { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PoolCidrBlock): any => ({ + ...obj, + }); +} /** - *Describes a Reserved Instance.
+ *Describes an IPv6 address pool.
*/ -export interface ReservedInstances { +export interface Ipv6Pool { /** - *The Availability Zone in which the Reserved Instance can be used.
+ *The ID of the address pool.
*/ - AvailabilityZone?: string; + PoolId?: string; /** - *The duration of the Reserved Instance, in seconds.
+ *The description for the address pool.
*/ - Duration?: number; + Description?: string; /** - *The time when the Reserved Instance expires.
+ *The CIDR blocks for the address pool.
*/ - End?: Date; + PoolCidrBlocks?: PoolCidrBlock[]; /** - *The purchase price of the Reserved Instance.
+ *Any tags for the address pool.
*/ - FixedPrice?: number; + Tags?: Tag[]; +} +export namespace Ipv6Pool { /** - *The number of reservations purchased.
+ * @internal */ - InstanceCount?: number; + export const filterSensitiveLog = (obj: Ipv6Pool): any => ({ + ...obj, + }); +} +export interface DescribeIpv6PoolsResult { /** - *The instance type on which the Reserved Instance can be used.
+ *Information about the IPv6 address pools.
*/ - InstanceType?: _InstanceType | string; + Ipv6Pools?: Ipv6Pool[]; /** - *The Reserved Instance product platform description.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the Reserved Instance.
+ * @internal */ - ReservedInstancesId?: string; + export const filterSensitiveLog = (obj: DescribeIpv6PoolsResult): any => ({ + ...obj, + }); +} +export interface DescribeKeyPairsRequest { /** - *The date and time the Reserved Instance started.
+ *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
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
The state of the Reserved Instance purchase.
+ *The key pair names.
+ *Default: Describes all of your key pairs.
*/ - State?: ReservedInstanceState | string; + KeyNames?: string[]; /** - *The usage price of the Reserved Instance, per hour.
+ *The IDs of the key pairs.
*/ - UsagePrice?: number; + KeyPairIds?: string[]; /** - *The currency of the Reserved Instance. It's specified using ISO 4217 standard currency codes.
- * At this time, the only supported currency is USD
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The tenancy of the instance.
+ * @internal */ - InstanceTenancy?: Tenancy | string; + export const filterSensitiveLog = (obj: DescribeKeyPairsRequest): any => ({ + ...obj, + }); +} +/** + *Describes a key pair.
+ */ +export interface KeyPairInfo { /** - *The offering class of the Reserved Instance.
+ *The ID of the key pair.
*/ - OfferingClass?: OfferingClassType | string; + KeyPairId?: string; /** - *The Reserved Instance offering type.
+ *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.
+ *The recurring charge tag assigned to the resource.
+ *The name of the key pair.
*/ - RecurringCharges?: RecurringCharge[]; + KeyName?: string; /** - *The scope of the Reserved Instance.
+ *The type of key pair.
*/ - Scope?: Scope | string; + KeyType?: KeyType | string; /** - *Any tags assigned to the resource.
+ *Any tags applied to the key pair.
*/ Tags?: Tag[]; } -export namespace ReservedInstances { +export namespace KeyPairInfo { /** * @internal */ - export const filterSensitiveLog = (obj: ReservedInstances): any => ({ + export const filterSensitiveLog = (obj: KeyPairInfo): any => ({ ...obj, }); } -/** - *Contains the output for DescribeReservedInstances.
- */ -export interface DescribeReservedInstancesResult { +export interface DescribeKeyPairsResult { /** - *A list of Reserved Instances.
+ *Information about the key pairs.
*/ - ReservedInstances?: ReservedInstances[]; + KeyPairs?: KeyPairInfo[]; } -export namespace DescribeReservedInstancesResult { +export namespace DescribeKeyPairsResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeReservedInstancesResult): any => ({ + export const filterSensitiveLog = (obj: DescribeKeyPairsResult): any => ({ ...obj, }); } -/** - *Contains the parameters for DescribeReservedInstancesListings.
- */ -export interface DescribeReservedInstancesListingsRequest { +export interface DescribeLaunchTemplatesRequest { + /** + *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
One or more launch template IDs.
+ */ + LaunchTemplateIds?: string[]; + + /** + *One or more launch template names.
+ */ + LaunchTemplateNames?: string[]; + /** *One or more filters.
- *
- * reserved-instances-id
- The ID of the Reserved Instances.
+ * create-time
- The time the launch template was created.
- * reserved-instances-listing-id
- The ID of the Reserved Instances listing.
+ * launch-template-name
- The name of the launch template.
- * status
- The status of the Reserved Instance listing (pending
| active
|
- * cancelled
| closed
).
+ * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
- * status-message
- The reason for the status.
+ * 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.
One or more Reserved Instance IDs.
+ *The token to request the next page of results.
*/ - ReservedInstancesId?: string; + NextToken?: string; /** - *One or more Reserved Instance listing IDs.
+ *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.
Contains the output of DescribeReservedInstancesListings.
- */ -export interface DescribeReservedInstancesListingsResult { +export interface DescribeLaunchTemplatesResult { /** - *Information about the Reserved Instance listing.
+ *Information about the launch templates.
*/ - ReservedInstancesListings?: ReservedInstancesListing[]; + LaunchTemplates?: LaunchTemplate[]; + + /** + *The token to use to retrieve the next page of results. This value is
+ * null
when there are no more results to return.
Contains the parameters for DescribeReservedInstancesModifications.
- */ -export interface DescribeReservedInstancesModificationsRequest { +export interface DescribeLaunchTemplateVersionsRequest { + /** + *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The ID of the launch template. To describe one or more versions of a specified launch + * template, you must specify either the launch template ID or the launch template name in + * the request. To describe all the latest or default launch template versions in your + * account, you must omit this parameter.
+ */ + LaunchTemplateId?: string; + + /** + *The name of the launch template. To describe one or more versions of a specified + * launch template, you must specify either the launch template ID or the launch template + * name in the request. To describe all the latest or default launch template versions in + * your account, you must omit this parameter.
+ */ + LaunchTemplateName?: string; + + /** + *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 call. You cannot specify numbers.
The version number after which to describe launch template versions.
+ */ + MinVersion?: string; + + /** + *The version number up to which to describe launch template versions.
+ */ + MaxVersion?: string; + + /** + *The token to request the next page of results.
+ */ + NextToken?: string; + + /** + *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.
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.
create-time
- The time the launch template version was created.
*
- * modification-result.target-configuration.instance-type
- The instance type of the new Reserved Instances.
+ * ebs-optimized
- A boolean that indicates whether the instance
+ * is optimized for Amazon EBS I/O.
- * modification-result.target-configuration.platform
- The network platform of the new Reserved Instances (EC2-Classic
| EC2-VPC
).
+ * iam-instance-profile
- The ARN of the IAM instance
+ * profile.
- * reserved-instances-id
- The ID of the Reserved Instances modified.
+ * image-id
- The ID of the AMI.
- * reserved-instances-modification-id
- The ID of the modification request.
+ * instance-type
- The instance type.
- * status
- The status of the Reserved Instances modification request
- * (processing
| fulfilled
| failed
).
+ * is-default-version
- A boolean that indicates whether the
+ * launch template version is the default version.
- * status-message
- The reason for the status.
+ * kernel-id
- The kernel ID.
- * update-date
- The time when the modification request was last updated.
IDs for the submitted modification request.
- */ - ReservedInstancesModificationIds?: string[]; - - /** - *The token to retrieve the next page of results.
+ *
+ * ram-disk-id
- The RAM disk ID.
Describes the configuration settings for the modified Reserved Instances.
- */ -export interface ReservedInstancesConfiguration { - /** - *The Availability Zone for the modified Reserved Instances.
- */ - AvailabilityZone?: string; - - /** - *The number of modified Reserved Instances.
- *This is a required field for a request.
- *The instance type for the modified Reserved Instances.
- */ - InstanceType?: _InstanceType | string; - +export interface DescribeLaunchTemplateVersionsResult { /** - *The network platform of the modified Reserved Instances, which is either EC2-Classic or EC2-VPC.
+ *Information about the launch template versions.
*/ - Platform?: string; + LaunchTemplateVersions?: LaunchTemplateVersion[]; /** - *Whether the Reserved Instance is applied to instances in a Region or instances in a specific Availability Zone.
+ *The token to use to retrieve the next page of results. This value is
+ * null
when there are no more results to return.
Describes the modification request/s.
- */ -export interface ReservedInstancesModificationResult { +export interface DescribeLocalGatewayRouteTablesRequest { /** - *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.
+ *The IDs of the local gateway route tables.
*/ - ReservedInstancesId?: string; + LocalGatewayRouteTableIds?: string[]; /** - *The target Reserved Instances configurations supplied as part of the modification request.
+ *One or more filters.
+ *
+ * local-gateway-id
- The ID of a local gateway.
+ * local-gateway-route-table-id
- The ID of a local gateway route table.
+ * outpost-arn
- The Amazon Resource Name (ARN) of the Outpost.
+ * state
- The state of the local gateway route table.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Describes the ID of a Reserved Instance.
- */ -export interface ReservedInstancesId { /** - *The ID of the Reserved Instance.
+ *The token for the next page of results.
*/ - ReservedInstancesId?: string; + NextToken?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a Reserved Instance modification.
+ *Describes a local gateway route table.
*/ -export interface ReservedInstancesModification { - /** - *A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. - * For more information, see Ensuring - * Idempotency.
- */ - ClientToken?: string; - - /** - *The time when the modification request was created.
- */ - CreateDate?: Date; - +export interface LocalGatewayRouteTable { /** - *The time for the modification to become effective.
+ *The ID of the local gateway route table.
*/ - EffectiveDate?: Date; + LocalGatewayRouteTableId?: string; /** - *Contains target configurations along with their corresponding new Reserved Instance IDs.
+ *The Amazon Resource Name (ARN) of the local gateway route table.
*/ - ModificationResults?: ReservedInstancesModificationResult[]; + LocalGatewayRouteTableArn?: string; /** - *The IDs of one or more Reserved Instances.
+ *The ID of the local gateway.
*/ - ReservedInstancesIds?: ReservedInstancesId[]; + LocalGatewayId?: string; /** - *A unique ID for the Reserved Instance modification.
+ *The Amazon Resource Name (ARN) of the Outpost.
*/ - ReservedInstancesModificationId?: string; + OutpostArn?: string; /** - *The status of the Reserved Instances modification request.
+ *The ID of the Amazon Web Services account that owns the local gateway route table.
*/ - Status?: string; + OwnerId?: string; /** - *The reason for the status.
+ *The state of the local gateway route table.
*/ - StatusMessage?: string; + State?: string; /** - *The time when the modification request was last updated.
+ *The tags assigned to the local gateway route table.
*/ - UpdateDate?: Date; + Tags?: Tag[]; } -export namespace ReservedInstancesModification { +export namespace LocalGatewayRouteTable { /** * @internal */ - export const filterSensitiveLog = (obj: ReservedInstancesModification): any => ({ + export const filterSensitiveLog = (obj: LocalGatewayRouteTable): any => ({ ...obj, }); } -/** - *Contains the output of DescribeReservedInstancesModifications.
- */ -export interface DescribeReservedInstancesModificationsResult { +export interface DescribeLocalGatewayRouteTablesResult { /** - *The token to use to retrieve the next page of results. This value is null
when
- * there are no more results to return.
Information about the local gateway route tables.
*/ - NextToken?: string; + LocalGatewayRouteTables?: LocalGatewayRouteTable[]; /** - *The Reserved Instance modification information.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for DescribeReservedInstancesOfferings.
- */ -export interface DescribeReservedInstancesOfferingsRequest { +export interface DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest { /** - *The Availability Zone in which the Reserved Instance can be used.
+ *The IDs of the associations.
*/ - AvailabilityZone?: string; + LocalGatewayRouteTableVirtualInterfaceGroupAssociationIds?: string[]; /** *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.
local-gateway-id
- The ID of a local gateway.
*
- * product-description
- The Reserved Instance product platform description.
- * Instances that include (Amazon VPC)
in the product platform description will
- * only be displayed to EC2-Classic account holders and are for use with Amazon VPC.
- * (Linux/UNIX
| Linux/UNIX (Amazon VPC)
| SUSE
- * Linux
| SUSE Linux (Amazon VPC)
| Red Hat Enterprise
- * Linux
| Red Hat Enterprise Linux (Amazon VPC)
| Red Hat
- * Enterprise Linux with HA (Amazon VPC)
| Windows
| Windows
- * (Amazon VPC)
| Windows with SQL Server Standard
| Windows with
- * SQL Server Standard (Amazon VPC)
| Windows with SQL Server Web
|
- * Windows with SQL Server Web (Amazon VPC)
| Windows with SQL Server
- * Enterprise
| Windows with SQL Server Enterprise (Amazon VPC)
)
local-gateway-route-table-id
- The ID of the local gateway route table.
*
- * reserved-instances-offering-id
- The Reserved Instances offering
- * ID.
local-gateway-route-table-virtual-interface-group-association-id
- The ID of the association.
*
- * scope
- The scope of the Reserved Instance (Availability Zone
or
- * Region
).
local-gateway-route-table-virtual-interface-group-id
- The ID of the virtual interface group.
*
- * usage-price
- The usage price of the Reserved Instance, per hour (for
- * example, 0.84).
state
- The state of the association.
* Include Reserved Instance Marketplace offerings in the response.
- */ - IncludeMarketplace?: boolean; - - /** - *The instance type that the reservation will cover (for example, m1.small
). For more information, see
- * Instance types in the
- * Amazon EC2 User Guide.
The maximum duration (in seconds) to filter when searching for offerings.
- *Default: 94608000 (3 years)
- */ - MaxDuration?: number; - - /** - *The maximum number of instances to filter when searching for offerings.
- *Default: 20
- */ - MaxInstanceCount?: number; - - /** - *The minimum duration (in seconds) to filter when searching for offerings.
- *Default: 2592000 (1 month)
- */ - MinDuration?: number; - - /** - *The offering class of the Reserved Instance. Can be standard
or convertible
.
The Reserved Instance product platform description. Instances that include (Amazon
- * VPC)
in the description are for use with Amazon VPC.
One or more Reserved Instances offering IDs.
- */ - ReservedInstancesOfferingIds?: string[]; - - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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
- *
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
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token to retrieve the next page of results.
+ *The token for the next page of results.
*/ NextToken?: string; /** - *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.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a Reserved Instance offering.
+ *Describes an association between a local gateway route table and a virtual interface group.
*/ -export interface PricingDetail { - /** - *The number of reservations available for the price.
- */ - Count?: number; - +export interface LocalGatewayRouteTableVirtualInterfaceGroupAssociation { /** - *The price per instance.
+ *The ID of the association.
*/ - Price?: number; -} + LocalGatewayRouteTableVirtualInterfaceGroupAssociationId?: string; -export namespace PricingDetail { /** - * @internal + *The ID of the virtual interface group.
*/ - export const filterSensitiveLog = (obj: PricingDetail): any => ({ - ...obj, - }); -} + LocalGatewayVirtualInterfaceGroupId?: string; -/** - *Describes a Reserved Instance offering.
- */ -export interface ReservedInstancesOffering { /** - *The Availability Zone in which the Reserved Instance can be used.
+ *The ID of the local gateway.
*/ - AvailabilityZone?: string; + LocalGatewayId?: string; /** - *The duration of the Reserved Instance, in seconds.
+ *The ID of the local gateway route table.
*/ - Duration?: number; + LocalGatewayRouteTableId?: string; /** - *The purchase price of the Reserved Instance.
+ *The Amazon Resource Name (ARN) of the local gateway route table for the virtual interface group.
*/ - FixedPrice?: number; + LocalGatewayRouteTableArn?: string; /** - *The instance type on which the Reserved Instance can be used.
+ *The ID of the Amazon Web Services account that owns the local gateway virtual interface group association.
*/ - InstanceType?: _InstanceType | string; + OwnerId?: string; /** - *The Reserved Instance product platform description.
+ *The state of the association.
*/ - ProductDescription?: RIProductDescription | string; + State?: string; /** - *The ID of the Reserved Instance offering. This is the offering ID used in GetReservedInstancesExchangeQuote - * to confirm that an exchange can be made.
+ *The tags assigned to the association.
*/ - ReservedInstancesOfferingId?: string; + Tags?: Tag[]; +} +export namespace LocalGatewayRouteTableVirtualInterfaceGroupAssociation { /** - *The usage price of the Reserved Instance, per hour.
+ * @internal */ - UsagePrice?: number; + export const filterSensitiveLog = (obj: LocalGatewayRouteTableVirtualInterfaceGroupAssociation): any => ({ + ...obj, + }); +} +export interface DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult { /** - *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
.
Information about the associations.
*/ - CurrencyCode?: CurrencyCodeValues | string; + LocalGatewayRouteTableVirtualInterfaceGroupAssociations?: LocalGatewayRouteTableVirtualInterfaceGroupAssociation[]; /** - *The tenancy of the instance.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
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
.
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.
The IDs of the associations.
*/ - OfferingClass?: OfferingClassType | string; + LocalGatewayRouteTableVpcAssociationIds?: string[]; /** - *The Reserved Instance offering type.
+ *One or more filters.
+ *
+ * local-gateway-id
- The ID of a local gateway.
+ * 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.
+ * state
- The state of the association.
+ * vpc-id
- The ID of the VPC.
The pricing details of the Reserved Instance offering.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The recurring charge tag assigned to the resource.
+ *The token for the next page of results.
*/ - RecurringCharges?: RecurringCharge[]; + NextToken?: string; /** - *Whether the Reserved Instance is applied to instances in a Region or an Availability Zone.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains the output of DescribeReservedInstancesOfferings.
- */ -export interface DescribeReservedInstancesOfferingsResult { +export interface DescribeLocalGatewayRouteTableVpcAssociationsResult { /** - *A list of Reserved Instances offerings.
+ *Information about the associations.
*/ - ReservedInstancesOfferings?: ReservedInstancesOffering[]; + LocalGatewayRouteTableVpcAssociations?: LocalGatewayRouteTableVpcAssociation[]; /** - *The token to use to retrieve the next page of results. This value is null
when
- * there are no more results to return.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
One or more 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.
+ * local-gateway-id
- The ID of a local gateway.
- * 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).
+ * local-gateway-route-table-id
- The ID of the local gateway route table.
- * route.vpc-peering-connection-id
- The ID of a VPC peering
- * connection specified in a route in the table.
+ * local-gateway-route-table-virtual-interface-group-association-id
- The ID of the association.
- * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
+ * local-gateway-route-table-virtual-interface-group-id
- The ID of the virtual interface group.
- * 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.
+ * outpost-arn
- The Amazon Resource Name (ARN) of the Outpost.
- * vpc-id
- The ID of the VPC for the route table.
+ * state
- The state of the association.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more filters.
*/ - DryRun?: boolean; + Filters?: Filter[]; /** - *One or more route table IDs.
- *Default: Describes all your route tables.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
@@ -9790,361 +9040,315 @@ export interface DescribeRouteTablesRequest { NextToken?: string; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains the output of DescribeRouteTables.
+ *Describes a local gateway.
*/ -export interface DescribeRouteTablesResult { +export interface LocalGateway { /** - *Information about one or more route tables.
+ *The ID of the local gateway.
*/ - RouteTables?: RouteTable[]; + LocalGatewayId?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The Amazon Resource Name (ARN) of the Outpost.
*/ - NextToken?: string; -} + OutpostArn?: string; -export namespace DescribeRouteTablesResult { /** - * @internal + *The ID of the Amazon Web Services account that owns the local gateway.
*/ - export const filterSensitiveLog = (obj: DescribeRouteTablesResult): any => ({ - ...obj, - }); -} + OwnerId?: string; -/** - *Describes the time period for a Scheduled Instance to start its first schedule. The time period must span less than one day.
- */ -export interface SlotDateTimeRangeRequest { /** - *The earliest date and time, in UTC, for the Scheduled Instance to start.
+ *The state of the local gateway.
*/ - EarliestTime: Date | undefined; + State?: string; /** - *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.
+ *The tags assigned to the local gateway.
*/ - LatestTime: Date | undefined; + Tags?: Tag[]; } -export namespace SlotDateTimeRangeRequest { +export namespace LocalGateway { /** * @internal */ - export const filterSensitiveLog = (obj: SlotDateTimeRangeRequest): any => ({ + export const filterSensitiveLog = (obj: LocalGateway): any => ({ ...obj, }); } -/** - *Describes the recurring schedule for a Scheduled Instance.
- */ -export interface ScheduledInstanceRecurrenceRequest { - /** - *The frequency (Daily
, Weekly
, or Monthly
).
The interval quantity. The interval unit depends on the value of Frequency
. For example, every 2
- * weeks or every 2 months.
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.
- */ - OccurrenceDays?: number[]; - +export interface DescribeLocalGatewaysResult { /** - *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.
+ *Information about the local gateways.
*/ - OccurrenceRelativeToEnd?: boolean; + LocalGateways?: LocalGateway[]; /** - *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.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for DescribeScheduledInstanceAvailability.
- */ -export interface DescribeScheduledInstanceAvailabilityRequest { +export interface DescribeLocalGatewayVirtualInterfaceGroupsRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The IDs of the virtual interface groups.
*/ - DryRun?: boolean; + LocalGatewayVirtualInterfaceGroupIds?: string[]; /** - *The filters.
+ *One or more filters.
*
- * availability-zone
- The Availability Zone (for example, us-west-2a
).
- * instance-type
- The instance type (for example, c4.large
).
local-gateway-id
- The ID of a local gateway.
*
- * network-platform
- The network platform (EC2-Classic
or EC2-VPC
).
local-gateway-virtual-interface-id
- The ID of the virtual interface.
*
- * platform
- The platform (Linux/UNIX
or Windows
).
local-gateway-virtual-interface-group-id
- The ID of the virtual interface group.
* The time period for the first schedule to start.
- */ - FirstSlotStartTimeRange: SlotDateTimeRangeRequest | undefined; - - /** - *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.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The maximum available duration, in hours. This value must be greater than MinSlotDurationInHours
- * and less than 1,720.
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.
- */ - MinSlotDurationInHours?: number; - - /** - *The token for the next set of results.
+ *The token for the next page of results.
*/ NextToken?: string; /** - *The schedule recurrence.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes the recurring schedule for a Scheduled Instance.
+ *Describes a local gateway virtual interface group.
*/ -export interface ScheduledInstanceRecurrence { +export interface LocalGatewayVirtualInterfaceGroup { /** - *The frequency (Daily
, Weekly
, or Monthly
).
The ID of the virtual interface group.
*/ - Frequency?: string; + LocalGatewayVirtualInterfaceGroupId?: string; /** - *The interval quantity. The interval unit depends on the value of frequency
. For example, every 2
- * weeks or every 2 months.
The IDs of the virtual interfaces.
*/ - Interval?: number; + LocalGatewayVirtualInterfaceIds?: string[]; /** - *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).
+ *The ID of the local gateway.
*/ - OccurrenceDaySet?: number[]; + LocalGatewayId?: string; /** - *Indicates whether the occurrence is relative to the end of the specified week or month.
+ *The ID of the Amazon Web Services account that owns the local gateway virtual interface group.
*/ - OccurrenceRelativeToEnd?: boolean; + OwnerId?: string; /** - *The unit for occurrenceDaySet
(DayOfWeek
or DayOfMonth
).
The tags assigned to the virtual interface group.
*/ - OccurrenceUnit?: string; + Tags?: Tag[]; } -export namespace ScheduledInstanceRecurrence { +export namespace LocalGatewayVirtualInterfaceGroup { /** * @internal */ - export const filterSensitiveLog = (obj: ScheduledInstanceRecurrence): any => ({ + export const filterSensitiveLog = (obj: LocalGatewayVirtualInterfaceGroup): any => ({ ...obj, }); } -/** - *Describes a schedule that is available for your Scheduled Instances.
- */ -export interface ScheduledInstanceAvailability { +export interface DescribeLocalGatewayVirtualInterfaceGroupsResult { /** - *The Availability Zone.
+ *The virtual interface groups.
*/ - AvailabilityZone?: string; + LocalGatewayVirtualInterfaceGroups?: LocalGatewayVirtualInterfaceGroup[]; /** - *The number of available instances.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The time period for the first schedule to start.
+ * @internal */ - FirstSlotStartTime?: Date; + export const filterSensitiveLog = (obj: DescribeLocalGatewayVirtualInterfaceGroupsResult): any => ({ + ...obj, + }); +} +export interface DescribeLocalGatewayVirtualInterfacesRequest { /** - *The hourly price for a single instance.
+ *The IDs of the virtual interfaces.
*/ - HourlyPrice?: string; + LocalGatewayVirtualInterfaceIds?: string[]; /** - *The instance type. You can specify one of the C3, C4, M4, or R3 instance types.
+ *One or more filters.
*/ - InstanceType?: string; + Filters?: Filter[]; + + /** + *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ */ + NextToken?: string; /** - *The maximum term. The only possible value is 365 days.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The minimum term. The only possible value is 365 days.
+ * @internal */ - MinTermDurationInDays?: number; + export const filterSensitiveLog = (obj: DescribeLocalGatewayVirtualInterfacesRequest): any => ({ + ...obj, + }); +} +/** + *Describes a local gateway virtual interface.
+ */ +export interface LocalGatewayVirtualInterface { /** - *The network platform (EC2-Classic
or EC2-VPC
).
The ID of the virtual interface.
*/ - NetworkPlatform?: string; + LocalGatewayVirtualInterfaceId?: string; /** - *The platform (Linux/UNIX
or Windows
).
The ID of the local gateway.
*/ - Platform?: string; + LocalGatewayId?: string; /** - *The purchase token. This token expires in two hours.
+ *The ID of the VLAN.
*/ - PurchaseToken?: string; + Vlan?: number; /** - *The schedule recurrence.
+ *The local address.
*/ - Recurrence?: ScheduledInstanceRecurrence; + LocalAddress?: string; /** - *The number of hours in the schedule.
+ *The peer address.
*/ - SlotDurationInHours?: number; + PeerAddress?: string; /** - *The total number of hours for a single instance for the entire term.
+ *The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the local gateway.
*/ - TotalScheduledInstanceHours?: number; -} + LocalBgpAsn?: number; -export namespace ScheduledInstanceAvailability { /** - * @internal + *The peer BGP ASN.
*/ - export const filterSensitiveLog = (obj: ScheduledInstanceAvailability): any => ({ - ...obj, - }); -} + PeerBgpAsn?: number; -/** - *Contains the output of DescribeScheduledInstanceAvailability.
- */ -export interface DescribeScheduledInstanceAvailabilityResult { /** - *The token required to retrieve the next set of results. This value is null
when there are no more results to return.
The ID of the Amazon Web Services account that owns the local gateway virtual interface.
*/ - NextToken?: string; + OwnerId?: string; /** - *Information about the available Scheduled Instances.
+ *The tags assigned to the virtual interface.
*/ - ScheduledInstanceAvailabilitySet?: ScheduledInstanceAvailability[]; + Tags?: Tag[]; } -export namespace DescribeScheduledInstanceAvailabilityResult { +export namespace LocalGatewayVirtualInterface { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeScheduledInstanceAvailabilityResult): any => ({ + export const filterSensitiveLog = (obj: LocalGatewayVirtualInterface): any => ({ ...obj, }); } -/** - *Describes the time period for a Scheduled Instance to start its first schedule.
- */ -export interface SlotStartTimeRangeRequest { +export interface DescribeLocalGatewayVirtualInterfacesResult { /** - *The earliest date and time, in UTC, for the Scheduled Instance to start.
+ *Information about the virtual interfaces.
*/ - EarliestTime?: Date; + LocalGatewayVirtualInterfaces?: LocalGatewayVirtualInterface[]; /** - *The latest date and time, in UTC, for the Scheduled Instance to start.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for DescribeScheduledInstances.
- */ -export interface DescribeScheduledInstancesRequest { +export interface DescribeManagedPrefixListsRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -10153,550 +9357,528 @@ export interface DescribeScheduledInstancesRequest {
DryRun?: boolean;
/**
- *
The filters.
- *
- * availability-zone
- The Availability Zone (for example, us-west-2a
).
One or more filters.
+ *
- * instance-type
- The instance type (for example, c4.large
).
owner-id
- The ID of the prefix list owner.
*
- * network-platform
- The network platform (EC2-Classic
or EC2-VPC
).
prefix-list-id
- The ID of the prefix list.
*
- * platform
- The platform (Linux/UNIX
or Windows
).
prefix-list-name
- The name of the prefix list.
* 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.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next set of results.
+ *The token for the next page of results.
*/ NextToken?: string; /** - *The Scheduled Instance IDs.
- */ - ScheduledInstanceIds?: string[]; - - /** - *The time period for the first schedule to start.
+ *One or more prefix list IDs.
*/ - SlotStartTimeRange?: SlotStartTimeRangeRequest; + PrefixListIds?: string[]; } -export namespace DescribeScheduledInstancesRequest { +export namespace DescribeManagedPrefixListsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeScheduledInstancesRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeManagedPrefixListsRequest): any => ({ ...obj, }); } -/** - *Describes a Scheduled Instance.
- */ -export interface ScheduledInstance { - /** - *The Availability Zone.
- */ - AvailabilityZone?: string; - - /** - *The date when the Scheduled Instance was purchased.
- */ - CreateDate?: Date; - - /** - *The hourly price for a single instance.
- */ - HourlyPrice?: string; - - /** - *The number of instances.
- */ - InstanceCount?: number; - - /** - *The instance type.
- */ - InstanceType?: string; - - /** - *The network platform (EC2-Classic
or EC2-VPC
).
The time for the next schedule to start.
- */ - NextSlotStartTime?: Date; - - /** - *The platform (Linux/UNIX
or Windows
).
The time that the previous schedule ended or will end.
- */ - PreviousSlotEndTime?: Date; - - /** - *The schedule recurrence.
- */ - Recurrence?: ScheduledInstanceRecurrence; - - /** - *The Scheduled Instance ID.
- */ - ScheduledInstanceId?: string; - - /** - *The number of hours in the schedule.
- */ - SlotDurationInHours?: number; - - /** - *The end date for the Scheduled Instance.
- */ - TermEndDate?: Date; - +export interface DescribeManagedPrefixListsResult { /** - *The start date for the Scheduled Instance.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The total number of hours for a single instance for the entire term.
+ *Information about the prefix lists.
*/ - TotalScheduledInstanceHours?: number; + PrefixLists?: ManagedPrefixList[]; } -export namespace ScheduledInstance { +export namespace DescribeManagedPrefixListsResult { /** * @internal */ - export const filterSensitiveLog = (obj: ScheduledInstance): any => ({ + export const filterSensitiveLog = (obj: DescribeManagedPrefixListsResult): any => ({ ...obj, }); } -/** - *Contains the output of DescribeScheduledInstances.
- */ -export interface DescribeScheduledInstancesResult { +export interface DescribeMovingAddressesRequest { /** - *The token required to retrieve the next set of results. This value is null
when there are no more results to return.
One or more filters.
+ *
+ * moving-status
- The status of the Elastic IP address
+ * (MovingToVpc
| RestoringToClassic
).
Information about the Scheduled Instances.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
*/ - export const filterSensitiveLog = (obj: DescribeScheduledInstancesResult): any => ({ - ...obj, - }); -} + MaxResults?: number; -export interface DescribeSecurityGroupReferencesRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The token for the next page of results.
*/ - DryRun?: boolean; + NextToken?: string; /** - *The IDs of the security groups in your account.
+ *One or more Elastic IP addresses.
*/ - GroupId: string[] | undefined; + PublicIps?: string[]; } -export namespace DescribeSecurityGroupReferencesRequest { +export namespace DescribeMovingAddressesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeSecurityGroupReferencesRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeMovingAddressesRequest): any => ({ ...obj, }); } +export type MoveStatus = "movingToVpc" | "restoringToClassic"; + /** - *Describes a VPC with a security group that references your security group.
+ *Describes the status of a moving Elastic IP address.
*/ -export interface SecurityGroupReference { - /** - *The ID of your security group.
- */ - GroupId?: string; - +export interface MovingAddressStatus { /** - *The ID of the VPC with the referencing security group.
+ *The status of the Elastic IP address that's being moved to the EC2-VPC platform, or restored to the EC2-Classic platform.
*/ - ReferencingVpcId?: string; + MoveStatus?: MoveStatus | string; /** - *The ID of the VPC peering connection.
+ *The Elastic IP address.
*/ - VpcPeeringConnectionId?: string; + PublicIp?: string; } -export namespace SecurityGroupReference { +export namespace MovingAddressStatus { /** * @internal */ - export const filterSensitiveLog = (obj: SecurityGroupReference): any => ({ + export const filterSensitiveLog = (obj: MovingAddressStatus): any => ({ ...obj, }); } -export interface DescribeSecurityGroupReferencesResult { +export interface DescribeMovingAddressesResult { + /** + *The status for each Elastic IP address.
+ */ + MovingAddressStatuses?: MovingAddressStatus[]; + /** - *Information about the VPCs with the referencing security groups.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
One or more filters.
- *
- * group-id
- The ID of the security group.
+ * nat-gateway-id
- The ID of the NAT gateway.
- * security-group-rule-id
- The ID of the security group rule.
+ * 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
: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.
The IDs of the security group rules.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more NAT gateway IDs.
*/ - DryRun?: boolean; + NatGatewayIds?: string[]; /** *The token for the next page of results.
*/ NextToken?: string; - - /** - *The maximum number of results to return in a single call. To retrieve the remaining
- * results, make another request with the returned NextToken
value. This value
- * can be between 5 and 1000. If this parameter is not specified, then all results are
- * returned.
Information about security group rules.
+ *Information about the NAT gateways.
*/ - SecurityGroupRules?: SecurityGroupRule[]; + NatGateways?: NatGateway[]; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
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.
One or more filters.
+ *
- * egress.ip-permission.protocol
- The IP protocol for an
- * outbound security group rule (tcp
| udp
|
- * icmp
, a protocol number, or -1 for all protocols).
+ * association.association-id
- The ID of an association ID for the ACL.
- * egress.ip-permission.to-port
- For an outbound rule, the end
- * of port range for the TCP and UDP protocols, or an ICMP code.
+ * association.network-acl-id
- The ID of the network ACL involved in the association.
- * egress.ip-permission.user-id
- The ID of an Amazon Web Services account that
- * has been referenced in an outbound security group rule.
+ * association.subnet-id
- The ID of the subnet involved in the association.
- * group-id
- The ID of the security group.
+ * default
- Indicates whether the ACL is the default network ACL for the VPC.
- * group-name
- The name of the security group.
+ * entry.cidr
- The IPv4 CIDR range specified in the entry.
- * ip-permission.cidr
- An IPv4 CIDR block for an inbound security
- * group rule.
+ * entry.icmp.code
- The ICMP code specified in the entry, if any.
- * ip-permission.from-port
- For an inbound rule, the start of port
- * range for the TCP and UDP protocols, or an ICMP type number.
+ * entry.icmp.type
- The ICMP type specified in the entry, if any.
- * ip-permission.group-id
- The ID of a security group that has been
- * referenced in an inbound security group rule.
+ * entry.ipv6-cidr
- The IPv6 CIDR range specified in the entry.
- * ip-permission.group-name
- The name of a security group that is
- * referenced in an inbound security group rule.
+ * entry.port-range.from
- The start of the port range specified in the entry.
- * ip-permission.ipv6-cidr
- An IPv6 CIDR block for an inbound security
- * group rule.
+ * entry.port-range.to
- The end of the port range specified in the entry.
- * ip-permission.prefix-list-id
- The ID of a prefix list from which a security group rule allows inbound access.
+ * entry.protocol
- The protocol specified in the entry (tcp
| udp
| icmp
or a protocol number).
- * ip-permission.protocol
- The IP protocol for an inbound security
- * group rule (tcp
| udp
| icmp
, a
- * protocol number, or -1 for all protocols).
+ * entry.rule-action
- Allows or denies the matching traffic (allow
| deny
).
- * ip-permission.to-port
- For an inbound rule, the end of port range
- * for the TCP and UDP protocols, or an ICMP code.
+ * entry.rule-number
- The number of an entry (in other words, rule) in
+ * the set of ACL entries.
- * ip-permission.user-id
- The ID of an Amazon Web Services account that has been
- * referenced in an inbound security group rule.
+ * network-acl-id
- The ID of the network ACL.
- * owner-id
- The Amazon Web Services account ID of the owner of the security group.
+ * owner-id
- The ID of the Amazon Web Services account that owns the network ACL.
+ *
* tag
: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.
+ * vpc-id
- The ID of the VPC for the network ACL.
The IDs of the security groups. Required for security groups in a nondefault VPC.
- *Default: Describes all of your security groups.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
[EC2-Classic and default VPC only] The names of the security groups. You can specify either
- * the security group name or the security group ID. For security groups in a nondefault VPC, use
- * the group-name
filter to describe security groups by name.
Default: Describes all of your security groups.
+ *One or more network ACL IDs.
+ *Default: Describes all your network ACLs.
*/ - GroupNames?: string[]; + NetworkAclIds?: string[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The token for the next page of results.
*/ - DryRun?: boolean; + NextToken?: string; /** - *The token to request the next page of results.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Information about one or more network ACLs.
+ */ + NetworkAcls?: NetworkAcl[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The IDs of the Network Access Scope analyses.
+ */ + NetworkInsightsAccessScopeAnalysisIds?: string[]; + + /** + *The ID of the Network Access Scope.
+ */ + NetworkInsightsAccessScopeId?: string; + + /** + *Filters the results based on the start time. The analysis must have started on or after this time.
+ */ + AnalysisStartTimeBegin?: Date; + + /** + *Filters the results based on the start time. The analysis must have started on or before this time.
+ */ + AnalysisStartTimeEnd?: Date; + + /** + *There are no supported filters.
+ */ + Filters?: Filter[]; + + /** + *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The maximum number of results to return in a single call. To retrieve the remaining
- * results, make another request with the returned NextToken
value. This value
- * can be between 5 and 1000. If this parameter is not specified, then all results are
- * returned.
The token for the next page of results.
*/ - MaxResults?: number; + NextToken?: string; } -export namespace DescribeSecurityGroupsRequest { +export namespace DescribeNetworkInsightsAccessScopeAnalysesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeSecurityGroupsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeNetworkInsightsAccessScopeAnalysesRequest): any => ({ ...obj, }); } +export enum FindingsFound { + false = "false", + true = "true", + unknown = "unknown", +} + +export type AnalysisStatus = "failed" | "running" | "succeeded"; + /** - *Describes a security group.
+ *Describes a Network Access Scope analysis.
*/ -export interface SecurityGroup { +export interface NetworkInsightsAccessScopeAnalysis { /** - *A description of the security group.
+ *The ID of the Network Access Scope analysis.
*/ - Description?: string; + NetworkInsightsAccessScopeAnalysisId?: string; /** - *The name of the security group.
+ *The Amazon Resource Name (ARN) of the Network Access Scope analysis.
*/ - GroupName?: string; + NetworkInsightsAccessScopeAnalysisArn?: string; /** - *The inbound rules associated with the security group.
+ *The ID of the Network Access Scope.
*/ - IpPermissions?: IpPermission[]; + NetworkInsightsAccessScopeId?: string; /** - *The Amazon Web Services account ID of the owner of the security group.
+ *The status.
*/ - OwnerId?: string; + Status?: AnalysisStatus | string; /** - *The ID of the security group.
+ *The status message.
*/ - GroupId?: string; + StatusMessage?: string; /** - *[VPC only] The outbound rules associated with the security group.
+ *The warning message.
*/ - IpPermissionsEgress?: IpPermission[]; + WarningMessage?: string; /** - *Any tags assigned to the security group.
+ *The analysis start date.
*/ - Tags?: Tag[]; + StartDate?: Date; /** - *[VPC only] The ID of the VPC for the security group.
+ *The analysis end date.
*/ - VpcId?: string; + EndDate?: Date; + + /** + *Indicates whether there are findings.
+ */ + FindingsFound?: FindingsFound | string; + + /** + *The number of network interfaces analyzed.
+ */ + AnalyzedEniCount?: number; + + /** + *The tags.
+ */ + Tags?: Tag[]; } -export namespace SecurityGroup { +export namespace NetworkInsightsAccessScopeAnalysis { /** * @internal */ - export const filterSensitiveLog = (obj: SecurityGroup): any => ({ + export const filterSensitiveLog = (obj: NetworkInsightsAccessScopeAnalysis): any => ({ ...obj, }); } -export interface DescribeSecurityGroupsResult { +export interface DescribeNetworkInsightsAccessScopeAnalysesResult { /** - *Information about the security groups.
+ *The Network Access Scope analyses.
*/ - SecurityGroups?: SecurityGroup[]; + NetworkInsightsAccessScopeAnalyses?: NetworkInsightsAccessScopeAnalysis[]; /** *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The IDs of the Network Access Scopes.
+ */ + NetworkInsightsAccessScopeIds?: string[]; -export interface DescribeSnapshotAttributeRequest { /** - *The snapshot attribute you would like to view.
+ *There are no supported filters.
*/ - Attribute: SnapshotAttributeName | string | undefined; + Filters?: Filter[]; /** - *The ID of the EBS snapshot.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request,
@@ -10732,1804 +9918,1619 @@ export interface DescribeSnapshotAttributeRequest {
* Otherwise, it is UnauthorizedOperation
.
The token for the next page of results.
+ */ + NextToken?: string; } -export namespace DescribeSnapshotAttributeRequest { +export namespace DescribeNetworkInsightsAccessScopesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeSnapshotAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeNetworkInsightsAccessScopesRequest): any => ({ ...obj, }); } -/** - *Describes the user or group to be added or removed from the list of create volume - * permissions for a volume.
- */ -export interface CreateVolumePermission { +export interface DescribeNetworkInsightsAccessScopesResult { /** - *The group to be added or removed. The possible value is all
.
The Network Access Scopes.
*/ - Group?: PermissionGroup | string; + NetworkInsightsAccessScopes?: NetworkInsightsAccessScope[]; /** - *The ID of the Amazon Web Services account to be added or removed.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The users and groups that have the permissions for creating volumes from the - * snapshot.
+ *The ID of the network insights analyses. You must specify either analysis IDs or a path ID.
*/ - CreateVolumePermissions?: CreateVolumePermission[]; + NetworkInsightsAnalysisIds?: string[]; /** - *The product codes.
+ *The ID of the path. You must specify either a path ID or analysis IDs.
*/ - ProductCodes?: ProductCode[]; + NetworkInsightsPathId?: string; /** - *The ID of the EBS snapshot.
+ *The time when the network insights analyses started.
*/ - SnapshotId?: string; -} + AnalysisStartTime?: Date; -export namespace DescribeSnapshotAttributeResult { /** - * @internal + *The time when the network insights analyses ended.
*/ - export const filterSensitiveLog = (obj: DescribeSnapshotAttributeResult): any => ({ - ...obj, - }); -} + AnalysisEndTime?: Date; -export interface DescribeSnapshotsRequest { /** - *The filters.
+ *The filters. The following are possible values:
*
- * 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
: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.
PathFound - A Boolean value that indicates whether a feasible path is found.
*
- * volume-size
- The size of the volume, in GiB.
Status - The status of the analysis (running | succeeded | failed).
*The maximum number of snapshot results returned by DescribeSnapshots
in
- * paginated output. When this parameter is used, DescribeSnapshots
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
- * DescribeSnapshots
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. If this parameter is not used, then
- * DescribeSnapshots
returns all results. You cannot specify this parameter and
- * the snapshot IDs parameter in the same request.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The NextToken
value returned from a previous paginated
- * DescribeSnapshots
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.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Scopes the results to snapshots with the specified owners. You can specify a combination of
- * Amazon Web Services account IDs, self
, and amazon
.
The token for the next page of results.
*/ - OwnerIds?: string[]; + NextToken?: string; +} +export namespace DescribeNetworkInsightsAnalysesRequest { /** - *The IDs of the Amazon Web Services accounts that can create volumes from the snapshot.
+ * @internal */ - RestorableByUserIds?: string[]; + export const filterSensitiveLog = (obj: DescribeNetworkInsightsAnalysesRequest): any => ({ + ...obj, + }); +} +/** + *Describes a load balancer listener.
+ */ +export interface AnalysisLoadBalancerListener { /** - *The snapshot IDs.
- *Default: Describes the snapshots for which you have create volume permissions.
+ *The port on which the load balancer is listening.
*/ - SnapshotIds?: string[]; + LoadBalancerPort?: number; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
[Classic Load Balancers] The back-end port for the listener.
*/ - DryRun?: boolean; + InstancePort?: number; } -export namespace DescribeSnapshotsRequest { +export namespace AnalysisLoadBalancerListener { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeSnapshotsRequest): any => ({ + export const filterSensitiveLog = (obj: AnalysisLoadBalancerListener): any => ({ ...obj, }); } -export interface DescribeSnapshotsResult { +/** + *Describes a load balancer target.
+ */ +export interface AnalysisLoadBalancerTarget { /** - *Information about the snapshots.
+ *The IP address.
*/ - Snapshots?: Snapshot[]; + Address?: string; /** - *The NextToken
value to include in a future DescribeSnapshots
- * request. When the results of a DescribeSnapshots
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.
The Availability Zone.
*/ - NextToken?: string; + AvailabilityZone?: string; + + /** + *Information about the instance.
+ */ + Instance?: AnalysisComponent; + + /** + *The port on which the target is listening.
+ */ + Port?: number; } -export namespace DescribeSnapshotsResult { +export namespace AnalysisLoadBalancerTarget { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeSnapshotsResult): any => ({ + export const filterSensitiveLog = (obj: AnalysisLoadBalancerTarget): any => ({ ...obj, }); } -export interface DescribeSnapshotTierStatusRequest { +/** + *Describes an explanation code for an unreachable path. For more information, see Reachability Analyzer explanation codes.
+ */ +export interface Explanation { + /** + *The network ACL.
+ */ + Acl?: AnalysisComponent; + /** - *The filters.
+ *The network ACL rule.
+ */ + AclRule?: AnalysisAclRule; + + /** + *The IPv4 address, in CIDR notation.
+ */ + Address?: string; + + /** + *The IPv4 addresses, in CIDR notation.
+ */ + Addresses?: string[]; + + /** + *The resource to which the component is attached.
+ */ + AttachedTo?: AnalysisComponent; + + /** + *The Availability Zones.
+ */ + AvailabilityZones?: string[]; + + /** + *The CIDR ranges.
+ */ + Cidrs?: string[]; + + /** + *The component.
+ */ + Component?: AnalysisComponent; + + /** + *The customer gateway.
+ */ + CustomerGateway?: AnalysisComponent; + + /** + *The destination.
+ */ + Destination?: AnalysisComponent; + + /** + *The destination VPC.
+ */ + DestinationVpc?: AnalysisComponent; + + /** + *The direction. The following are possible values:
*
- * snapshot-id
- The snapshot ID.
- * volume-id
- The ID of the volume the snapshot is for.
egress
*
- * last-tiering-operation
- The state of the last archive or restore action. (archiving
| archival_error
|
- * archival_complete
| restoring
| restore_error
| restore_complete
)
ingress
*Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The explanation code.
*/ - DryRun?: boolean; + ExplanationCode?: string; /** - *The token for the next page of results.
+ *The route table.
*/ - NextToken?: string; + IngressRouteTable?: AnalysisComponent; + + /** + *The internet gateway.
+ */ + InternetGateway?: AnalysisComponent; + + /** + *The Amazon Resource Name (ARN) of the load balancer.
+ */ + LoadBalancerArn?: string; + + /** + *The listener for a Classic Load Balancer.
+ */ + ClassicLoadBalancerListener?: AnalysisLoadBalancerListener; + + /** + *The listener port of the load balancer.
+ */ + LoadBalancerListenerPort?: number; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The target.
*/ - MaxResults?: number; -} + LoadBalancerTarget?: AnalysisLoadBalancerTarget; -export namespace DescribeSnapshotTierStatusRequest { /** - * @internal + *The target group.
*/ - export const filterSensitiveLog = (obj: DescribeSnapshotTierStatusRequest): any => ({ - ...obj, - }); -} + LoadBalancerTargetGroup?: AnalysisComponent; -export enum TieringOperationStatus { - archival_completed = "archival-completed", - archival_failed = "archival-failed", - archival_in_progress = "archival-in-progress", - permanent_restore_completed = "permanent-restore-completed", - permanent_restore_failed = "permanent-restore-failed", - permanent_restore_in_progress = "permanent-restore-in-progress", - temporary_restore_completed = "temporary-restore-completed", - temporary_restore_failed = "temporary-restore-failed", - temporary_restore_in_progress = "temporary-restore-in-progress", -} + /** + *The target groups.
+ */ + LoadBalancerTargetGroups?: AnalysisComponent[]; -/** - *Provides information about a snapshot's storage tier.
- */ -export interface SnapshotTierStatus { /** - *The ID of the snapshot.
+ *The target port.
*/ - SnapshotId?: string; + LoadBalancerTargetPort?: number; /** - *The ID of the volume from which the snapshot was created.
+ *The load balancer listener.
*/ - VolumeId?: string; + ElasticLoadBalancerListener?: AnalysisComponent; /** - *The state of the snapshot.
+ *The missing component.
*/ - Status?: SnapshotState | string; + MissingComponent?: string; /** - *The ID of the Amazon Web Services account that owns the snapshot.
+ *The NAT gateway.
*/ - OwnerId?: string; + NatGateway?: AnalysisComponent; /** - *The tags that are assigned to the snapshot.
+ *The network interface.
*/ - Tags?: Tag[]; + NetworkInterface?: AnalysisComponent; /** - *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.
The packet field.
*/ - StorageTier?: StorageTier | string; + PacketField?: string; /** - *The date and time when the last archive or restore process was started.
+ *The VPC peering connection.
*/ - LastTieringStartTime?: Date; + VpcPeeringConnection?: AnalysisComponent; /** - *The progress of the last archive or restore process, as a percentage.
+ *The port.
*/ - LastTieringProgress?: number; + Port?: number; /** - *The status of the last archive or restore process.
+ *The port ranges.
*/ - LastTieringOperationStatus?: TieringOperationStatus | string; + PortRanges?: PortRange[]; /** - *A message describing the status of the last archive or restore process.
+ *The prefix list.
*/ - LastTieringOperationStatusDetail?: string; + PrefixList?: AnalysisComponent; /** - *The date and time when the last archive process was completed.
+ *The protocols.
*/ - ArchivalCompleteTime?: Date; + Protocols?: string[]; /** - *Only for archived snapshots that are temporarily restored. Indicates the date and - * time when a temporarily restored snapshot will be automatically re-archived.
+ *The route table route.
*/ - RestoreExpiryTime?: Date; -} + RouteTableRoute?: AnalysisRouteTableRoute; -export namespace SnapshotTierStatus { /** - * @internal + *The route table.
*/ - export const filterSensitiveLog = (obj: SnapshotTierStatus): any => ({ - ...obj, - }); -} + RouteTable?: AnalysisComponent; -export interface DescribeSnapshotTierStatusResult { /** - *Information about the snapshot's storage tier.
+ *The security group.
*/ - SnapshotTierStatuses?: SnapshotTierStatus[]; + SecurityGroup?: AnalysisComponent; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The security group rule.
*/ - NextToken?: string; -} + SecurityGroupRule?: AnalysisSecurityGroupRule; -export namespace DescribeSnapshotTierStatusResult { /** - * @internal + *The security groups.
*/ - export const filterSensitiveLog = (obj: DescribeSnapshotTierStatusResult): any => ({ - ...obj, - }); -} + SecurityGroups?: AnalysisComponent[]; -/** - *Contains the parameters for DescribeSpotDatafeedSubscription.
- */ -export interface DescribeSpotDatafeedSubscriptionRequest { /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The source VPC.
*/ - DryRun?: boolean; -} + SourceVpc?: AnalysisComponent; -export namespace DescribeSpotDatafeedSubscriptionRequest { /** - * @internal + *The state.
*/ - export const filterSensitiveLog = (obj: DescribeSpotDatafeedSubscriptionRequest): any => ({ - ...obj, - }); -} + State?: string; -/** - *Contains the output of DescribeSpotDatafeedSubscription.
- */ -export interface DescribeSpotDatafeedSubscriptionResult { /** - *The Spot Instance data feed subscription.
+ *The subnet.
*/ - SpotDatafeedSubscription?: SpotDatafeedSubscription; -} + Subnet?: AnalysisComponent; -export namespace DescribeSpotDatafeedSubscriptionResult { /** - * @internal + *The route table for the subnet.
*/ - export const filterSensitiveLog = (obj: DescribeSpotDatafeedSubscriptionResult): any => ({ - ...obj, - }); -} + SubnetRouteTable?: AnalysisComponent; -/** - *Contains the parameters for DescribeSpotFleetInstances.
- */ -export interface DescribeSpotFleetInstancesRequest { /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The component VPC.
*/ - DryRun?: boolean; + Vpc?: AnalysisComponent; /** - *The maximum number of results to return in a single call. Specify a value between 1
- * and 1000. The default value is 1000. To retrieve the remaining results, make another
- * call with the returned NextToken
value.
The VPC endpoint.
*/ - MaxResults?: number; + VpcEndpoint?: AnalysisComponent; /** - *The token for the next set of results.
+ *The VPN connection.
*/ - NextToken?: string; + VpnConnection?: AnalysisComponent; /** - *The ID of the Spot Fleet request.
+ *The VPN gateway.
*/ - SpotFleetRequestId: string | undefined; + VpnGateway?: AnalysisComponent; } -export namespace DescribeSpotFleetInstancesRequest { +export namespace Explanation { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeSpotFleetInstancesRequest): any => ({ + export const filterSensitiveLog = (obj: Explanation): any => ({ ...obj, }); } /** - *Contains the output of DescribeSpotFleetInstances.
+ *Describes a network insights analysis.
*/ -export interface DescribeSpotFleetInstancesResponse { +export interface NetworkInsightsAnalysis { /** - *The running instances. This list is refreshed periodically and might be out of - * date.
+ *The ID of the network insights analysis.
*/ - ActiveInstances?: ActiveInstance[]; + NetworkInsightsAnalysisId?: string; /** - *The token required to retrieve the next set of results. This value is
- * null
when there are no more results to return.
The Amazon Resource Name (ARN) of the network insights analysis.
*/ - NextToken?: string; + NetworkInsightsAnalysisArn?: string; /** - *The ID of the Spot Fleet request.
+ *The ID of the path.
*/ - SpotFleetRequestId?: string; -} + NetworkInsightsPathId?: string; -export namespace DescribeSpotFleetInstancesResponse { /** - * @internal + *The Amazon Resource Names (ARN) of the Amazon Web Services resources that the path must traverse.
*/ - export const filterSensitiveLog = (obj: DescribeSpotFleetInstancesResponse): any => ({ - ...obj, - }); -} - -export enum EventType { - BATCH_CHANGE = "fleetRequestChange", - ERROR = "error", - INFORMATION = "information", - INSTANCE_CHANGE = "instanceChange", -} + FilterInArns?: string[]; -/** - *Contains the parameters for DescribeSpotFleetRequestHistory.
- */ -export interface DescribeSpotFleetRequestHistoryRequest { /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The time the analysis started.
*/ - DryRun?: boolean; + StartDate?: Date; /** - *The type of events to describe. By default, all events are described.
+ *The status of the network insights analysis.
*/ - EventType?: EventType | string; + Status?: AnalysisStatus | string; /** - *The maximum number of results to return in a single call. Specify a value between 1
- * and 1000. The default value is 1000. To retrieve the remaining results, make another
- * call with the returned NextToken
value.
The status message, if the status is failed
.
The token for the next set of results.
+ *The warning message.
*/ - NextToken?: string; + WarningMessage?: string; /** - *The ID of the Spot Fleet request.
+ *Indicates whether the destination is reachable from the source.
*/ - SpotFleetRequestId: string | undefined; + NetworkPathFound?: boolean; /** - *The starting date and time for the events, in UTC format (for example, - * YYYY-MM-DDTHH:MM:SSZ).
+ *The components in the path from source to destination.
*/ - StartTime: Date | undefined; -} + ForwardPathComponents?: PathComponent[]; -export namespace DescribeSpotFleetRequestHistoryRequest { /** - * @internal + *The components in the path from destination to source.
*/ - export const filterSensitiveLog = (obj: DescribeSpotFleetRequestHistoryRequest): any => ({ - ...obj, - }); -} + ReturnPathComponents?: PathComponent[]; -/** - *Describes an event in the history of the Spot Fleet request.
- */ -export interface HistoryRecord { /** - *Information about the event.
+ *The explanations. For more information, see Reachability Analyzer explanation codes.
*/ - EventInformation?: EventInformation; + Explanations?: Explanation[]; /** - *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.
Potential intermediate components.
*/ - EventType?: EventType | string; + AlternatePathHints?: AlternatePathHint[]; /** - *The date and time of the event, in UTC format (for example, - * YYYY-MM-DDTHH:MM:SSZ).
+ *The tags.
*/ - Timestamp?: Date; + Tags?: Tag[]; } -export namespace HistoryRecord { +export namespace NetworkInsightsAnalysis { /** * @internal */ - export const filterSensitiveLog = (obj: HistoryRecord): any => ({ + export const filterSensitiveLog = (obj: NetworkInsightsAnalysis): any => ({ ...obj, }); } -/** - *Contains the output of DescribeSpotFleetRequestHistory.
- */ -export interface DescribeSpotFleetRequestHistoryResponse { - /** - *Information about the events in the history of the Spot Fleet request.
- */ - HistoryRecords?: HistoryRecord[]; - +export interface DescribeNetworkInsightsAnalysesResult { /** - *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 results, this value is not
- * present.
Information about the network insights analyses.
*/ - LastEvaluatedTime?: Date; + NetworkInsightsAnalyses?: NetworkInsightsAnalysis[]; /** - *The token required to retrieve the next set of results. This value is
- * null
when there are no more results to return.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the Spot Fleet request.
- */ - SpotFleetRequestId?: string; - - /** - *The starting date and time for the events, in UTC format (for example, - * YYYY-MM-DDTHH:MM:SSZ).
- */ - StartTime?: Date; } -export namespace DescribeSpotFleetRequestHistoryResponse { +export namespace DescribeNetworkInsightsAnalysesResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeSpotFleetRequestHistoryResponse): any => ({ + export const filterSensitiveLog = (obj: DescribeNetworkInsightsAnalysesResult): any => ({ ...obj, }); } -/** - *Contains the parameters for DescribeSpotFleetRequests.
- */ -export interface DescribeSpotFleetRequestsRequest { +export interface DescribeNetworkInsightsPathsRequest { /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The IDs of the paths.
*/ - DryRun?: boolean; + NetworkInsightsPathIds?: string[]; + + /** + *The filters. The following are possible values:
+ *Destination - The ID of the resource.
+ *DestinationPort - The destination port.
+ *Name - The path name.
+ *Protocol - The protocol.
+ *Source - The ID of the resource.
+ *The maximum number of results to return in a single call. Specify a value between 1
- * and 1000. The default value is 1000. To retrieve the remaining results, make another
- * call with the returned NextToken
value.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next set of results.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The IDs of the Spot Fleet requests.
+ *The token for the next page of results.
*/ - SpotFleetRequestIds?: string[]; + NextToken?: string; } -export namespace DescribeSpotFleetRequestsRequest { +export namespace DescribeNetworkInsightsPathsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeSpotFleetRequestsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeNetworkInsightsPathsRequest): any => ({ ...obj, }); } -export enum ExcessCapacityTerminationPolicy { - DEFAULT = "default", - NO_TERMINATION = "noTermination", -} +export interface DescribeNetworkInsightsPathsResult { + /** + *Information about the paths.
+ */ + NetworkInsightsPaths?: NetworkInsightsPath[]; -/** - *Describes whether monitoring is enabled.
- */ -export interface SpotFleetMonitoring { /** - *Enables monitoring for the instance.
- *Default: false
- *
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Describes a network interface.
+ *Contains the parameters for DescribeNetworkInterfaceAttribute.
*/ -export interface InstanceNetworkInterfaceSpecification { +export interface DescribeNetworkInterfaceAttributeRequest { /** - *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
.
The attribute of the network interface. This parameter is required.
*/ - AssociatePublicIpAddress?: boolean; + Attribute?: NetworkInterfaceAttribute | string; /** - *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.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The description of the network interface. Applies only if creating a network interface when launching an instance.
+ *The ID of the network interface.
*/ - Description?: string; + NetworkInterfaceId: string | undefined; +} +export namespace DescribeNetworkInterfaceAttributeRequest { /** - *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.
+ * @internal */ - DeviceIndex?: number; + export const filterSensitiveLog = (obj: DescribeNetworkInterfaceAttributeRequest): any => ({ + ...obj, + }); +} +/** + *Contains the output of DescribeNetworkInterfaceAttribute.
+ */ +export interface DescribeNetworkInterfaceAttributeResult { /** - *The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
+ *The attachment (if any) of the network interface.
*/ - Groups?: string[]; + Attachment?: NetworkInterfaceAttachment; /** - *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.
+ *The description of the network interface.
*/ - Ipv6AddressCount?: number; + Description?: AttributeValue; /** - *One or more 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.
+ *The security groups associated with the network interface.
*/ - Ipv6Addresses?: InstanceIpv6Address[]; + Groups?: GroupIdentifier[]; /** *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.
*/ NetworkInterfaceId?: string; /** - *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.
+ *Indicates whether source/destination checking is enabled.
*/ - PrivateIpAddress?: string; + SourceDestCheck?: AttributeBooleanValue; +} +export namespace DescribeNetworkInterfaceAttributeResult { /** - *One or more 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.
+ * @internal */ - PrivateIpAddresses?: PrivateIpAddressSpecification[]; + export const filterSensitiveLog = (obj: DescribeNetworkInterfaceAttributeResult): any => ({ + ...obj, + }); +} +/** + *Contains the parameters for DescribeNetworkInterfacePermissions.
+ */ +export interface DescribeNetworkInterfacePermissionsRequest { /** - *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.
+ *One or more network interface permission IDs.
*/ - SecondaryPrivateIpAddressCount?: number; + NetworkInterfacePermissionIds?: string[]; /** - *The ID of the subnet associated with the network interface. Applies only if creating a network interface when launching an instance.
+ *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
).
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 addresses in the Amazon Web Services Wavelength Developer Guide.
+ *The token to request the next page of results.
*/ - AssociateCarrierIpAddress?: boolean; + NextToken?: string; /** - *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.
Valid values: interface
| efa
- *
The maximum number of results to return in a single call. To retrieve the remaining results,
+ * make another call with the returned NextToken
value. If this parameter is not specified, up to 50 results are returned by default.
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.
+ * @internal */ - NetworkCardIndex?: number; + export const filterSensitiveLog = (obj: DescribeNetworkInterfacePermissionsRequest): any => ({ + ...obj, + }); +} +/** + *Contains the output for DescribeNetworkInterfacePermissions.
+ */ +export interface DescribeNetworkInterfacePermissionsResult { /** - *One or more IPv4 delegated prefixes to be assigned to the network interface. You cannot
- * use this option if you use the Ipv4PrefixCount
option.
The network interface permissions.
*/ - Ipv4Prefixes?: Ipv4PrefixSpecificationRequest[]; + NetworkInterfacePermissions?: NetworkInterfacePermission[]; /** - *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.
The token to use to retrieve the next page of results.
*/ - Ipv4PrefixCount?: number; + NextToken?: string; +} +export namespace DescribeNetworkInterfacePermissionsResult { /** - *One or more IPv6 delegated prefixes to be assigned to the network interface. You cannot
- * use this option if you use the Ipv6PrefixCount
option.
Contains the parameters for DescribeNetworkInterfaces.
+ */ +export interface DescribeNetworkInterfacesRequest { /** - *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.
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.
+ * 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
: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.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes Spot Instance placement.
- */ -export interface SpotPlacement { /** - *The Availability Zone.
- *[Spot Fleet only] To specify multiple Availability Zones, separate them using commas; - * for example, "us-west-2a, us-west-2b".
+ *One or more network interface IDs.
+ *Default: Describes all your network interfaces.
*/ - AvailabilityZone?: string; + NetworkInterfaceIds?: string[]; /** - *The name of the placement group.
+ *The token to retrieve the next page of results.
*/ - GroupName?: string; + NextToken?: string; /** - *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.
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. You cannot specify this + * parameter and the network interface IDs parameter in the same request.
*/ - Tenancy?: Tenancy | string; + MaxResults?: number; } -export namespace SpotPlacement { +export namespace DescribeNetworkInterfacesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: SpotPlacement): any => ({ + export const filterSensitiveLog = (obj: DescribeNetworkInterfacesRequest): any => ({ ...obj, }); } /** - *The tags for a Spot Fleet resource.
+ *Contains the output of DescribeNetworkInterfaces.
*/ -export interface SpotFleetTagSpecification { +export interface DescribeNetworkInterfacesResult { /** - *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
- * .
Information about one or more network interfaces.
*/ - ResourceType?: ResourceType | string; + NetworkInterfaces?: NetworkInterface[]; /** - *The tags.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
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.
One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
- */ - SecurityGroups?: GroupIdentifier[]; - - /** - *Deprecated.
- */ - AddressingType?: string; - - /** - *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.
- */ - BlockDeviceMappings?: BlockDeviceMapping[]; - - /** - *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
- *
The IAM instance profile.
- */ - IamInstanceProfile?: IamInstanceProfileSpecification; - - /** - *The ID of the AMI.
- */ - ImageId?: string; - - /** - *The instance type.
- */ - InstanceType?: _InstanceType | string; - +export interface DescribePlacementGroupsRequest { /** - *The ID of the kernel.
+ *The filters.
+ *
+ * group-name
- The name of the placement group.
+ * state
- The state of the placement group (pending
|
+ * available
| deleting
|
+ * deleted
).
+ * strategy
- The strategy of the placement group
+ * (cluster
| spread
|
+ * partition
).
+ * tag:
- 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.
The name of the key pair.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Enable or disable monitoring for the instances.
+ *The names of the placement groups.
+ *Default: Describes all your placement groups, or only those otherwise + * specified.
*/ - Monitoring?: SpotFleetMonitoring; + GroupNames?: string[]; /** - *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.
The IDs of the placement groups.
*/ - NetworkInterfaces?: InstanceNetworkInterfaceSpecification[]; + GroupIds?: string[]; +} +export namespace DescribePlacementGroupsRequest { /** - *The placement information.
+ * @internal */ - Placement?: SpotPlacement; + export const filterSensitiveLog = (obj: DescribePlacementGroupsRequest): any => ({ + ...obj, + }); +} +export interface DescribePlacementGroupsResult { /** - *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.
+ *Information about the placement groups.
*/ - RamdiskId?: string; + PlacementGroups?: PlacementGroup[]; +} +export namespace DescribePlacementGroupsResult { /** - *The maximum price per unit hour that you are willing to pay for a Spot Instance.
- * If this value is not specified, the default is the Spot price specified for the fleet.
- * To determine the Spot price per unit hour, divide the Spot price by the
- * value of WeightedCapacity
.
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".
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The Base64-encoded user data that instances use when starting up.
+ *One or more filters.
+ *
+ * prefix-list-id
: The ID of a prefix list.
+ * prefix-list-name
: The name of a prefix list.
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.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The tags to apply during creation.
+ *The token for the next page of results.
*/ - TagSpecifications?: SpotFleetTagSpecification[]; + NextToken?: string; /** - *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
- * InstanceTypes
.
One or more prefix list IDs.
*/ - InstanceRequirements?: InstanceRequirements; + PrefixListIds?: string[]; } -export namespace SpotFleetLaunchSpecification { +export namespace DescribePrefixListsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: SpotFleetLaunchSpecification): any => ({ + export const filterSensitiveLog = (obj: DescribePrefixListsRequest): any => ({ ...obj, }); } /** - *Describes overrides for a launch template.
+ *Describes prefixes for Amazon Web Services services.
*/ -export interface LaunchTemplateOverrides { - /** - *The instance type.
- */ - InstanceType?: _InstanceType | string; - - /** - *The maximum price per unit hour that you are willing to pay for a Spot - * Instance.
- */ - SpotPrice?: string; - - /** - *The ID of the subnet in which to launch the instances.
- */ - SubnetId?: string; - - /** - *The Availability Zone in which to launch the instances.
- */ - AvailabilityZone?: string; - +export interface PrefixList { /** - *The number of units provided by the specified instance type.
+ *The IP address range of the Amazon Web Service.
*/ - WeightedCapacity?: number; + Cidrs?: string[]; /** - *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.
The ID of the prefix.
*/ - Priority?: number; + PrefixListId?: string; /** - *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
- * InstanceTypes
.
The name of the prefix.
*/ - InstanceRequirements?: InstanceRequirements; + PrefixListName?: string; } -export namespace LaunchTemplateOverrides { +export namespace PrefixList { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateOverrides): any => ({ + export const filterSensitiveLog = (obj: PrefixList): any => ({ ...obj, }); } -/** - *Describes a launch template and overrides.
- */ -export interface LaunchTemplateConfig { +export interface DescribePrefixListsResult { /** - *The launch template.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Any parameters that you specify override the same parameters in the launch - * template.
+ *All available prefix lists.
*/ - Overrides?: LaunchTemplateOverrides[]; + PrefixLists?: PrefixList[]; } -export namespace LaunchTemplateConfig { +export namespace DescribePrefixListsResult { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateConfig): any => ({ + export const filterSensitiveLog = (obj: DescribePrefixListsResult): any => ({ ...obj, }); } -/** - *Describes a Classic Load Balancer.
- */ -export interface ClassicLoadBalancer { +export interface DescribePrincipalIdFormatRequest { /** - *The name of the load balancer.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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
+ *
The maximum number of results to return in a single call. To retrieve the remaining + * results, make another call with the returned NextToken value.
*/ - export const filterSensitiveLog = (obj: ClassicLoadBalancer): any => ({ - ...obj, - }); -} + MaxResults?: number; -/** - *Describes the Classic Load Balancers to attach to a Spot Fleet. Spot Fleet registers - * the running Spot Instances with these Classic Load Balancers.
- */ -export interface ClassicLoadBalancersConfig { /** - *One or more Classic Load Balancers.
+ *The token to request the next page of results.
*/ - ClassicLoadBalancers?: ClassicLoadBalancer[]; + NextToken?: string; } -export namespace ClassicLoadBalancersConfig { +export namespace DescribePrincipalIdFormatRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ClassicLoadBalancersConfig): any => ({ + export const filterSensitiveLog = (obj: DescribePrincipalIdFormatRequest): any => ({ ...obj, }); } /** - *Describes a load balancer target group.
+ *PrincipalIdFormat description
*/ -export interface TargetGroup { +export interface PrincipalIdFormat { /** - *The Amazon Resource Name (ARN) of the target group.
+ *PrincipalIdFormatARN description
*/ Arn?: string; -} - -export namespace TargetGroup { - /** - * @internal - */ - export const filterSensitiveLog = (obj: TargetGroup): any => ({ - ...obj, - }); -} -/** - *Describes the target groups to attach to a Spot Fleet. Spot Fleet registers the - * running Spot Instances with these target groups.
- */ -export interface TargetGroupsConfig { /** - *One or more target groups.
+ *PrincipalIdFormatStatuses description
*/ - TargetGroups?: TargetGroup[]; + Statuses?: IdFormat[]; } -export namespace TargetGroupsConfig { +export namespace PrincipalIdFormat { /** * @internal */ - export const filterSensitiveLog = (obj: TargetGroupsConfig): any => ({ + export const filterSensitiveLog = (obj: PrincipalIdFormat): any => ({ ...obj, }); } -/** - *Describes the Classic Load Balancers and target groups to attach to a Spot Fleet - * request.
- */ -export interface LoadBalancersConfig { +export interface DescribePrincipalIdFormatResult { /** - *The Classic Load Balancers.
+ *Information about the ID format settings for the ARN.
*/ - ClassicLoadBalancersConfig?: ClassicLoadBalancersConfig; + Principals?: PrincipalIdFormat[]; /** - *The target groups.
+ *The token to use to retrieve the next page of results. This value is null when there are no more results to return.
*/ - TargetGroupsConfig?: TargetGroupsConfig; + NextToken?: string; } -export namespace LoadBalancersConfig { +export namespace DescribePrincipalIdFormatResult { /** * @internal */ - export const filterSensitiveLog = (obj: LoadBalancersConfig): any => ({ + export const filterSensitiveLog = (obj: DescribePrincipalIdFormatResult): any => ({ ...obj, }); } -export enum OnDemandAllocationStrategy { - LOWEST_PRICE = "lowestPrice", - PRIORITIZED = "prioritized", -} - -export enum ReplacementStrategy { - LAUNCH = "launch", - LAUNCH_BEFORE_TERMINATE = "launch-before-terminate", -} - -/** - *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.
- */ -export interface SpotCapacityRebalance { +export interface DescribePublicIpv4PoolsRequest { /** - *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.
The IDs of the address pools.
*/ - ReplacementStrategy?: ReplacementStrategy | string; + PoolIds?: string[]; /** - *The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot - * Instance after launching a new replacement Spot Instance.
- *Valid only when ReplacementStrategy
is set to launch-before-terminate
.
Valid values: Minimum value of 120
seconds. Maximum value of 7200
seconds.
The token for the next page of results.
*/ - TerminationDelay?: number; -} + NextToken?: string; -export namespace SpotCapacityRebalance { /** - * @internal + *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The strategies for managing your Spot Instances that are at an elevated risk of being - * interrupted.
- */ -export interface SpotMaintenanceStrategies { /** - *The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an - * elevated risk of being interrupted.
+ *One or more filters.
+ *
+ * tag
: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.
Describes the configuration of a Spot Fleet request.
+ *Describes an address range of an IPv4 address pool.
*/ -export interface SpotFleetRequestConfigData { +export interface PublicIpv4PoolRange { /** - *Indicates how to allocate the target Spot Instance capacity across the Spot Instance pools specified by - * the Spot Fleet request.
- *If the allocation strategy is lowestPrice
, Spot Fleet launches instances from
- * the Spot Instance pools with the lowest price. This is the default allocation strategy.
If the allocation strategy is diversified
, Spot Fleet launches instances from
- * all the Spot Instance pools that you specify.
If the allocation strategy is capacityOptimized
(recommended), Spot Fleet
- * launches instances from Spot Instance pools with optimal capacity for the number of instances
- * that are launching. 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.
The first IP address in the range.
*/ - AllocationStrategy?: AllocationStrategy | string; + FirstAddress?: string; /** - *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
.
The last IP address in the range.
*/ - OnDemandAllocationStrategy?: OnDemandAllocationStrategy | string; + LastAddress?: string; /** - *The strategies for managing your Spot Instances that are at an elevated risk of being - * interrupted.
+ *The number of addresses in the range.
*/ - SpotMaintenanceStrategies?: SpotMaintenanceStrategies; + AddressCount?: number; /** - *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.
+ *The number of available addresses in the range.
*/ - ClientToken?: string; + AvailableAddressCount?: number; +} +export namespace PublicIpv4PoolRange { /** - *Indicates whether running Spot Instances should be terminated if you decrease the - * target capacity of the Spot Fleet request below the current size of the Spot - * Fleet.
+ * @internal */ - ExcessCapacityTerminationPolicy?: ExcessCapacityTerminationPolicy | string; + export const filterSensitiveLog = (obj: PublicIpv4PoolRange): any => ({ + ...obj, + }); +} +/** + *Describes an IPv4 address pool.
+ */ +export interface PublicIpv4Pool { /** - *The number of units fulfilled by this request compared to the set target capacity. You - * cannot set this value.
+ *The ID of the address pool.
*/ - FulfilledCapacity?: number; + PoolId?: string; /** - *The number of On-Demand units fulfilled by this request compared to the set target - * On-Demand capacity.
+ *A description of the address pool.
*/ - OnDemandFulfilledCapacity?: number; + Description?: string; /** - *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 for Linux Instances. 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
.
The address ranges.
*/ - IamFleetRole: string | undefined; + PoolAddressRanges?: PublicIpv4PoolRange[]; /** - *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
.
The total number of addresses.
*/ - LaunchSpecifications?: SpotFleetLaunchSpecification[]; + TotalAddressCount?: number; /** - *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
.
The total number of available addresses.
*/ - LaunchTemplateConfigs?: LaunchTemplateConfig[]; + TotalAvailableAddressCount?: number; /** - *The maximum price per unit hour that you are willing to pay for a Spot Instance. The - * default is the On-Demand price.
+ *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.
*/ - SpotPrice?: string; + NetworkBorderGroup?: string; /** - *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.
Any tags for the address pool.
*/ - TargetCapacity: number | undefined; + Tags?: Tag[]; +} +export namespace PublicIpv4Pool { /** - *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.
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.
Information about the address pools.
*/ - OnDemandMaxTotalPrice?: string; + PublicIpv4Pools?: PublicIpv4Pool[]; /** - *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.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Indicates whether running Spot Instances are terminated when the Spot Fleet request - * expires.
+ * @internal */ - TerminateInstancesWithExpiration?: boolean; + export const filterSensitiveLog = (obj: DescribePublicIpv4PoolsResult): any => ({ + ...obj, + }); +} +export interface DescribeRegionsRequest { /** - *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.
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
).
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.
+ *The names of the Regions. You can specify any Regions, whether they are enabled and disabled for your account.
*/ - ValidFrom?: Date; + RegionNames?: string[]; /** - *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.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Indicates whether Spot Fleet should replace unhealthy instances.
+ *Indicates whether to display all Regions, including Regions that are disabled for your account.
*/ - ReplaceUnhealthyInstances?: boolean; + AllRegions?: boolean; +} +export namespace DescribeRegionsRequest { /** - *The behavior when a Spot Instance is interrupted. The default is
- * terminate
.
Describes a Region.
+ */ +export interface Region { /** - *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.
+ *The Region service endpoint.
*/ - LoadBalancersConfig?: LoadBalancersConfig; + Endpoint?: string; /** - *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.
+ *The name of the Region.
*/ - InstancePoolsToUseCount?: number; + RegionName?: string; /** - *Reserved.
+ *The Region opt-in status. The possible values are opt-in-not-required
, opted-in
, and
+ * not-opted-in
.
The unit for the target capacity.
- *Default: units
(translates to number of instances)
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.
Information about the Regions.
*/ - TagSpecifications?: TagSpecification[]; + Regions?: Region[]; } -export namespace SpotFleetRequestConfigData { +export namespace DescribeRegionsResult { /** * @internal */ - export const filterSensitiveLog = (obj: SpotFleetRequestConfigData): any => ({ + export const filterSensitiveLog = (obj: DescribeRegionsResult): any => ({ ...obj, }); } -/** - *Describes a Spot Fleet request.
- */ -export interface SpotFleetRequestConfig { - /** - *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.
The creation date and time of the request.
+ *The ID of the root volume replacement task to view.
*/ - CreateTime?: Date; + ReplaceRootVolumeTaskIds?: string[]; /** - *The configuration of the Spot Fleet request.
+ *Filter to use:
+ *
+ * instance-id
- The ID of the instance for which the root volume replacement task was created.
The ID of the Spot Fleet request.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The state of the Spot Fleet request.
+ *The token for the next page of results.
*/ - SpotFleetRequestState?: BatchState | string; + NextToken?: string; /** - *The tags for a Spot Fleet resource.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains the output of DescribeSpotFleetRequests.
- */ -export interface DescribeSpotFleetRequestsResponse { +export interface DescribeReplaceRootVolumeTasksResult { /** - *The token required to retrieve the next set of results. This value is
- * null
when there are no more results to return.
Information about the root volume replacement task.
*/ - NextToken?: string; + ReplaceRootVolumeTasks?: ReplaceRootVolumeTask[]; /** - *Information about the configuration of your Spot Fleet.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for DescribeSpotInstanceRequests.
+ *Contains the parameters for DescribeReservedInstances.
*/ -export interface DescribeSpotInstanceRequestsRequest { +export interface DescribeReservedInstancesRequest { /** *One or more 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, sc1
for 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.
+ * availability-zone
- The Availability Zone where the Reserved Instance can be used.
- * network-interface.network-interface-id
- The ID of the network
- * interface.
+ * duration
- The duration of the Reserved Instance (one year or three years), in seconds (31536000
| 94608000
).
- * network-interface.private-ip-address
- The primary private IP
- * address of the network interface.
+ * end
- The time when the Reserved Instance expires (for example, 2015-08-07T11:54:42.000Z).
- * network-interface.subnet-id
- The ID of the subnet for the
- * instance.
+ * fixed-price
- The purchase price of the Reserved Instance (for example, 9800.0).
- * product-description
- The product description associated with the
- * instance (Linux/UNIX
| Windows
).
+ * instance-type
- The instance type that is covered by the reservation.
- * spot-instance-request-id
- The Spot Instance request ID.
+ * scope
- The scope of the Reserved Instance (Region
or Availability Zone
).
- * spot-price
- The maximum hourly price for any Spot Instance
- * launched to fulfill the request.
+ * product-description
- The Reserved Instance product platform
+ * description. Instances that include (Amazon VPC)
in the product platform
+ * description will only be displayed to EC2-Classic account holders and are for use with
+ * Amazon VPC (Linux/UNIX
| Linux/UNIX (Amazon VPC)
| SUSE
+ * Linux
| SUSE Linux (Amazon VPC)
| Red Hat Enterprise
+ * Linux
| Red Hat Enterprise Linux (Amazon VPC)
| Red Hat
+ * Enterprise Linux with HA (Amazon VPC)
| Windows
| Windows
+ * (Amazon VPC)
| Windows with SQL Server Standard
| Windows with
+ * SQL Server Standard (Amazon VPC)
| Windows with SQL Server Web
|
+ * Windows with SQL Server Web (Amazon VPC)
| Windows with SQL Server
+ * Enterprise
| Windows with SQL Server Enterprise (Amazon
+ * VPC)
).
- * 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.
+ * reserved-instances-id
- The ID of the Reserved Instance.
- * status-code
- The short code describing the most recent
- * evaluation of your Spot Instance request.
+ * start
- The time at which the Reserved Instance purchase request was placed (for example, 2014-08-07T11:54:42.000Z).
- * status-message
- The message explaining the status of the Spot
- * Instance request.
+ * state
- The state of the Reserved Instance (payment-pending
| active
| payment-failed
| retired
).
@@ -12541,451 +11542,506 @@ export interface DescribeSpotInstanceRequestsRequest {
* 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.
+ * usage-price
- The usage price of the Reserved Instance, per hour (for example, 0.84).
Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
Describes whether the Reserved Instance is Standard or Convertible.
*/ - DryRun?: boolean; + OfferingClass?: OfferingClassType | string; /** - *One or more Spot Instance request IDs.
+ *One or more Reserved Instance IDs.
+ *Default: Describes all your Reserved Instances, or only those otherwise specified.
*/ - SpotInstanceRequestIds?: string[]; + ReservedInstancesIds?: string[]; /** - *The token to request the next set of results. This value is null
when
- * there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The maximum number of results to return in a single call. Specify a value between 5
- * and 1000. To retrieve the remaining results, make another call with the returned
- * NextToken
value.
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.
Describes the monitoring of an instance.
+ *Describes a recurring charge.
*/ -export interface RunInstancesMonitoringEnabled { +export interface RecurringCharge { /** - *Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is - * enabled.
+ *The amount of the recurring charge.
+ */ + Amount?: number; + + /** + *The frequency of the recurring charge.
*/ - Enabled: boolean | undefined; + Frequency?: RecurringChargeFrequency | string; } -export namespace RunInstancesMonitoringEnabled { +export namespace RecurringCharge { /** * @internal */ - export const filterSensitiveLog = (obj: RunInstancesMonitoringEnabled): any => ({ + export const filterSensitiveLog = (obj: RecurringCharge): any => ({ ...obj, }); } +export enum Scope { + AVAILABILITY_ZONE = "Availability Zone", + REGIONAL = "Region", +} + +export type ReservedInstanceState = + | "active" + | "payment-failed" + | "payment-pending" + | "queued" + | "queued-deleted" + | "retired"; + /** - *Describes the launch specification for an instance.
+ *Describes a Reserved Instance.
*/ -export interface LaunchSpecification { +export interface ReservedInstances { /** - *The Base64-encoded user data for the instance.
+ *The Availability Zone in which the Reserved Instance can be used.
*/ - UserData?: string; + AvailabilityZone?: string; /** - *One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
+ *The duration of the Reserved Instance, in seconds.
*/ - SecurityGroups?: GroupIdentifier[]; + Duration?: number; /** - *Deprecated.
+ *The time when the Reserved Instance expires.
*/ - AddressingType?: string; + End?: Date; /** - *One or more block device mapping entries.
+ *The purchase price of the Reserved Instance.
*/ - BlockDeviceMappings?: BlockDeviceMapping[]; + FixedPrice?: number; /** - *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
- *
The number of reservations purchased.
*/ - EbsOptimized?: boolean; + InstanceCount?: number; /** - *The IAM instance profile.
+ *The instance type on which the Reserved Instance can be used.
*/ - IamInstanceProfile?: IamInstanceProfileSpecification; + InstanceType?: _InstanceType | string; /** - *The ID of the AMI.
+ *The Reserved Instance product platform description.
*/ - ImageId?: string; + ProductDescription?: RIProductDescription | string; /** - *The instance type.
+ *The ID of the Reserved Instance.
*/ - InstanceType?: _InstanceType | string; + ReservedInstancesId?: string; /** - *The ID of the kernel.
+ *The date and time the Reserved Instance started.
*/ - KernelId?: string; + Start?: Date; /** - *The name of the key pair.
+ *The state of the Reserved Instance purchase.
*/ - KeyName?: string; + State?: ReservedInstanceState | string; /** - *One or more network interfaces. If you specify a network interface, you must specify - * subnet IDs and security group IDs using the network interface.
+ *The usage price of the Reserved Instance, per hour.
*/ - NetworkInterfaces?: InstanceNetworkInterfaceSpecification[]; + UsagePrice?: number; /** - *The placement information for the instance.
+ *The currency of the Reserved Instance. It's specified using ISO 4217 standard currency codes.
+ * At this time, the only supported currency is USD
.
The ID of the RAM disk.
+ *The tenancy of the instance.
*/ - RamdiskId?: string; + InstanceTenancy?: Tenancy | string; /** - *The ID of the subnet in which to launch the instance.
+ *The offering class of the Reserved Instance.
*/ - SubnetId?: string; + OfferingClass?: OfferingClassType | string; /** - *Describes the monitoring of an instance.
+ *The Reserved Instance offering type.
+ */ + OfferingType?: OfferingTypeValues | string; + + /** + *The recurring charge tag assigned to the resource.
+ */ + RecurringCharges?: RecurringCharge[]; + + /** + *The scope of the Reserved Instance.
+ */ + Scope?: Scope | string; + + /** + *Any tags assigned to the resource.
*/ - Monitoring?: RunInstancesMonitoringEnabled; + Tags?: Tag[]; } -export namespace LaunchSpecification { +export namespace ReservedInstances { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchSpecification): any => ({ + export const filterSensitiveLog = (obj: ReservedInstances): any => ({ ...obj, }); } -export type SpotInstanceState = "active" | "cancelled" | "closed" | "failed" | "open"; - /** - *Describes the status of a Spot Instance request.
+ *Contains the output for DescribeReservedInstances.
*/ -export interface SpotInstanceStatus { - /** - *The status code. For a list of status codes, see Spot status codes in the Amazon EC2 User Guide for Linux Instances.
- */ - Code?: string; - - /** - *The description for the status code.
- */ - Message?: string; - +export interface DescribeReservedInstancesResult { /** - *The date and time of the most recent status update, in UTC format (for example, - * YYYY-MM-DDTHH:MM:SSZ).
+ *A list of Reserved Instances.
*/ - UpdateTime?: Date; + ReservedInstances?: ReservedInstances[]; } -export namespace SpotInstanceStatus { +export namespace DescribeReservedInstancesResult { /** * @internal */ - export const filterSensitiveLog = (obj: SpotInstanceStatus): any => ({ + export const filterSensitiveLog = (obj: DescribeReservedInstancesResult): any => ({ ...obj, }); } /** - *Describes a Spot Instance request.
+ *Contains the parameters for DescribeReservedInstancesListings.
*/ -export interface SpotInstanceRequest { - /** - *Deprecated.
- */ - ActualBlockHourlyPrice?: string; - +export interface DescribeReservedInstancesListingsRequest { /** - *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.
+ *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.
Deprecated.
+ *One or more Reserved Instance IDs.
*/ - BlockDurationMinutes?: number; + ReservedInstancesId?: string; /** - *The date and time when the Spot Instance request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
+ *One or more Reserved Instance listing IDs.
*/ - CreateTime?: Date; + ReservedInstancesListingId?: string; +} +export namespace DescribeReservedInstancesListingsRequest { /** - *The fault codes for the Spot Instance request, if any.
+ * @internal */ - Fault?: SpotInstanceStateFault; + export const filterSensitiveLog = (obj: DescribeReservedInstancesListingsRequest): any => ({ + ...obj, + }); +} +/** + *Contains the output of DescribeReservedInstancesListings.
+ */ +export interface DescribeReservedInstancesListingsResult { /** - *The instance ID, if an instance has been launched to fulfill the Spot Instance request.
+ *Information about the Reserved Instance listing.
*/ - InstanceId?: string; + ReservedInstancesListings?: ReservedInstancesListing[]; +} +export namespace DescribeReservedInstancesListingsResult { /** - *The instance launch group. Launch groups are Spot Instances that launch together and terminate together.
+ * @internal */ - LaunchGroup?: string; + export const filterSensitiveLog = (obj: DescribeReservedInstancesListingsResult): any => ({ + ...obj, + }); +} +/** + *Contains the parameters for DescribeReservedInstancesModifications.
+ */ +export interface DescribeReservedInstancesModificationsRequest { /** - *Additional information for launching instances.
+ *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.
+ * modification-result.target-configuration.platform
- The network platform of the new Reserved Instances (EC2-Classic
| EC2-VPC
).
+ * 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.
The Availability Zone in which the request is launched.
+ *IDs for the submitted modification request.
*/ - LaunchedAvailabilityZone?: string; + ReservedInstancesModificationIds?: string[]; /** - *The product description associated with the Spot Instance.
+ *The token to retrieve the next page of results.
*/ - ProductDescription?: RIProductDescription | string; + NextToken?: string; +} +export namespace DescribeReservedInstancesModificationsRequest { /** - *The ID of the Spot Instance request.
+ * @internal */ - SpotInstanceRequestId?: string; + export const filterSensitiveLog = (obj: DescribeReservedInstancesModificationsRequest): any => ({ + ...obj, + }); +} +/** + *Describes the configuration settings for the modified Reserved Instances.
+ */ +export interface ReservedInstancesConfiguration { /** - *The maximum price per hour that you are willing to pay for a Spot Instance.
+ *The Availability Zone for the modified Reserved Instances.
*/ - SpotPrice?: string; + AvailabilityZone?: string; /** - *The state of the Spot Instance request. Spot status information helps track your Spot - * Instance requests. For more information, see Spot status in the - * Amazon EC2 User Guide for Linux Instances.
+ *The number of modified Reserved Instances.
+ *This is a required field for a request.
+ *The status code and status message describing the Spot Instance request.
+ *The instance type for the modified Reserved Instances.
*/ - Status?: SpotInstanceStatus; + InstanceType?: _InstanceType | string; /** - *Any tags assigned to the resource.
+ *The network platform of the modified Reserved Instances, which is either EC2-Classic or EC2-VPC.
*/ - Tags?: Tag[]; + Platform?: string; /** - *The Spot Instance request type.
+ *Whether the Reserved Instance is applied to instances in a Region or instances in a specific Availability Zone.
*/ - Type?: SpotInstanceType | string; + Scope?: Scope | string; +} +export namespace ReservedInstancesConfiguration { /** - *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.
+ * @internal */ - ValidFrom?: Date; + export const filterSensitiveLog = (obj: ReservedInstancesConfiguration): any => ({ + ...obj, + }); +} +/** + *Describes the modification request/s.
+ */ +export interface ReservedInstancesModificationResult { /** - *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.
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.
*/ - ValidUntil?: Date; + ReservedInstancesId?: string; /** - *The behavior when a Spot Instance is interrupted.
+ *The target Reserved Instances configurations supplied as part of the modification request.
*/ - InstanceInterruptionBehavior?: InstanceInterruptionBehavior | string; + TargetConfiguration?: ReservedInstancesConfiguration; } -export namespace SpotInstanceRequest { +export namespace ReservedInstancesModificationResult { /** * @internal */ - export const filterSensitiveLog = (obj: SpotInstanceRequest): any => ({ + export const filterSensitiveLog = (obj: ReservedInstancesModificationResult): any => ({ ...obj, }); } /** - *Contains the output of DescribeSpotInstanceRequests.
+ *Describes the ID of a Reserved Instance.
*/ -export interface DescribeSpotInstanceRequestsResult { - /** - *One or more Spot Instance requests.
- */ - SpotInstanceRequests?: SpotInstanceRequest[]; - +export interface ReservedInstancesId { /** - *The token to use to retrieve the next set of results. This value is null
- * when there are no more results to return.
The ID of the Reserved Instance.
*/ - NextToken?: string; + ReservedInstancesId?: string; } -export namespace DescribeSpotInstanceRequestsResult { +export namespace ReservedInstancesId { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeSpotInstanceRequestsResult): any => ({ + export const filterSensitiveLog = (obj: ReservedInstancesId): any => ({ ...obj, }); } /** - *Contains the parameters for DescribeSpotPriceHistory.
+ *Describes a Reserved Instance modification.
*/ -export interface DescribeSpotPriceHistoryRequest { +export interface ReservedInstancesModification { /** - *One or more 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.
A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. + * For more information, see Ensuring + * Idempotency.
*/ - Filters?: Filter[]; + ClientToken?: string; /** - *Filters the results by the specified Availability Zone.
+ *The time when the modification request was created.
*/ - AvailabilityZone?: string; + CreateDate?: Date; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The time for the modification to become effective.
*/ - DryRun?: boolean; + EffectiveDate?: Date; /** - *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).
+ *Contains target configurations along with their corresponding new Reserved Instance IDs.
*/ - EndTime?: Date; + ModificationResults?: ReservedInstancesModificationResult[]; /** - *Filters the results by the specified instance types.
+ *The IDs of one or more Reserved Instances.
*/ - InstanceTypes?: (_InstanceType | string)[]; + ReservedInstancesIds?: ReservedInstancesId[]; /** - *The maximum number of results to return in a single call. Specify a value between 1
- * and 1000. The default value is 1000. To retrieve the remaining results, make another
- * call with the returned NextToken
value.
A unique ID for the Reserved Instance modification.
*/ - MaxResults?: number; + ReservedInstancesModificationId?: string; /** - *The token for the next set of results.
+ *The status of the Reserved Instances modification request.
*/ - NextToken?: string; + Status?: string; /** - *Filters the results by the specified basic product descriptions.
+ *The reason for the status.
*/ - ProductDescriptions?: string[]; + StatusMessage?: string; /** - *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).
+ *The time when the modification request was last updated.
*/ - StartTime?: Date; + UpdateDate?: Date; } -export namespace DescribeSpotPriceHistoryRequest { +export namespace ReservedInstancesModification { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeSpotPriceHistoryRequest): any => ({ + export const filterSensitiveLog = (obj: ReservedInstancesModification): any => ({ ...obj, }); } diff --git a/clients/client-ec2/src/models/models_4.ts b/clients/client-ec2/src/models/models_4.ts index 3c413dbe94e5..fd0ba2fd07e9 100644 --- a/clients/client-ec2/src/models/models_4.ts +++ b/clients/client-ec2/src/models/models_4.ts @@ -1,33 +1,25 @@ -import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; - import { _InstanceType, - AddressAttribute, + ActiveInstance, + ActivityStatus, + AllocationStrategy, AllowedPrincipal, AssociationStatus, - AutoPlacement, + BatchState, CapacityReservationState, - ClientConnectOptions, - ConnectionLogOptions, CurrencyCodeValues, - EndDateType, - FleetExcessCapacityTerminationPolicy, - FleetLaunchTemplateConfigRequest, - HostRecovery, IamInstanceProfileAssociation, + IamInstanceProfileSpecification, InstanceEventWindow, - InstanceRequirementsRequest, - Placement, + IpamPoolAllocation, + IpPermission, ResourceType, - SelfServicePortal, + SecurityGroupRule, Subnet, - SubnetAssociation, SubnetIpv6CidrBlockAssociation, Tag, TagSpecification, - TargetCapacitySpecificationRequest, - TargetCapacityUnitType, - TargetConfigurationRequest, + Tenancy, TransitGatewayAssociation, TransitGatewayAssociationState, TransitGatewayAttachmentResourceType, @@ -43,485 +35,511 @@ import { VpcPeeringConnection, } from "./models_0"; import { + BlockDeviceMapping, DiskImageFormat, - DnsEntry, - PlatformValues, - ResponseLaunchTemplateData, - ShutdownBehavior, - State, - SubnetCidrReservation, + FleetLaunchTemplateSpecification, + FleetType, + GroupIdentifier, + InstanceInterruptionBehavior, + InstanceIpv6Address, + InstanceRequirements, + InstanceRequirementsRequest, + IpamResourceTag, + Ipv4PrefixSpecificationRequest, + Ipv6PrefixSpecificationRequest, + PrivateIpAddressSpecification, + RequestIpamResourceTag, + RouteTable, + Snapshot, + SnapshotState, + SpotDatafeedSubscription, + SpotInstanceStateFault, + SpotInstanceType, + StorageTier, + TargetCapacityUnitType, TrafficMirrorFilter, TrafficMirrorSession, TrafficMirrorTarget, TransitGateway, TransitGatewayConnect, - TransitGatewayConnectPeer, - TransitGatewayMulticastDomain, - TransitGatewayPrefixListReference, - TransitGatewayRouteTable, - Volume, VolumeType, - VpcEndpoint, } from "./models_1"; import { ConnectionNotification, - ConversionTask, + DnsEntry, DnsNameState, - ExportTaskS3Location, - FastSnapshotRestoreStateCode, Filter, - FpgaImageAttribute, - FpgaImageAttributeName, - PaymentOption, - PermissionGroup, - ProductCode, + IpamPoolCidr, ServiceConfiguration, ServiceTypeDetail, + State, + TransitGatewayConnectPeer, + TransitGatewayMulticastDomain, + TransitGatewayRouteTable, + Volume, + VpcEndpoint, VpnConnection, VpnGateway, } from "./models_2"; import { ArchitectureType, - ArchitectureValues, AttributeBooleanValue, - BootModeValues, - ImportImageLicenseConfigurationResponse, + EventInformation, + ExportTaskS3Location, + FastSnapshotRestoreStateCode, + OfferingClassType, + OfferingTypeValues, + PaymentOption, + PermissionGroup, + ProductCode, + RecurringCharge, + ReservedInstancesModification, RIProductDescription, - SnapshotDetail, - SnapshotTaskDetail, + Scope, VirtualizationType, } from "./models_3"; /** - *Describes the maximum price per hour that you are willing to pay for a Spot - * Instance.
+ *Contains the output of DescribeReservedInstancesModifications.
*/ -export interface SpotPrice { +export interface DescribeReservedInstancesModificationsResult { /** - *The Availability Zone.
+ *The token to use to retrieve the next page of results. This value is null
when
+ * there are no more results to return.
The instance type.
+ *The Reserved Instance modification information.
*/ - InstanceType?: _InstanceType | string; + ReservedInstancesModifications?: ReservedInstancesModification[]; +} +export namespace DescribeReservedInstancesModificationsResult { /** - *A general description of the AMI.
+ * @internal */ - ProductDescription?: RIProductDescription | string; + export const filterSensitiveLog = (obj: DescribeReservedInstancesModificationsResult): any => ({ + ...obj, + }); +} +/** + *Contains the parameters for DescribeReservedInstancesOfferings.
+ */ +export interface DescribeReservedInstancesOfferingsRequest { /** - *The maximum price per hour that you are willing to pay for a Spot Instance.
+ *The Availability Zone in which the Reserved Instance can be used.
*/ - SpotPrice?: string; + AvailabilityZone?: string; /** - *The date and time the request was created, in UTC format (for example, - * YYYY-MM-DDTHH:MM:SSZ).
+ *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.
+ * Instances that include (Amazon VPC)
in the product platform description will
+ * only be displayed to EC2-Classic account holders and are for use with Amazon VPC.
+ * (Linux/UNIX
| Linux/UNIX (Amazon VPC)
| SUSE
+ * Linux
| SUSE Linux (Amazon VPC)
| Red Hat Enterprise
+ * Linux
| Red Hat Enterprise Linux (Amazon VPC)
| Red Hat
+ * Enterprise Linux with HA (Amazon VPC)
| Windows
| Windows
+ * (Amazon VPC)
| Windows with SQL Server Standard
| Windows with
+ * SQL Server Standard (Amazon VPC)
| Windows with SQL Server Web
|
+ * Windows with SQL Server Web (Amazon VPC)
| Windows with SQL Server
+ * Enterprise
| Windows with SQL Server Enterprise (Amazon VPC)
)
+ * 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).
Include Reserved Instance Marketplace offerings in the response.
*/ - export const filterSensitiveLog = (obj: SpotPrice): any => ({ - ...obj, - }); -} + IncludeMarketplace?: boolean; -/** - *Contains the output of DescribeSpotPriceHistory.
- */ -export interface DescribeSpotPriceHistoryResult { /** - *The token required to retrieve the next set of results. This value is null or an empty - * string when there are no more results to return.
+ *The instance type that the reservation will cover (for example, m1.small
). For more information, see
+ * Instance types in the
+ * Amazon EC2 User Guide.
The historical Spot prices.
+ *The maximum duration (in seconds) to filter when searching for offerings.
+ *Default: 94608000 (3 years)
*/ - SpotPriceHistory?: SpotPrice[]; -} + MaxDuration?: number; -export namespace DescribeSpotPriceHistoryResult { /** - * @internal + *The maximum number of instances to filter when searching for offerings.
+ *Default: 20
*/ - export const filterSensitiveLog = (obj: DescribeSpotPriceHistoryResult): any => ({ - ...obj, - }); -} + MaxInstanceCount?: number; -export interface DescribeStaleSecurityGroupsRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The minimum duration (in seconds) to filter when searching for offerings.
+ *Default: 2592000 (1 month)
*/ - DryRun?: boolean; + MinDuration?: number; /** - *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.
+ *The offering class of the Reserved Instance. Can be standard
or convertible
.
The token for the next set of items to return. (You received this token from a prior call.)
+ *The Reserved Instance product platform description. Instances that include (Amazon
+ * VPC)
in the description are for use with Amazon VPC.
The ID of the VPC.
+ *One or more Reserved Instances offering IDs.
*/ - VpcId: string | undefined; -} + ReservedInstancesOfferingIds?: string[]; -export namespace DescribeStaleSecurityGroupsRequest { /** - * @internal + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a stale rule in a security group.
- */ -export interface StaleIpPermission { /** - *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.
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
+ *
The IP protocol name (for tcp
, udp
, and icmp
) or number (see Protocol Numbers).
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
*/ - IpProtocol?: string; + MaxResults?: number; /** - *The IP ranges. Not applicable for stale security group rules.
+ *The token to retrieve the next page of results.
*/ - IpRanges?: string[]; + NextToken?: string; /** - *The prefix list IDs. Not applicable for stale security group rules.
+ *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.
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.
Describes a Reserved Instance offering.
+ */ +export interface PricingDetail { /** - *The security group pairs. Returns the ID of the referenced security group and VPC, and the ID and status of the VPC peering connection.
+ *The number of reservations available for the price.
*/ - UserIdGroupPairs?: UserIdGroupPair[]; + Count?: number; + + /** + *The price per instance.
+ */ + Price?: number; } -export namespace StaleIpPermission { +export namespace PricingDetail { /** * @internal */ - export const filterSensitiveLog = (obj: StaleIpPermission): any => ({ + export const filterSensitiveLog = (obj: PricingDetail): any => ({ ...obj, }); } /** - *Describes a stale security group (a security group that contains stale rules).
+ *Describes a Reserved Instance offering.
*/ -export interface StaleSecurityGroup { +export interface ReservedInstancesOffering { /** - *The description of the security group.
+ *The Availability Zone in which the Reserved Instance can be used.
*/ - Description?: string; + AvailabilityZone?: string; /** - *The ID of the security group.
+ *The duration of the Reserved Instance, in seconds.
*/ - GroupId?: string; + Duration?: number; /** - *The name of the security group.
+ *The purchase price of the Reserved Instance.
*/ - GroupName?: string; + FixedPrice?: number; /** - *Information about the stale inbound rules in the security group.
+ *The instance type on which the Reserved Instance can be used.
*/ - StaleIpPermissions?: StaleIpPermission[]; + InstanceType?: _InstanceType | string; /** - *Information about the stale outbound rules in the security group.
+ *The Reserved Instance product platform description.
*/ - StaleIpPermissionsEgress?: StaleIpPermission[]; + ProductDescription?: RIProductDescription | string; /** - *The ID of the VPC for the security group.
+ *The ID of the Reserved Instance offering. This is the offering ID used in GetReservedInstancesExchangeQuote + * to confirm that an exchange can be made.
*/ - VpcId?: string; -} + ReservedInstancesOfferingId?: string; -export namespace StaleSecurityGroup { /** - * @internal + *The usage price of the Reserved Instance, per hour.
*/ - export const filterSensitiveLog = (obj: StaleSecurityGroup): any => ({ - ...obj, - }); -} + UsagePrice?: number; -export interface DescribeStaleSecurityGroupsResult { /** - *The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
+ *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
.
Information about the stale security groups.
+ *The tenancy of the instance.
*/ - StaleSecurityGroupSet?: StaleSecurityGroup[]; -} + InstanceTenancy?: Tenancy | string; -export namespace DescribeStaleSecurityGroupsResult { /** - * @internal + *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
.
The AMI IDs for which to show progress. Up to 20 AMI IDs can be included in a request.
+ *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.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Reserved Instance offering type.
*/ - DryRun?: boolean; + OfferingType?: OfferingTypeValues | string; /** - *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.
The pricing details of the Reserved Instance offering.
*/ - Filters?: Filter[]; + PricingDetails?: PricingDetail[]; /** - *The token for the next page of results.
+ *The recurring charge tag assigned to the resource.
*/ - NextToken?: string; + RecurringCharges?: RecurringCharge[]; /** - *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. You cannot specify this parameter and the ImageIDs
parameter
- * in the same call.
Whether the Reserved Instance is applied to instances in a Region or an Availability Zone.
*/ - MaxResults?: number; + Scope?: Scope | string; } -export namespace DescribeStoreImageTasksRequest { +export namespace ReservedInstancesOffering { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeStoreImageTasksRequest): any => ({ + export const filterSensitiveLog = (obj: ReservedInstancesOffering): any => ({ ...obj, }); } /** - *The information about the AMI store task, including the progress of the task.
+ *Contains the output of DescribeReservedInstancesOfferings.
*/ -export interface StoreImageTaskResult { - /** - *The ID of the AMI that is being stored.
- */ - AmiId?: string; - - /** - *The time the task started.
- */ - TaskStartTime?: Date; - +export interface DescribeReservedInstancesOfferingsResult { /** - *The name of the Amazon S3 bucket that contains the stored AMI object.
+ *A list of Reserved Instances offerings.
*/ - Bucket?: string; + ReservedInstancesOfferings?: ReservedInstancesOffering[]; /** - *The name of the stored AMI object in the bucket.
+ *The token to use to retrieve the next page of results. This value is null
when
+ * there are no more results to return.
The progress of the task as a percentage.
+ * @internal */ - ProgressPercentage?: number; + export const filterSensitiveLog = (obj: DescribeReservedInstancesOfferingsResult): any => ({ + ...obj, + }); +} - /** - *The state of the store task (InProgress
, Completed
, or
- * Failed
).
If the tasks fails, the reason for the failure is returned. If the task succeeds,
- * null
is returned.
The information about the AMI store tasks.
- */ - StoreImageTaskResults?: StoreImageTaskResult[]; - - /** - *The token to use to retrieve the next page of results. This value is null
- * when there are no more results to return.
One or more 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.
- * 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.
- * ipv6-cidr-block-association.ipv6-cidr-block
- An IPv6 CIDR
- * block associated with the subnet.
+ * association.route-table-association-id
- The ID of an association
+ * ID for the route table.
- * ipv6-cidr-block-association.association-id
- An association ID
- * for an IPv6 CIDR block associated with the subnet.
+ * association.route-table-id
- The ID of the route table involved in
+ * the association.
- * ipv6-cidr-block-association.state
- The state of an IPv6 CIDR
- * block associated with the subnet.
+ * association.subnet-id
- The ID of the subnet involved in the
+ * association.
- * ipv6-native
- Indicates whether this is an IPv6 only subnet (true
| false
).
+ * 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.
- * outpost-arn
- The Amazon Resource Name (ARN) of the Outpost.
+ * owner-id
- The ID of the Amazon Web Services account that owns the route table.
- * owner-id
- The ID of the Amazon Web Services account that owns the subnet.
+ * route-table-id
- The ID of the route table.
- * state
- The state of the subnet (pending
| available
).
+ * route.destination-cidr-block
- The IPv4 CIDR range specified in a
+ * route in the table.
- * subnet-arn
- The Amazon Resource Name (ARN) of the subnet.
+ * route.destination-ipv6-cidr-block
- The IPv6 CIDR range specified in a route in the route table.
- * subnet-id
- The ID of the subnet.
+ * 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
: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.
+ * vpc-id
- The ID of the VPC for the route table.
One or more subnet IDs.
- *Default: Describes all your subnets.
- */ - SubnetIds?: string[]; - /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -529,6 +547,12 @@ export interface DescribeSubnetsRequest {
*/
DryRun?: boolean;
+ /**
+ *
One or more route table IDs.
+ *Default: Describes all your route tables.
+ */ + RouteTableIds?: string[]; + /** *The token for the next page of results.
*/ @@ -541,20 +565,23 @@ export interface DescribeSubnetsRequest { MaxResults?: number; } -export namespace DescribeSubnetsRequest { +export namespace DescribeRouteTablesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeSubnetsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeRouteTablesRequest): any => ({ ...obj, }); } -export interface DescribeSubnetsResult { +/** + *Contains the output of DescribeRouteTables.
+ */ +export interface DescribeRouteTablesResult { /** - *Information about one or more subnets.
+ *Information about one or more route tables.
*/ - Subnets?: Subnet[]; + RouteTables?: RouteTable[]; /** *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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
:
- * value
- The tag value.
Describes the time period for a Scheduled Instance to start its first schedule. The time period must span less than one day.
+ */ +export interface SlotDateTimeRangeRequest { /** - *The maximum number of results to return in a single call.
- * This value can be between 5 and 1000.
- * To retrieve the remaining results, make another call with the returned NextToken
value.
The earliest date and time, in UTC, for the Scheduled Instance to start.
*/ - MaxResults?: number; + EarliestTime: Date | undefined; /** - *The token to retrieve the next page of results.
+ *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.
*/ - NextToken?: string; + LatestTime: Date | undefined; } -export namespace DescribeTagsRequest { +export namespace SlotDateTimeRangeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeTagsRequest): any => ({ + export const filterSensitiveLog = (obj: SlotDateTimeRangeRequest): any => ({ ...obj, }); } /** - *Describes a tag.
+ *Describes the recurring schedule for a Scheduled Instance.
*/ -export interface TagDescription { - /** - *The tag key.
- */ - Key?: string; - - /** - *The ID of the resource.
- */ - ResourceId?: string; - +export interface ScheduledInstanceRecurrenceRequest { /** - *The resource type.
+ *The frequency (Daily
, Weekly
, or Monthly
).
The tag value.
+ *The interval quantity. The interval unit depends on the value of Frequency
. For example, every 2
+ * weeks or every 2 months.
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.
*/ - export const filterSensitiveLog = (obj: TagDescription): any => ({ - ...obj, - }); -} + OccurrenceDays?: number[]; -export interface DescribeTagsResult { /** - *The token to use to retrieve the next page of results. This value is
- * null
when there are no more results to return.
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.
*/ - NextToken?: string; + OccurrenceRelativeToEnd?: boolean; /** - *The tags.
+ *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.
The ID of the Traffic Mirror filter.
- */ - TrafficMirrorFilterIds?: string[]; - +/** + *Contains the parameters for DescribeScheduledInstanceAvailability.
+ */ +export interface DescribeScheduledInstanceAvailabilityRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -700,463 +677,519 @@ export interface DescribeTrafficMirrorFiltersRequest {
DryRun?: boolean;
/**
- *
One or more filters. The possible values are:
+ *The filters.
*
- * description
: The Traffic Mirror filter description.
availability-zone
- The Availability Zone (for example, us-west-2a
).
*
- * traffic-mirror-filter-id
: The ID of the Traffic Mirror filter.
instance-type
- The instance type (for example, c4.large
).
+ *
+ * network-platform
- The network platform (EC2-Classic
or EC2-VPC
).
+ * platform
- The platform (Linux/UNIX
or Windows
).
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The time period for the first schedule to start.
*/ - MaxResults?: number; + FirstSlotStartTimeRange: SlotDateTimeRangeRequest | undefined; /** - *The token for the next page of results.
+ *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.
The maximum available duration, in hours. This value must be greater than MinSlotDurationInHours
+ * and less than 1,720.
Information about one or more Traffic Mirror filters.
+ *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.
*/ - TrafficMirrorFilters?: TrafficMirrorFilter[]; + MinSlotDurationInHours?: number; /** - *The token to use to retrieve the next page of results. The value is null
when there are no more results to return.
The token for the next set of results.
*/ NextToken?: string; + + /** + *The schedule recurrence.
+ */ + Recurrence: ScheduledInstanceRecurrenceRequest | undefined; } -export namespace DescribeTrafficMirrorFiltersResult { +export namespace DescribeScheduledInstanceAvailabilityRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeTrafficMirrorFiltersResult): any => ({ + export const filterSensitiveLog = (obj: DescribeScheduledInstanceAvailabilityRequest): any => ({ ...obj, }); } -export interface DescribeTrafficMirrorSessionsRequest { +/** + *Describes the recurring schedule for a Scheduled Instance.
+ */ +export interface ScheduledInstanceRecurrence { /** - *The ID of the Traffic Mirror session.
+ *The frequency (Daily
, Weekly
, or Monthly
).
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The interval quantity. The interval unit depends on the value of frequency
. For example, every 2
+ * weeks or every 2 months.
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.
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).
*/ - Filters?: Filter[]; + OccurrenceDaySet?: number[]; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Indicates whether the occurrence is relative to the end of the specified week or month.
*/ - MaxResults?: number; + OccurrenceRelativeToEnd?: boolean; /** - *The token for the next page of results.
+ *The unit for occurrenceDaySet
(DayOfWeek
or DayOfMonth
).
Describes a schedule that is available for your Scheduled Instances.
+ */ +export interface ScheduledInstanceAvailability { /** - *Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. Alternatively, you can filter the results.
+ *The Availability Zone.
*/ - TrafficMirrorSessions?: TrafficMirrorSession[]; + AvailabilityZone?: string; /** - *The token to use to retrieve the next page of results. The value is null
when there are no more results to return.
The number of available instances.
*/ - NextToken?: string; -} + AvailableInstanceCount?: number; -export namespace DescribeTrafficMirrorSessionsResult { /** - * @internal + *The time period for the first schedule to start.
*/ - export const filterSensitiveLog = (obj: DescribeTrafficMirrorSessionsResult): any => ({ - ...obj, - }); -} + FirstSlotStartTime?: Date; -export interface DescribeTrafficMirrorTargetsRequest { /** - *The ID of the Traffic Mirror targets.
+ *The hourly price for a single instance.
*/ - TrafficMirrorTargetIds?: string[]; + HourlyPrice?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The instance type. You can specify one of the C3, C4, M4, or R3 instance types.
*/ - DryRun?: boolean; + InstanceType?: string; /** - *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.
The maximum term. The only possible value is 365 days.
*/ - Filters?: Filter[]; + MaxTermDurationInDays?: number; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The minimum term. The only possible value is 365 days.
*/ - MaxResults?: number; + MinTermDurationInDays?: number; /** - *The token for the next page of results.
+ *The network platform (EC2-Classic
or EC2-VPC
).
The platform (Linux/UNIX
or Windows
).
The purchase token. This token expires in two hours.
+ */ + PurchaseToken?: string; + + /** + *The schedule recurrence.
+ */ + Recurrence?: ScheduledInstanceRecurrence; + + /** + *The number of hours in the schedule.
+ */ + SlotDurationInHours?: number; + + /** + *The total number of hours for a single instance for the entire term.
+ */ + TotalScheduledInstanceHours?: number; +} + +export namespace ScheduledInstanceAvailability { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ScheduledInstanceAvailability): any => ({ + ...obj, + }); +} + +/** + *Contains the output of DescribeScheduledInstanceAvailability.
+ */ +export interface DescribeScheduledInstanceAvailabilityResult { + /** + *The token required to retrieve the next set of results. This value is null
when there are no more results to return.
Information about the available Scheduled Instances.
+ */ + ScheduledInstanceAvailabilitySet?: ScheduledInstanceAvailability[]; } -export namespace DescribeTrafficMirrorTargetsRequest { +export namespace DescribeScheduledInstanceAvailabilityResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeTrafficMirrorTargetsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeScheduledInstanceAvailabilityResult): any => ({ ...obj, }); } -export interface DescribeTrafficMirrorTargetsResult { +/** + *Describes the time period for a Scheduled Instance to start its first schedule.
+ */ +export interface SlotStartTimeRangeRequest { /** - *Information about one or more Traffic Mirror targets.
+ *The earliest date and time, in UTC, for the Scheduled Instance to start.
*/ - TrafficMirrorTargets?: TrafficMirrorTarget[]; + EarliestTime?: Date; /** - *The token to use to retrieve the next page of results. The value is null
when there are no more results to return.
The latest date and time, in UTC, for the Scheduled Instance to start.
*/ - NextToken?: string; + LatestTime?: Date; } -export namespace DescribeTrafficMirrorTargetsResult { +export namespace SlotStartTimeRangeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeTrafficMirrorTargetsResult): any => ({ + export const filterSensitiveLog = (obj: SlotStartTimeRangeRequest): any => ({ ...obj, }); } -export interface DescribeTransitGatewayAttachmentsRequest { +/** + *Contains the parameters for DescribeScheduledInstances.
+ */ +export interface DescribeScheduledInstancesRequest { /** - *The IDs of the attachments.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
One or more filters. The possible values are:
+ *The filters.
*
- * 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
.
availability-zone
- The Availability Zone (for example, us-west-2a
).
*
- * transit-gateway-attachment-id
- The ID of the attachment.
instance-type
- The instance type (for example, c4.large
).
*
- * transit-gateway-id
- The ID of the transit gateway.
network-platform
- The network platform (EC2-Classic
or EC2-VPC
).
*
- * transit-gateway-owner-id
- The ID of the Amazon Web Services account that owns the transit gateway.
platform
- The platform (Linux/UNIX
or Windows
).
* The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
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.
The token for the next page of results.
+ *The token for the next set of results.
*/ NextToken?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Scheduled Instance IDs.
*/ - DryRun?: boolean; + ScheduledInstanceIds?: string[]; + + /** + *The time period for the first schedule to start.
+ */ + SlotStartTimeRange?: SlotStartTimeRangeRequest; } -export namespace DescribeTransitGatewayAttachmentsRequest { +export namespace DescribeScheduledInstancesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeTransitGatewayAttachmentsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeScheduledInstancesRequest): any => ({ ...obj, }); } /** - *Describes an association.
+ *Describes a Scheduled Instance.
*/ -export interface TransitGatewayAttachmentAssociation { +export interface ScheduledInstance { /** - *The ID of the route table for the transit gateway.
+ *The Availability Zone.
*/ - TransitGatewayRouteTableId?: string; + AvailabilityZone?: string; /** - *The state of the association.
+ *The date when the Scheduled Instance was purchased.
*/ - State?: TransitGatewayAssociationState | string; -} + CreateDate?: Date; -export namespace TransitGatewayAttachmentAssociation { /** - * @internal + *The hourly price for a single instance.
*/ - export const filterSensitiveLog = (obj: TransitGatewayAttachmentAssociation): any => ({ - ...obj, - }); -} + HourlyPrice?: string; -/** - *Describes an attachment between a resource and a transit gateway.
- */ -export interface TransitGatewayAttachment { /** - *The ID of the attachment.
+ *The number of instances.
*/ - TransitGatewayAttachmentId?: string; + InstanceCount?: number; /** - *The ID of the transit gateway.
+ *The instance type.
*/ - TransitGatewayId?: string; + InstanceType?: string; /** - *The ID of the Amazon Web Services account that owns the transit gateway.
+ *The network platform (EC2-Classic
or EC2-VPC
).
The ID of the Amazon Web Services account that owns the resource.
+ *The time for the next schedule to start.
*/ - ResourceOwnerId?: string; + NextSlotStartTime?: Date; /** - *The resource type. Note that the tgw-peering
resource type has been deprecated.
The platform (Linux/UNIX
or Windows
).
The ID of the resource.
+ *The time that the previous schedule ended or will end.
*/ - ResourceId?: string; + PreviousSlotEndTime?: Date; /** - *The attachment state. Note that the initiating
state has been deprecated.
The schedule recurrence.
*/ - State?: TransitGatewayAttachmentState | string; + Recurrence?: ScheduledInstanceRecurrence; /** - *The association.
+ *The Scheduled Instance ID.
*/ - Association?: TransitGatewayAttachmentAssociation; + ScheduledInstanceId?: string; /** - *The creation time.
+ *The number of hours in the schedule.
*/ - CreationTime?: Date; + SlotDurationInHours?: number; /** - *The tags for the attachment.
+ *The end date for the Scheduled Instance.
*/ - Tags?: Tag[]; + TermEndDate?: Date; + + /** + *The start date for the Scheduled Instance.
+ */ + TermStartDate?: Date; + + /** + *The total number of hours for a single instance for the entire term.
+ */ + TotalScheduledInstanceHours?: number; } -export namespace TransitGatewayAttachment { +export namespace ScheduledInstance { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayAttachment): any => ({ + export const filterSensitiveLog = (obj: ScheduledInstance): any => ({ ...obj, }); } -export interface DescribeTransitGatewayAttachmentsResult { - /** - *Information about the attachments.
+/** + *Contains the output of DescribeScheduledInstances.
+ */ +export interface DescribeScheduledInstancesResult { + /** + *The token required to retrieve the next set of results. This value is null
when there are no more results to return.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the Scheduled Instances.
*/ - NextToken?: string; + ScheduledInstanceSet?: ScheduledInstance[]; } -export namespace DescribeTransitGatewayAttachmentsResult { +export namespace DescribeScheduledInstancesResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeTransitGatewayAttachmentsResult): any => ({ + export const filterSensitiveLog = (obj: DescribeScheduledInstancesResult): any => ({ ...obj, }); } -export interface DescribeTransitGatewayConnectPeersRequest { +export interface DescribeSecurityGroupReferencesRequest { /** - *The IDs of the Connect peers.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
One or more filters. The possible values are:
+ *The IDs of the security groups in your account.
+ */ + GroupId: string[] | undefined; +} + +export namespace DescribeSecurityGroupReferencesRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeSecurityGroupReferencesRequest): any => ({ + ...obj, + }); +} + +/** + *Describes a VPC with a security group that references your security group.
+ */ +export interface SecurityGroupReference { + /** + *The ID of your security group.
+ */ + GroupId?: string; + + /** + *The ID of the VPC with the referencing security group.
+ */ + ReferencingVpcId?: string; + + /** + *The ID of the VPC peering connection.
+ */ + VpcPeeringConnectionId?: string; +} + +export namespace SecurityGroupReference { + /** + * @internal + */ + export const filterSensitiveLog = (obj: SecurityGroupReference): any => ({ + ...obj, + }); +} + +export interface DescribeSecurityGroupReferencesResult { + /** + *Information about the VPCs with the referencing security groups.
+ */ + SecurityGroupReferenceSet?: SecurityGroupReference[]; +} + +export namespace DescribeSecurityGroupReferencesResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeSecurityGroupReferencesResult): any => ({ + ...obj, + }); +} + +export interface DescribeSecurityGroupRulesRequest { + /** + *One or more filters.
*
- * state
- The state of the Connect peer (pending
|
- * available
| deleting
|
- * deleted
).
+ * group-id
- The ID of the security group.
- * transit-gateway-attachment-id
- The ID of the attachment.
+ * security-group-rule-id
- The ID of the security group rule.
- * transit-gateway-connect-peer-id
- The ID of the Connect peer.
tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
* The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The IDs of the security group rules.
*/ - MaxResults?: number; + SecurityGroupRuleIds?: string[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The token for the next page of results.
@@ -1164,92 +1197,185 @@ export interface DescribeTransitGatewayConnectPeersRequest { NextToken?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The maximum number of results to return in a single call. To retrieve the remaining
+ * results, make another request with the returned NextToken
value. This value
+ * can be between 5 and 1000. If this parameter is not specified, then all results are
+ * returned.
Information about the Connect peers.
+ *Information about security group rules.
*/ - TransitGatewayConnectPeers?: TransitGatewayConnectPeer[]; + SecurityGroupRules?: SecurityGroupRule[]; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The IDs of the attachments.
- */ - TransitGatewayAttachmentIds?: string[]; - +export interface DescribeSecurityGroupsRequest { /** - *One or more filters. The possible values are:
- *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.
+ *
- * options.protocol
- The tunnel protocol (gre
).
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.
- * state
- The state of the attachment (initiating
|
- * initiatingRequest
| pendingAcceptance
|
- * rollingBack
| pending
| available
|
- * modifying
| deleting
| deleted
|
- * failed
| rejected
| rejecting
|
- * failing
).
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.
- * transit-gateway-attachment-id
- The ID of the
- * Connect attachment.
ip-permission.prefix-list-id
- The ID of a prefix list from which a security group rule allows inbound access.
*
- * transit-gateway-id
- The ID of the transit gateway.
ip-permission.protocol
- The IP protocol for an inbound security
+ * group rule (tcp
| udp
| icmp
, a
+ * protocol number, or -1 for all protocols).
*
- * transport-transit-gateway-attachment-id
- The ID of the transit gateway attachment from which the Connect attachment was created.
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
: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.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The IDs of the security groups. Required for security groups in a nondefault VPC.
+ *Default: Describes all of your security groups.
*/ - MaxResults?: number; + GroupIds?: string[]; /** - *The token for the next page of results.
+ *[EC2-Classic and default VPC only] The names of the security groups. You can specify either
+ * the security group name or the security group ID. For security groups in a nondefault VPC, use
+ * the group-name
filter to describe security groups by name.
Default: Describes all of your security groups.
*/ - NextToken?: string; + GroupNames?: string[]; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -1257,96 +1383,89 @@ export interface DescribeTransitGatewayConnectsRequest {
* Otherwise, it is UnauthorizedOperation
.
The token to request the next page of results.
+ */ + NextToken?: string; + + /** + *The maximum number of results to return in a single call. To retrieve the remaining
+ * results, make another request with the returned NextToken
value. This value
+ * can be between 5 and 1000. If this parameter is not specified, then all results are
+ * returned.
Describes a security group.
+ */ +export interface SecurityGroup { /** - *Information about the Connect attachments.
+ *A description of the security group.
*/ - TransitGatewayConnects?: TransitGatewayConnect[]; + Description?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The name of the security group.
*/ - NextToken?: string; -} + GroupName?: string; -export namespace DescribeTransitGatewayConnectsResult { /** - * @internal + *The inbound rules associated with the security group.
*/ - export const filterSensitiveLog = (obj: DescribeTransitGatewayConnectsResult): any => ({ - ...obj, - }); -} + IpPermissions?: IpPermission[]; -export interface DescribeTransitGatewayMulticastDomainsRequest { /** - *The ID of the transit gateway multicast domain.
+ *The Amazon Web Services account ID of the owner of the security group.
*/ - TransitGatewayMulticastDomainIds?: string[]; + OwnerId?: string; /** - *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.
The ID of the security group.
*/ - Filters?: Filter[]; + GroupId?: string; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
[VPC only] The outbound rules associated with the security group.
*/ - MaxResults?: number; + IpPermissionsEgress?: IpPermission[]; /** - *The token for the next page of results.
+ *Any tags assigned to the security group.
*/ - NextToken?: string; + Tags?: Tag[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
[VPC only] The ID of the VPC for the security group.
*/ - DryRun?: boolean; + VpcId?: string; } -export namespace DescribeTransitGatewayMulticastDomainsRequest { +export namespace SecurityGroup { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeTransitGatewayMulticastDomainsRequest): any => ({ + export const filterSensitiveLog = (obj: SecurityGroup): any => ({ ...obj, }); } -export interface DescribeTransitGatewayMulticastDomainsResult { +export interface DescribeSecurityGroupsResult { /** - *Information about the transit gateway multicast domains.
+ *Information about the security groups.
*/ - TransitGatewayMulticastDomains?: TransitGatewayMulticastDomain[]; + SecurityGroups?: SecurityGroup[]; /** *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
One or more IDs of the transit gateway peering attachments.
- */ - TransitGatewayAttachmentIds?: string[]; - - /** - *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
: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.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The snapshot attribute you would like to view.
*/ - MaxResults?: number; + Attribute: SnapshotAttributeName | string | undefined; /** - *The token for the next page of results.
+ *The ID of the EBS snapshot.
*/ - NextToken?: string; + SnapshotId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -1424,190 +1503,175 @@ export interface DescribeTransitGatewayPeeringAttachmentsRequest { DryRun?: boolean; } -export namespace DescribeTransitGatewayPeeringAttachmentsRequest { +export namespace DescribeSnapshotAttributeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeTransitGatewayPeeringAttachmentsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeSnapshotAttributeRequest): any => ({ ...obj, }); } -export interface DescribeTransitGatewayPeeringAttachmentsResult { +/** + *
Describes the user or group to be added or removed from the list of create volume + * permissions for a volume.
+ */ +export interface CreateVolumePermission { /** - *The transit gateway peering attachments.
+ *The group to be added or removed. The possible value is all
.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the Amazon Web Services account to be added or removed.
*/ - NextToken?: string; + UserId?: string; } -export namespace DescribeTransitGatewayPeeringAttachmentsResult { +export namespace CreateVolumePermission { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeTransitGatewayPeeringAttachmentsResult): any => ({ + export const filterSensitiveLog = (obj: CreateVolumePermission): any => ({ ...obj, }); } -export interface DescribeTransitGatewayRouteTablesRequest { - /** - *The IDs of the transit gateway route tables.
- */ - TransitGatewayRouteTableIds?: string[]; - - /** - *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.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
- */ - NextToken?: string; - - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The users and groups that have the permissions for creating volumes from the + * snapshot.
*/ - export const filterSensitiveLog = (obj: DescribeTransitGatewayRouteTablesRequest): any => ({ - ...obj, - }); -} + CreateVolumePermissions?: CreateVolumePermission[]; -export interface DescribeTransitGatewayRouteTablesResult { /** - *Information about the transit gateway route tables.
+ *The product codes.
*/ - TransitGatewayRouteTables?: TransitGatewayRouteTable[]; + ProductCodes?: ProductCode[]; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the EBS snapshot.
*/ - NextToken?: string; + SnapshotId?: string; } -export namespace DescribeTransitGatewayRouteTablesResult { +export namespace DescribeSnapshotAttributeResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeTransitGatewayRouteTablesResult): any => ({ + export const filterSensitiveLog = (obj: DescribeSnapshotAttributeResult): any => ({ ...obj, }); } -export interface DescribeTransitGatewaysRequest { - /** - *The IDs of the transit gateways.
- */ - TransitGatewayIds?: string[]; - +export interface DescribeSnapshotsRequest { /** - *One or more filters. The possible values are:
+ *The filters.
*
- * options.propagation-default-route-table-id
- The ID of the default propagation route table.
description
- A description of the snapshot.
*
- * options.amazon-side-asn
- The private ASN for the Amazon side of a BGP session.
encrypted
- Indicates whether the snapshot is encrypted
+ * (true
| false
)
*
- * options.association-default-route-table-id
- The ID of the default association route table.
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.
*
- * options.auto-accept-shared-attachments
- Indicates whether there is automatic acceptance of attachment requests (enable
| disable
).
owner-id
- The Amazon Web Services account ID of the owner. We recommend that
+ * you use the related parameter instead of this filter.
*
- * options.default-route-table-association
- Indicates whether resource attachments are automatically
- * associated with the default association route table (enable
| disable
).
progress
- The progress of the snapshot, as a percentage (for example,
+ * 80%).
*
- * options.default-route-table-propagation
- Indicates whether resource attachments automatically propagate
- * routes to the default propagation route table (enable
| disable
).
snapshot-id
- The snapshot ID.
*
- * options.dns-support
- Indicates whether DNS support is enabled (enable
| disable
).
start-time
- The time stamp when the snapshot was initiated.
*
- * options.vpn-ecmp-support
- Indicates whether Equal Cost Multipath Protocol support is enabled (enable
| disable
).
status
- The status of the snapshot (pending
|
+ * completed
| error
).
*
- * owner-id
- The ID of the Amazon Web Services account that owns the transit gateway.
storage-tier
- The storage tier of the snapshot (archive
|
+ * standard
).
*
- * state
- The state of the transit gateway (available
| deleted
| deleting
| modifying
| pending
).
tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
*
- * transit-gateway-id
- The ID of the transit gateway.
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.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The maximum number of snapshot results returned by DescribeSnapshots
in
+ * paginated output. When this parameter is used, DescribeSnapshots
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
+ * DescribeSnapshots
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. If this parameter is not used, then
+ * DescribeSnapshots
returns all results. You cannot specify this parameter and
+ * the snapshot IDs parameter in the same request.
The token for the next page of results.
+ *The NextToken
value returned from a previous paginated
+ * DescribeSnapshots
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.
Scopes the results to snapshots with the specified owners. You can specify a combination of
+ * Amazon Web Services account IDs, self
, and amazon
.
The IDs of the Amazon Web Services accounts that can create volumes from the snapshot.
+ */ + RestorableByUserIds?: string[]; + + /** + *The snapshot IDs.
+ *Default: Describes the snapshots for which you have create volume permissions.
+ */ + SnapshotIds?: string[]; + /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -1616,70 +1680,66 @@ export interface DescribeTransitGatewaysRequest {
DryRun?: boolean;
}
-export namespace DescribeTransitGatewaysRequest {
+export namespace DescribeSnapshotsRequest {
/**
* @internal
*/
- export const filterSensitiveLog = (obj: DescribeTransitGatewaysRequest): any => ({
+ export const filterSensitiveLog = (obj: DescribeSnapshotsRequest): any => ({
...obj,
});
}
-export interface DescribeTransitGatewaysResult {
+export interface DescribeSnapshotsResult {
/**
- *
Information about the transit gateways.
+ *Information about the snapshots.
*/ - TransitGateways?: TransitGateway[]; + Snapshots?: Snapshot[]; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The NextToken
value to include in a future DescribeSnapshots
+ * request. When the results of a DescribeSnapshots
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.
The IDs of the attachments.
- */ - TransitGatewayAttachmentIds?: string[]; - +export interface DescribeSnapshotTierStatusRequest { /** - *One or more filters. The possible values are:
+ *The filters.
*
- * 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.
snapshot-id
- The snapshot ID.
*
- * transit-gateway-id
- The ID of the transit gateway.
volume-id
- The ID of the volume the snapshot is for.
*
- * vpc-id
- The ID of the VPC.
last-tiering-operation
- The state of the last archive or restore action. (archiving
| archival_error
|
+ * archival_complete
| restoring
| restore_error
| restore_complete
)
* The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The token for the next page of results.
@@ -1687,97 +1747,116 @@ export interface DescribeTransitGatewayVpcAttachmentsRequest { NextToken?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Provides information about a snapshot's storage tier.
+ */ +export interface SnapshotTierStatus { /** - *Information about the VPC attachments.
+ *The ID of the snapshot.
*/ - TransitGatewayVpcAttachments?: TransitGatewayVpcAttachment[]; + SnapshotId?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the volume from which the snapshot was created.
*/ - NextToken?: string; -} + VolumeId?: string; -export namespace DescribeTransitGatewayVpcAttachmentsResult { /** - * @internal + *The state of the snapshot.
*/ - export const filterSensitiveLog = (obj: DescribeTransitGatewayVpcAttachmentsResult): any => ({ - ...obj, - }); -} + Status?: SnapshotState | string; -export interface DescribeTrunkInterfaceAssociationsRequest { /** - *The IDs of the associations.
+ *The ID of the Amazon Web Services account that owns the snapshot.
*/ - AssociationIds?: string[]; + OwnerId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The tags that are assigned to the snapshot.
*/ - DryRun?: boolean; + Tags?: Tag[]; /** - *One or more filters.
- *
- * gre-key
- The ID of a trunk interface association.
- * interface-protocol
- The interface protocol. Valid values are VLAN
and GRE
.
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.
The token for the next page of results.
+ *The date and time when the last archive or restore process was started.
*/ - NextToken?: string; + LastTieringStartTime?: Date; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The progress of the last archive or restore process, as a percentage.
*/ - MaxResults?: number; + LastTieringProgress?: number; + + /** + *The status of the last archive or restore process.
+ */ + LastTieringOperationStatus?: TieringOperationStatus | string; + + /** + *A message describing the status of the last archive or restore process.
+ */ + LastTieringOperationStatusDetail?: string; + + /** + *The date and time when the last archive process was completed.
+ */ + ArchivalCompleteTime?: Date; + + /** + *Only for archived snapshots that are temporarily restored. Indicates the date and + * time when a temporarily restored snapshot will be automatically re-archived.
+ */ + RestoreExpiryTime?: Date; } -export namespace DescribeTrunkInterfaceAssociationsRequest { +export namespace SnapshotTierStatus { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeTrunkInterfaceAssociationsRequest): any => ({ + export const filterSensitiveLog = (obj: SnapshotTierStatus): any => ({ ...obj, }); } -export interface DescribeTrunkInterfaceAssociationsResult { +export interface DescribeSnapshotTierStatusResult { /** - *Information about the trunk associations.
+ *Information about the snapshot's storage tier.
*/ - InterfaceAssociations?: TrunkInterfaceAssociation[]; + SnapshotTierStatuses?: SnapshotTierStatus[]; /** *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for DescribeSpotDatafeedSubscription.
+ */ +export interface DescribeSpotDatafeedSubscriptionRequest { /** - *The attribute of the volume. This parameter is required.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The ID of the volume.
+ * @internal */ - VolumeId: string | undefined; + export const filterSensitiveLog = (obj: DescribeSpotDatafeedSubscriptionRequest): any => ({ + ...obj, + }); +} +/** + *Contains the output of DescribeSpotDatafeedSubscription.
+ */ +export interface DescribeSpotDatafeedSubscriptionResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Spot Instance data feed subscription.
*/ - DryRun?: boolean; + SpotDatafeedSubscription?: SpotDatafeedSubscription; } -export namespace DescribeVolumeAttributeRequest { +export namespace DescribeSpotDatafeedSubscriptionResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVolumeAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeSpotDatafeedSubscriptionResult): any => ({ ...obj, }); } -export interface DescribeVolumeAttributeResult { +/** + *Contains the parameters for DescribeSpotFleetInstances.
+ */ +export interface DescribeSpotFleetInstancesRequest { /** - *The state of autoEnableIO
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
.
A list of product codes.
+ *The maximum number of results to return in a single call. Specify a value between 1
+ * and 1000. The default value is 1000. To retrieve the remaining results, make another
+ * call with the returned NextToken
value.
The ID of the volume.
+ *The token for the next set of results.
*/ - VolumeId?: string; + NextToken?: string; + + /** + *The ID of the Spot Fleet request.
+ */ + SpotFleetRequestId: string | undefined; } -export namespace DescribeVolumeAttributeResult { +export namespace DescribeSpotFleetInstancesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVolumeAttributeResult): any => ({ + export const filterSensitiveLog = (obj: DescribeSpotFleetInstancesRequest): any => ({ ...obj, }); } -export interface DescribeVolumesRequest { +/** + *Contains the output of DescribeSpotFleetInstances.
+ */ +export interface DescribeSpotFleetInstancesResponse { /** - *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
: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
)
The running instances. This list is refreshed periodically and might be out of + * date.
*/ - Filters?: Filter[]; + ActiveInstances?: ActiveInstance[]; /** - *The volume IDs.
+ *The token required to retrieve the next set of results. This value is
+ * null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the Spot Fleet request.
+ */ + SpotFleetRequestId?: string; +} + +export namespace DescribeSpotFleetInstancesResponse { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeSpotFleetInstancesResponse): any => ({ + ...obj, + }); +} + +export enum EventType { + BATCH_CHANGE = "fleetRequestChange", + ERROR = "error", + INFORMATION = "information", + INSTANCE_CHANGE = "instanceChange", +} + +/** + *Contains the parameters for DescribeSpotFleetRequestHistory.
+ */ +export interface DescribeSpotFleetRequestHistoryRequest { + /** + *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The maximum number of volume results returned by DescribeVolumes
in paginated
- * output. When this parameter is used, DescribeVolumes
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
- * DescribeVolumes
request with the returned NextToken
value. This
- * value can be between 5 and 500; if MaxResults
is given a value larger than 500,
- * only 500 results are returned. If this parameter is not used, then
- * DescribeVolumes
returns all results. You cannot specify this parameter and the
- * volume IDs parameter in the same request.
The type of events to describe. By default, all events are described.
+ */ + EventType?: EventType | string; + + /** + *The maximum number of results to return in a single call. Specify a value between 1
+ * and 1000. The default value is 1000. To retrieve the remaining results, make another
+ * call with the returned NextToken
value.
The NextToken
value returned from a previous paginated
- * DescribeVolumes
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.
The token for the next set of results.
*/ NextToken?: string; + + /** + *The ID of the Spot Fleet request.
+ */ + SpotFleetRequestId: string | undefined; + + /** + *The starting date and time for the events, in UTC format (for example, + * YYYY-MM-DDTHH:MM:SSZ).
+ */ + StartTime: Date | undefined; } -export namespace DescribeVolumesRequest { +export namespace DescribeSpotFleetRequestHistoryRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVolumesRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeSpotFleetRequestHistoryRequest): any => ({ ...obj, }); } -export interface DescribeVolumesResult { +/** + *Describes an event in the history of the Spot Fleet request.
+ */ +export interface HistoryRecord { /** - *Information about the volumes.
+ *Information about the event.
*/ - Volumes?: Volume[]; + EventInformation?: EventInformation; /** - *The NextToken
value to include in a future DescribeVolumes
- * request. When the results of a DescribeVolumes
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.
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.
The date and time of the event, in UTC format (for example, + * YYYY-MM-DDTHH:MM:SSZ).
+ */ + Timestamp?: Date; } -export namespace DescribeVolumesResult { +export namespace HistoryRecord { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVolumesResult): any => ({ + export const filterSensitiveLog = (obj: HistoryRecord): any => ({ ...obj, }); } -export interface DescribeVolumesModificationsRequest { +/** + *Contains the output of DescribeSpotFleetRequestHistory.
+ */ +export interface DescribeSpotFleetRequestHistoryResponse { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the events in the history of the Spot Fleet request.
*/ - DryRun?: boolean; + HistoryRecords?: HistoryRecord[]; /** - *The IDs of the volumes.
+ *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 results, this value is not
+ * present.
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.
The token required to retrieve the next set of results. This value is
+ * null
when there are no more results to return.
The nextToken
value returned by a previous paginated request.
The ID of the Spot Fleet request.
*/ - NextToken?: string; + SpotFleetRequestId?: string; /** - *The maximum number of results (up to a limit of 500) to be returned in a paginated - * request.
+ *The starting date and time for the events, in UTC format (for example, + * YYYY-MM-DDTHH:MM:SSZ).
*/ - MaxResults?: number; + StartTime?: Date; } -export namespace DescribeVolumesModificationsRequest { +export namespace DescribeSpotFleetRequestHistoryResponse { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVolumesModificationsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeSpotFleetRequestHistoryResponse): any => ({ ...obj, }); } -export type VolumeModificationState = "completed" | "failed" | "modifying" | "optimizing"; - /** - *Describes the modification status of an EBS volume.
- *If the volume has never been modified, some element values will be null.
+ *Contains the parameters for DescribeSpotFleetRequests.
*/ -export interface VolumeModification { +export interface DescribeSpotFleetRequestsRequest { /** - *The ID of the volume.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The current modification state. The modification state is null for unmodified - * volumes.
+ *The maximum number of results to return in a single call. Specify a value between 1
+ * and 1000. The default value is 1000. To retrieve the remaining results, make another
+ * call with the returned NextToken
value.
A status message about the modification progress or failure.
+ *The token for the next set of results.
*/ - StatusMessage?: string; + NextToken?: string; /** - *The target size of the volume, in GiB.
+ *The IDs of the Spot Fleet requests.
*/ - TargetSize?: number; + SpotFleetRequestIds?: string[]; +} +export namespace DescribeSpotFleetRequestsRequest { /** - *The target IOPS rate of the volume.
+ * @internal */ - TargetIops?: number; + export const filterSensitiveLog = (obj: DescribeSpotFleetRequestsRequest): any => ({ + ...obj, + }); +} + +export enum ExcessCapacityTerminationPolicy { + DEFAULT = "default", + NO_TERMINATION = "noTermination", +} +/** + *Describes whether monitoring is enabled.
+ */ +export interface SpotFleetMonitoring { /** - *The target EBS volume type of the volume.
+ *Enables monitoring for the instance.
+ *Default: false
+ *
The target throughput of the volume, in MiB/s.
+ * @internal */ - TargetThroughput?: number; + export const filterSensitiveLog = (obj: SpotFleetMonitoring): any => ({ + ...obj, + }); +} +/** + *Describes a network interface.
+ */ +export interface InstanceNetworkInterfaceSpecification { /** - *The target setting for Amazon EBS Multi-Attach.
+ *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
.
The original size of the volume, in GiB.
+ *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.
The original IOPS rate of the volume.
+ *The description of the network interface. Applies only if creating a network interface when launching an instance.
*/ - OriginalIops?: number; + Description?: string; /** - *The original EBS volume type of the volume.
+ *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.
*/ - OriginalVolumeType?: VolumeType | string; + DeviceIndex?: number; /** - *The original throughput of the volume, in MiB/s.
+ *The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
*/ - OriginalThroughput?: number; + Groups?: string[]; /** - *The original setting for Amazon EBS Multi-Attach.
+ *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.
*/ - OriginalMultiAttachEnabled?: boolean; + Ipv6AddressCount?: number; /** - *The modification progress, from 0 to 100 percent complete.
+ *One or more 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.
*/ - Progress?: number; + Ipv6Addresses?: InstanceIpv6Address[]; /** - *The modification start time.
+ *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.
*/ - StartTime?: Date; + NetworkInterfaceId?: string; /** - *The modification completion or failure time.
+ *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.
*/ - EndTime?: Date; -} + PrivateIpAddress?: string; -export namespace VolumeModification { /** - * @internal + *One or more 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.
*/ - export const filterSensitiveLog = (obj: VolumeModification): any => ({ - ...obj, - }); -} + PrivateIpAddresses?: PrivateIpAddressSpecification[]; -export interface DescribeVolumesModificationsResult { /** - *Information about the volume modifications.
+ *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.
*/ - VolumesModifications?: VolumeModification[]; + SecondaryPrivateIpAddressCount?: number; /** - *Token for pagination, null if there are no more results
+ *The ID of the subnet associated with the network interface. Applies only if creating a network interface when launching an instance.
*/ - NextToken?: string; -} + SubnetId?: string; -export namespace DescribeVolumesModificationsResult { /** - * @internal + *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 addresses in the Amazon Web Services Wavelength Developer Guide.
*/ - export const filterSensitiveLog = (obj: DescribeVolumesModificationsResult): any => ({ - ...obj, - }); -} + AssociateCarrierIpAddress?: boolean; -export interface DescribeVolumeStatusRequest { /** - *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
).
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.
Valid values: interface
| efa
+ *
The maximum number of volume results returned by DescribeVolumeStatus
in
- * paginated output. When this parameter is used, the request 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
- * 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.
- * If this parameter is not used, then DescribeVolumeStatus
returns all results. You
- * cannot specify this parameter and the volume IDs parameter in the same request.
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.
*/ - MaxResults?: number; + NetworkCardIndex?: number; /** - *The NextToken
value to include in a future DescribeVolumeStatus
- * request. When the results of the 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.
One or more IPv4 delegated prefixes to be assigned to the network interface. You cannot
+ * use this option if you use the Ipv4PrefixCount
option.
The IDs of the volumes.
- *Default: Describes all your volumes.
+ *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.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more IPv6 delegated prefixes to be assigned to the network interface. You cannot
+ * use this option if you use the Ipv6PrefixCount
option.
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.
Describes a volume status operation code.
+ *Describes Spot Instance placement.
*/ -export interface VolumeStatusAction { +export interface SpotPlacement { /** - *The code identifying the operation, for example, enable-volume-io
.
A description of the operation.
+ *The Availability Zone.
+ *[Spot Fleet only] To specify multiple Availability Zones, separate them using commas; + * for example, "us-west-2a, us-west-2b".
*/ - Description?: string; + AvailabilityZone?: string; /** - *The ID of the event associated with this operation.
+ *The name of the placement group.
*/ - EventId?: string; + GroupName?: string; /** - *The event type associated with this operation.
+ *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.
Information about the instances to which the volume is attached.
+ *The tags for a Spot Fleet resource.
*/ -export interface VolumeStatusAttachmentStatus { +export interface SpotFleetTagSpecification { /** - *The maximum IOPS supported by the attached instance.
+ *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
+ * .
The ID of the attached instance.
+ *The tags.
*/ - InstanceId?: string; + Tags?: Tag[]; } -export namespace VolumeStatusAttachmentStatus { +export namespace SpotFleetTagSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: VolumeStatusAttachmentStatus): any => ({ + export const filterSensitiveLog = (obj: SpotFleetTagSpecification): any => ({ ...obj, }); } /** - *Describes a volume status event.
+ *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.
A description of the event.
- */ - Description?: string; - +export interface SpotFleetLaunchSpecification { /** - *The ID of this event.
+ *One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
*/ - EventId?: string; + SecurityGroups?: GroupIdentifier[]; /** - *The type of this event.
+ *Deprecated.
*/ - EventType?: string; + AddressingType?: string; /** - *The latest end time of the event.
+ *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.
*/ - NotAfter?: Date; + BlockDeviceMappings?: BlockDeviceMapping[]; /** - *The earliest start time of the event.
+ *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
+ *
The ID of the instance associated with the event.
+ *The IAM instance profile.
*/ - InstanceId?: string; -} + IamInstanceProfile?: IamInstanceProfileSpecification; -export namespace VolumeStatusEvent { /** - * @internal + *The ID of the AMI.
*/ - export const filterSensitiveLog = (obj: VolumeStatusEvent): any => ({ - ...obj, - }); -} - -export type VolumeStatusName = "io-enabled" | "io-performance"; + ImageId?: string; -/** - *Describes a volume status.
- */ -export interface VolumeStatusDetails { /** - *The name of the volume status.
+ *The instance type.
*/ - Name?: VolumeStatusName | string; + InstanceType?: _InstanceType | string; /** - *The intended status of the volume status.
+ *The ID of the kernel.
*/ - Status?: string; -} + KernelId?: string; -export namespace VolumeStatusDetails { /** - * @internal + *The name of the key pair.
*/ - export const filterSensitiveLog = (obj: VolumeStatusDetails): any => ({ - ...obj, - }); -} - -export type VolumeStatusInfoStatus = "impaired" | "insufficient-data" | "ok"; + KeyName?: string; -/** - *Describes the status of a volume.
- */ -export interface VolumeStatusInfo { /** - *The details of the volume status.
+ *Enable or disable monitoring for the instances.
*/ - Details?: VolumeStatusDetails[]; + Monitoring?: SpotFleetMonitoring; /** - *The status of the volume.
+ *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.
The placement information.
*/ - export const filterSensitiveLog = (obj: VolumeStatusInfo): any => ({ - ...obj, - }); -} + Placement?: SpotPlacement; -/** - *Describes the volume status.
- */ -export interface VolumeStatusItem { /** - *The details of the operation.
+ *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.
*/ - Actions?: VolumeStatusAction[]; + RamdiskId?: string; /** - *The Availability Zone of the volume.
+ *The maximum price per unit hour that you are willing to pay for a Spot Instance.
+ * If this value is not specified, the default is the Spot price specified for the fleet.
+ * To determine the Spot price per unit hour, divide the Spot price by the
+ * value of WeightedCapacity
.
The Amazon Resource Name (ARN) of the Outpost.
+ *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".
*/ - OutpostArn?: string; + SubnetId?: string; /** - *A list of events associated with the volume.
+ *The Base64-encoded user data that instances use when starting up.
*/ - Events?: VolumeStatusEvent[]; + UserData?: string; /** - *The volume ID.
+ *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.
*/ - VolumeId?: string; + WeightedCapacity?: number; /** - *The volume status.
+ *The tags to apply during creation.
*/ - VolumeStatus?: VolumeStatusInfo; + TagSpecifications?: SpotFleetTagSpecification[]; /** - *Information about the instances to which the volume is attached.
+ *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
+ * InstanceTypes
.
Describes overrides for a launch template.
+ */ +export interface LaunchTemplateOverrides { /** - *The token to use to retrieve the next page of results. This value is null
- * when there are no more results to return.
The instance type.
*/ - NextToken?: string; + InstanceType?: _InstanceType | string; /** - *Information about the status of the volumes.
+ *The maximum price per unit hour that you are willing to pay for a Spot + * Instance.
*/ - VolumeStatuses?: VolumeStatusItem[]; -} + SpotPrice?: string; -export namespace DescribeVolumeStatusResult { /** - * @internal + *The ID of the subnet in which to launch the instances.
*/ - export const filterSensitiveLog = (obj: DescribeVolumeStatusResult): any => ({ - ...obj, - }); -} + SubnetId?: string; -export type VpcAttributeName = "enableDnsHostnames" | "enableDnsSupport"; + /** + *The Availability Zone in which to launch the instances.
+ */ + AvailabilityZone?: string; -export interface DescribeVpcAttributeRequest { /** - *The VPC attribute.
+ *The number of units provided by the specified instance type.
*/ - Attribute: VpcAttributeName | string | undefined; + WeightedCapacity?: number; /** - *The ID of the VPC.
+ *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.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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
+ * InstanceTypes
.
The ID of the VPC.
- */ - VpcId?: string; - +/** + *Describes a launch template and overrides.
+ */ +export interface LaunchTemplateConfig { /** - *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.
The launch template.
*/ - EnableDnsHostnames?: AttributeBooleanValue; + LaunchTemplateSpecification?: FleetLaunchTemplateSpecification; /** - *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.
Any parameters that you specify override the same parameters in the launch + * template.
*/ - EnableDnsSupport?: AttributeBooleanValue; + Overrides?: LaunchTemplateOverrides[]; } -export namespace DescribeVpcAttributeResult { +export namespace LaunchTemplateConfig { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVpcAttributeResult): any => ({ + export const filterSensitiveLog = (obj: LaunchTemplateConfig): any => ({ ...obj, }); } -export interface DescribeVpcClassicLinkRequest { +/** + *Describes a Classic Load Balancer.
+ */ +export interface ClassicLoadBalancer { /** - *One or more filters.
- *
- * is-classic-link-enabled
- Whether the VPC is enabled for ClassicLink
- * (true
| false
).
- * tag
: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.
The name of the load balancer.
*/ - Filters?: Filter[]; + Name?: string; +} +export namespace ClassicLoadBalancer { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes the Classic Load Balancers to attach to a Spot Fleet. Spot Fleet registers + * the running Spot Instances with these Classic Load Balancers.
+ */ +export interface ClassicLoadBalancersConfig { /** - *One or more VPCs for which you want to describe the ClassicLink status.
+ *One or more Classic Load Balancers.
*/ - VpcIds?: string[]; + ClassicLoadBalancers?: ClassicLoadBalancer[]; } -export namespace DescribeVpcClassicLinkRequest { +export namespace ClassicLoadBalancersConfig { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVpcClassicLinkRequest): any => ({ + export const filterSensitiveLog = (obj: ClassicLoadBalancersConfig): any => ({ ...obj, }); } /** - *Describes whether a VPC is enabled for ClassicLink.
+ *Describes a load balancer target group.
*/ -export interface VpcClassicLink { +export interface TargetGroup { /** - *Indicates whether the VPC is enabled for ClassicLink.
+ *The Amazon Resource Name (ARN) of the target group.
*/ - ClassicLinkEnabled?: boolean; + Arn?: string; +} +export namespace TargetGroup { /** - *Any tags assigned to the VPC.
+ * @internal */ - Tags?: Tag[]; + export const filterSensitiveLog = (obj: TargetGroup): any => ({ + ...obj, + }); +} +/** + *Describes the target groups to attach to a Spot Fleet. Spot Fleet registers the + * running Spot Instances with these target groups.
+ */ +export interface TargetGroupsConfig { /** - *The ID of the VPC.
+ *One or more target groups.
*/ - VpcId?: string; + TargetGroups?: TargetGroup[]; } -export namespace VpcClassicLink { +export namespace TargetGroupsConfig { /** * @internal */ - export const filterSensitiveLog = (obj: VpcClassicLink): any => ({ + export const filterSensitiveLog = (obj: TargetGroupsConfig): any => ({ ...obj, }); } -export interface DescribeVpcClassicLinkResult { +/** + *Describes the Classic Load Balancers and target groups to attach to a Spot Fleet + * request.
+ */ +export interface LoadBalancersConfig { /** - *The ClassicLink status of one or more VPCs.
+ *The Classic Load Balancers.
*/ - Vpcs?: VpcClassicLink[]; + ClassicLoadBalancersConfig?: ClassicLoadBalancersConfig; + + /** + *The target groups.
+ */ + TargetGroupsConfig?: TargetGroupsConfig; } -export namespace DescribeVpcClassicLinkResult { +export namespace LoadBalancersConfig { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVpcClassicLinkResult): any => ({ + export const filterSensitiveLog = (obj: LoadBalancersConfig): any => ({ ...obj, }); } -export interface DescribeVpcClassicLinkDnsSupportRequest { - /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
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.
+ */ +export interface SpotCapacityRebalance { /** - *The token for the next page of results.
+ *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.
One or more VPC IDs.
+ *The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot + * Instance after launching a new replacement Spot Instance.
+ *Valid only when ReplacementStrategy
is set to launch-before-terminate
.
Valid values: Minimum value of 120
seconds. Maximum value of 7200
seconds.
Describes the ClassicLink DNS support status of a VPC.
+ *The strategies for managing your Spot Instances that are at an elevated risk of being + * interrupted.
*/ -export interface ClassicLinkDnsSupport { - /** - *Indicates whether ClassicLink DNS support is enabled for the VPC.
- */ - ClassicLinkDnsSupported?: boolean; - +export interface SpotMaintenanceStrategies { /** - *The ID of the VPC.
+ *The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an + * elevated risk of being interrupted.
*/ - VpcId?: string; + CapacityRebalance?: SpotCapacityRebalance; } -export namespace ClassicLinkDnsSupport { +export namespace SpotMaintenanceStrategies { /** * @internal */ - export const filterSensitiveLog = (obj: ClassicLinkDnsSupport): any => ({ + export const filterSensitiveLog = (obj: SpotMaintenanceStrategies): any => ({ ...obj, }); } -export interface DescribeVpcClassicLinkDnsSupportResult { +/** + *Describes the configuration of a Spot Fleet request.
+ */ +export interface SpotFleetRequestConfigData { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Indicates how to allocate the target Spot Instance capacity across the Spot Instance pools specified by + * the Spot Fleet request.
+ *If the allocation strategy is lowestPrice
, Spot Fleet launches instances from
+ * the Spot Instance pools with the lowest price. This is the default allocation strategy.
If the allocation strategy is diversified
, Spot Fleet launches instances from
+ * all the Spot Instance pools that you specify.
If the allocation strategy is capacityOptimized
(recommended), Spot Fleet
+ * launches instances from Spot Instance pools with optimal capacity for the number of instances
+ * that are launching. 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.
Information about the ClassicLink DNS support status of the VPCs.
+ *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
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the notification.
+ *The strategies for managing your Spot Instances that are at an elevated risk of being + * interrupted.
*/ - ConnectionNotificationId?: string; + SpotMaintenanceStrategies?: SpotMaintenanceStrategies; /** - *One or more 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.
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.
*/ - Filters?: Filter[]; + ClientToken?: string; /** - *The maximum number of results to return in a single call. To retrieve the remaining
- * results, make another request with the returned NextToken
value.
Indicates whether running Spot Instances should be terminated if you decrease the + * target capacity of the Spot Fleet request below the current size of the Spot + * Fleet.
*/ - MaxResults?: number; + ExcessCapacityTerminationPolicy?: ExcessCapacityTerminationPolicy | string; /** - *The token to request the next page of results.
+ *The number of units fulfilled by this request compared to the set target capacity. You + * cannot set this value.
*/ - NextToken?: string; -} + FulfilledCapacity?: number; -export namespace DescribeVpcEndpointConnectionNotificationsRequest { /** - * @internal + *The number of On-Demand units fulfilled by this request compared to the set target + * On-Demand capacity.
*/ - export const filterSensitiveLog = (obj: DescribeVpcEndpointConnectionNotificationsRequest): any => ({ - ...obj, - }); -} + OnDemandFulfilledCapacity?: number; -export interface DescribeVpcEndpointConnectionNotificationsResult { /** - *One or more notifications.
+ *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 for Linux Instances. 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
.
The token to use to retrieve the next page of results. This value is
- * null
when there are no more results to return.
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
.
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
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The maximum price per unit hour that you are willing to pay for a Spot Instance. The + * default is the On-Demand price.
*/ - DryRun?: boolean; + SpotPrice?: string; /** - *One or more filters.
- *
- * 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.
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.
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.
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.
The token to retrieve the next page of results.
+ *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.
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.
Describes a VPC endpoint connection to a service.
- */ -export interface VpcEndpointConnection { /** - *The ID of the service to which the endpoint is connected.
+ *Indicates whether running Spot Instances are terminated when the Spot Fleet request + * expires.
*/ - ServiceId?: string; + TerminateInstancesWithExpiration?: boolean; /** - *The ID of the VPC endpoint.
+ *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.
The ID of the Amazon Web Services account that owns the VPC endpoint.
+ *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.
*/ - VpcEndpointOwner?: string; + ValidFrom?: Date; /** - *The state of the VPC endpoint.
+ *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.
*/ - VpcEndpointState?: State | string; + ValidUntil?: Date; /** - *The date and time that the VPC endpoint was created.
+ *Indicates whether Spot Fleet should replace unhealthy instances.
*/ - CreationTimestamp?: Date; + ReplaceUnhealthyInstances?: boolean; /** - *The DNS entries for the VPC endpoint.
+ *The behavior when a Spot Instance is interrupted. The default is
+ * terminate
.
The Amazon Resource Names (ARNs) of the network load balancers for the service.
+ *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.
*/ - NetworkLoadBalancerArns?: string[]; + LoadBalancersConfig?: LoadBalancersConfig; /** - *The Amazon Resource Names (ARNs) of the Gateway Load Balancers for the service.
+ *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.
*/ - GatewayLoadBalancerArns?: string[]; -} + InstancePoolsToUseCount?: number; -export namespace VpcEndpointConnection { /** - * @internal + *Reserved.
*/ - export const filterSensitiveLog = (obj: VpcEndpointConnection): any => ({ - ...obj, - }); -} + Context?: string; -export interface DescribeVpcEndpointConnectionsResult { /** - *Information about one or more VPC endpoint connections.
+ *The unit for the target capacity.
+ *Default: units
(translates to number of instances)
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
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.
Contains the parameters for DescribeVpcEndpoints.
+ *Describes a Spot Fleet request.
*/ -export interface DescribeVpcEndpointsRequest { +export interface SpotFleetRequestConfig { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
One or more endpoint IDs.
+ *The creation date and time of the request.
*/ - VpcEndpointIds?: string[]; + CreateTime?: Date; /** - *One or more filters.
- *
- * service-name
- The name of the service.
- * 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
).
- * tag
: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.
The configuration of the Spot Fleet request.
*/ - Filters?: Filter[]; + SpotFleetRequestConfig?: SpotFleetRequestConfigData; /** - *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.
+ *The ID of the Spot Fleet request.
*/ - MaxResults?: number; + SpotFleetRequestId?: string; /** - *The token for the next set of items to return. (You received this token from a prior call.)
+ *The state of the Spot Fleet request.
*/ - NextToken?: string; + SpotFleetRequestState?: BatchState | string; + + /** + *The tags for a Spot Fleet resource.
+ */ + Tags?: Tag[]; } -export namespace DescribeVpcEndpointsRequest { +export namespace SpotFleetRequestConfig { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVpcEndpointsRequest): any => ({ + export const filterSensitiveLog = (obj: SpotFleetRequestConfig): any => ({ ...obj, }); } /** - *Contains the output of DescribeVpcEndpoints.
+ *Contains the output of DescribeSpotFleetRequests.
*/ -export interface DescribeVpcEndpointsResult { +export interface DescribeSpotFleetRequestsResponse { /** - *Information about the endpoints.
+ *The token required to retrieve the next set of results. This value is
+ * null
when there are no more results to return.
The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
+ *Information about the configuration of your Spot Fleet.
*/ - NextToken?: string; + SpotFleetRequestConfigs?: SpotFleetRequestConfig[]; } -export namespace DescribeVpcEndpointsResult { +export namespace DescribeSpotFleetRequestsResponse { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVpcEndpointsResult): any => ({ + export const filterSensitiveLog = (obj: DescribeSpotFleetRequestsResponse): any => ({ ...obj, }); } -export interface DescribeVpcEndpointServiceConfigurationsRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The IDs of one or more services.
- */ - ServiceIds?: string[]; - +/** + *Contains the parameters for DescribeSpotInstanceRequests.
+ */ +export interface DescribeSpotInstanceRequestsRequest { /** *One or more filters.
- *
- * service-name
- The name of the service.
+ * availability-zone-group
- The Availability Zone group.
- * service-id
- The ID of the service.
+ * create-time
- The time stamp when the Spot Instance request was
+ * created.
- * service-state
- The state of the service (Pending
|
- * Available
| Deleting
| Deleted
|
- * Failed
).
+ * fault-code
- The fault code related to the request.
- * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
+ * 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, sc1
for 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:
- 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.
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.
Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The token to retrieve the next page of results.
+ *One or more Spot Instance request IDs.
+ */ + SpotInstanceRequestIds?: string[]; + + /** + *The token to request the next set of results. This value is null
when
+ * there are no more results to return.
The maximum number of results to return in a single call. Specify a value between 5
+ * and 1000. To retrieve the remaining results, make another call with the returned
+ * NextToken
value.
Information about one or more services.
- */ - ServiceConfigurations?: ServiceConfiguration[]; - +/** + *Describes the monitoring of an instance.
+ */ +export interface RunInstancesMonitoringEnabled { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is + * enabled.
*/ - NextToken?: string; + Enabled: boolean | undefined; } -export namespace DescribeVpcEndpointServiceConfigurationsResult { +export namespace RunInstancesMonitoringEnabled { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVpcEndpointServiceConfigurationsResult): any => ({ + export const filterSensitiveLog = (obj: RunInstancesMonitoringEnabled): any => ({ ...obj, }); } -export interface DescribeVpcEndpointServicePermissionsRequest { +/** + *Describes the launch specification for an instance.
+ */ +export interface LaunchSpecification { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Base64-encoded user data for the instance.
*/ - DryRun?: boolean; + UserData?: string; /** - *The ID of the service.
+ *One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
*/ - ServiceId: string | undefined; + SecurityGroups?: GroupIdentifier[]; /** - *One or more filters.
- *
- * principal
- The ARN of the principal.
- * principal-type
- The principal type (All
|
- * Service
| OrganizationUnit
| Account
- * | User
| Role
).
Deprecated.
*/ - Filters?: Filter[]; + AddressingType?: string; /** - *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.
One or more block device mapping entries.
*/ - MaxResults?: number; + BlockDeviceMappings?: BlockDeviceMapping[]; /** - *The token to retrieve the next page of results.
+ *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
+ *
The IAM instance profile.
*/ - export const filterSensitiveLog = (obj: DescribeVpcEndpointServicePermissionsRequest): any => ({ - ...obj, - }); -} + IamInstanceProfile?: IamInstanceProfileSpecification; -export interface DescribeVpcEndpointServicePermissionsResult { /** - *Information about one or more allowed principals.
+ *The ID of the AMI.
*/ - AllowedPrincipals?: AllowedPrincipal[]; + ImageId?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The instance type.
*/ - NextToken?: string; -} + InstanceType?: _InstanceType | string; -export namespace DescribeVpcEndpointServicePermissionsResult { /** - * @internal + *The ID of the kernel.
*/ - export const filterSensitiveLog = (obj: DescribeVpcEndpointServicePermissionsResult): any => ({ - ...obj, - }); -} + KernelId?: string; -/** - *Contains the parameters for DescribeVpcEndpointServices.
- */ -export interface DescribeVpcEndpointServicesRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The name of the key pair.
*/ - DryRun?: boolean; + KeyName?: string; /** - *One or more service names.
+ *One or more network interfaces. If you specify a network interface, you must specify + * subnet IDs and security group IDs using the network interface.
*/ - ServiceNames?: string[]; + NetworkInterfaces?: InstanceNetworkInterfaceSpecification[]; /** - *One or more filters.
- *
- * service-name
- The name of the service.
- * service-type
- The type of service (Interface
|
- * Gateway
).
- * tag
: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.
The placement information for the instance.
*/ - Filters?: Filter[]; + Placement?: SpotPlacement; /** - *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.
+ *The ID of the RAM disk.
*/ - MaxResults?: number; + RamdiskId?: string; /** - *The token for the next set of items to return. (You received this token from a prior call.)
+ *The ID of the subnet in which to launch the instance.
*/ - NextToken?: string; + SubnetId?: string; + + /** + *Describes the monitoring of an instance.
+ */ + Monitoring?: RunInstancesMonitoringEnabled; } -export namespace DescribeVpcEndpointServicesRequest { +export namespace LaunchSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVpcEndpointServicesRequest): any => ({ + export const filterSensitiveLog = (obj: LaunchSpecification): any => ({ ...obj, }); } +export type SpotInstanceState = "active" | "cancelled" | "closed" | "failed" | "open"; + /** - *Information about the Private DNS name for interface endpoints.
+ *Describes the status of a Spot Instance request.
*/ -export interface PrivateDnsDetails { +export interface SpotInstanceStatus { /** - *The private DNS name assigned to the VPC endpoint service.
+ *The status code. For a list of status codes, see Spot status codes in the Amazon EC2 User Guide for Linux Instances.
*/ - PrivateDnsName?: string; + Code?: string; + + /** + *The description for the status code.
+ */ + Message?: string; + + /** + *The date and time of the most recent status update, in UTC format (for example, + * YYYY-MM-DDTHH:MM:SSZ).
+ */ + UpdateTime?: Date; } -export namespace PrivateDnsDetails { +export namespace SpotInstanceStatus { /** * @internal */ - export const filterSensitiveLog = (obj: PrivateDnsDetails): any => ({ + export const filterSensitiveLog = (obj: SpotInstanceStatus): any => ({ ...obj, }); } /** - *Describes a VPC endpoint service.
+ *Describes a Spot Instance request.
*/ -export interface ServiceDetail { - /** - *The Amazon Resource Name (ARN) of the service.
- */ - ServiceName?: string; - +export interface SpotInstanceRequest { /** - *The ID of the endpoint service.
+ *Deprecated.
*/ - ServiceId?: string; + ActualBlockHourlyPrice?: string; /** - *The type of service.
+ *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.
*/ - ServiceType?: ServiceTypeDetail[]; + AvailabilityZoneGroup?: string; /** - *The Availability Zones in which the service is available.
+ *Deprecated.
*/ - AvailabilityZones?: string[]; + BlockDurationMinutes?: number; /** - *The Amazon Web Services account ID of the service owner.
+ *The date and time when the Spot Instance request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
*/ - Owner?: string; + CreateTime?: Date; /** - *The DNS names for the service.
+ *The fault codes for the Spot Instance request, if any.
*/ - BaseEndpointDnsNames?: string[]; + Fault?: SpotInstanceStateFault; /** - *The private DNS name for the service.
+ *The instance ID, if an instance has been launched to fulfill the Spot Instance request.
*/ - PrivateDnsName?: string; + InstanceId?: string; /** - *The private DNS names assigned to the VPC endpoint service.
+ *The instance launch group. Launch groups are Spot Instances that launch together and terminate together.
*/ - PrivateDnsNames?: PrivateDnsDetails[]; + LaunchGroup?: string; /** - *Indicates whether the service supports endpoint policies.
+ *Additional information for launching instances.
*/ - VpcEndpointPolicySupported?: boolean; + LaunchSpecification?: LaunchSpecification; /** - *Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner.
+ *The Availability Zone in which the request is launched.
*/ - AcceptanceRequired?: boolean; + LaunchedAvailabilityZone?: string; /** - *Indicates whether the service manages its VPC endpoints. Management of the service VPC - * endpoints using the VPC endpoint API is restricted.
+ *The product description associated with the Spot Instance.
*/ - ManagesVpcEndpoints?: boolean; + ProductDescription?: RIProductDescription | string; /** - *Any tags assigned to the service.
+ *The ID of the Spot Instance request.
*/ - Tags?: Tag[]; + SpotInstanceRequestId?: string; /** - *The verification state of the VPC endpoint service.
- *Consumers of the endpoint service cannot use the private name when the state is not verified
.
The maximum price per hour that you are willing to pay for a Spot Instance.
*/ - PrivateDnsNameVerificationState?: DnsNameState | string; -} + SpotPrice?: string; -export namespace ServiceDetail { /** - * @internal + *The state of the Spot Instance request. Spot status information helps track your Spot + * Instance requests. For more information, see Spot status in the + * Amazon EC2 User Guide for Linux Instances.
*/ - export const filterSensitiveLog = (obj: ServiceDetail): any => ({ - ...obj, - }); -} + State?: SpotInstanceState | string; -/** - *Contains the output of DescribeVpcEndpointServices.
- */ -export interface DescribeVpcEndpointServicesResult { /** - *A list of supported services.
+ *The status code and status message describing the Spot Instance request.
*/ - ServiceNames?: string[]; + Status?: SpotInstanceStatus; /** - *Information about the service.
+ *Any tags assigned to the resource.
*/ - ServiceDetails?: ServiceDetail[]; + Tags?: Tag[]; /** - *The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
+ *The Spot Instance request type.
*/ - NextToken?: string; -} + Type?: SpotInstanceType | string; -export namespace DescribeVpcEndpointServicesResult { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: DescribeVpcEndpointServicesResult): any => ({ - ...obj, - }); -} + ValidFrom?: Date; -export interface DescribeVpcPeeringConnectionsRequest { /** - *One or more filters.
+ *The end date of the request, in UTC format + * (YYYY-MM-DDTHH:MM:SSZ).
*
- * 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
: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.
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.
+ *
- * vpc-peering-connection-id
- The ID of the VPC peering connection.
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.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more VPC peering connection IDs.
- *Default: Describes all your VPC peering connections.
- */ - VpcPeeringConnectionIds?: string[]; - - /** - *The token for the next page of results.
- */ - NextToken?: string; + ValidUntil?: Date; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The behavior when a Spot Instance is interrupted.
*/ - MaxResults?: number; + InstanceInterruptionBehavior?: InstanceInterruptionBehavior | string; } -export namespace DescribeVpcPeeringConnectionsRequest { +export namespace SpotInstanceRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVpcPeeringConnectionsRequest): any => ({ + export const filterSensitiveLog = (obj: SpotInstanceRequest): any => ({ ...obj, }); } -export interface DescribeVpcPeeringConnectionsResult { +/** + *Contains the output of DescribeSpotInstanceRequests.
+ */ +export interface DescribeSpotInstanceRequestsResult { /** - *Information about the VPC peering connections.
+ *One or more Spot Instance requests.
*/ - VpcPeeringConnections?: VpcPeeringConnection[]; + SpotInstanceRequests?: SpotInstanceRequest[]; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The token to use to retrieve the next set of results. This value is null
+ * when there are no more results to return.
Contains the parameters for DescribeSpotPriceHistory.
+ */ +export interface DescribeSpotPriceHistoryRequest { /** *One or more 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.
availability-zone
- The Availability Zone for which prices should
+ * be returned.
*
- * 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
).
instance-type
- The type of instance (for example,
+ * m3.medium
).
*
- * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
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)
).
*
- * 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.
spot-price
- The Spot price. The value must match exactly (or use
+ * wildcards; greater than or less than comparison is not supported).
*
- * vpc-id
- The ID of the VPC.
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.
* One or more VPC IDs.
- *Default: Describes all your VPCs.
+ *Filters the results by the specified Availability Zone.
*/ - VpcIds?: string[]; + AvailabilityZone?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The token for the next page of results.
+ *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).
*/ - NextToken?: string; + EndTime?: Date; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Filters the results by the specified instance types.
*/ - MaxResults?: number; -} + InstanceTypes?: (_InstanceType | string)[]; -export namespace DescribeVpcsRequest { /** - * @internal + *The maximum number of results to return in a single call. Specify a value between 1
+ * and 1000. The default value is 1000. To retrieve the remaining results, make another
+ * call with the returned NextToken
value.
Information about one or more VPCs.
+ *The token for the next set of results.
*/ - Vpcs?: Vpc[]; + NextToken?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Filters the results by the specified basic product descriptions.
*/ - NextToken?: string; -} + ProductDescriptions?: string[]; -export namespace DescribeVpcsResult { /** - * @internal - */ - export const filterSensitiveLog = (obj: DescribeVpcsResult): any => ({ - ...obj, - }); -} - -/** - *Contains the parameters for DescribeVpnConnections.
- */ -export interface DescribeVpnConnectionsRequest { - /** - *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
: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.
One or more VPN connection IDs.
- *Default: Describes your VPN connections.
- */ - VpnConnectionIds?: string[]; - - /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
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).
*/ - DryRun?: boolean; + StartTime?: Date; } -export namespace DescribeVpnConnectionsRequest { +export namespace DescribeSpotPriceHistoryRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVpnConnectionsRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeSpotPriceHistoryRequest): any => ({ ...obj, }); } /** - *Contains the output of DescribeVpnConnections.
+ *Describes the maximum price per hour that you are willing to pay for a Spot + * Instance.
*/ -export interface DescribeVpnConnectionsResult { +export interface SpotPrice { /** - *Information about one or more VPN connections.
+ *The Availability Zone.
*/ - VpnConnections?: VpnConnection[]; -} + AvailabilityZone?: string; -export namespace DescribeVpnConnectionsResult { /** - * @internal + *The instance type.
*/ - export const filterSensitiveLog = (obj: DescribeVpnConnectionsResult): any => ({ - ...obj, - }); -} + InstanceType?: _InstanceType | string; -/** - *Contains the parameters for DescribeVpnGateways.
- */ -export interface DescribeVpnGatewaysRequest { /** - *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
: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.
A general description of the AMI.
*/ - Filters?: Filter[]; + ProductDescription?: RIProductDescription | string; /** - *One or more virtual private gateway IDs.
- *Default: Describes all your virtual private gateways.
+ *The maximum price per hour that you are willing to pay for a Spot Instance.
*/ - VpnGatewayIds?: string[]; + SpotPrice?: string; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The date and time the request was created, in UTC format (for example, + * YYYY-MM-DDTHH:MM:SSZ).
*/ - DryRun?: boolean; + Timestamp?: Date; } -export namespace DescribeVpnGatewaysRequest { +export namespace SpotPrice { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVpnGatewaysRequest): any => ({ + export const filterSensitiveLog = (obj: SpotPrice): any => ({ ...obj, }); } /** - *Contains the output of DescribeVpnGateways.
+ *Contains the output of DescribeSpotPriceHistory.
*/ -export interface DescribeVpnGatewaysResult { +export interface DescribeSpotPriceHistoryResult { /** - *Information about one or more virtual private gateways.
+ *The token required to retrieve the next set of results. This value is null or an empty + * string when there are no more results to return.
*/ - VpnGateways?: VpnGateway[]; + NextToken?: string; + + /** + *The historical Spot prices.
+ */ + SpotPriceHistory?: SpotPrice[]; } -export namespace DescribeVpnGatewaysResult { +export namespace DescribeSpotPriceHistoryResult { /** * @internal */ - export const filterSensitiveLog = (obj: DescribeVpnGatewaysResult): any => ({ + export const filterSensitiveLog = (obj: DescribeSpotPriceHistoryResult): any => ({ ...obj, }); } -export interface DetachClassicLinkVpcRequest { +export interface DescribeStaleSecurityGroupsRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -3924,511 +3834,530 @@ export interface DetachClassicLinkVpcRequest {
DryRun?: boolean;
/**
- *
The ID of the instance to unlink from the VPC.
+ *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.
*/ - InstanceId: string | undefined; + MaxResults?: number; /** - *The ID of the VPC to which the instance is linked.
+ *The token for the next set of items to return. (You received this token from a prior call.)
+ */ + NextToken?: string; + + /** + *The ID of the VPC.
*/ VpcId: string | undefined; } -export namespace DetachClassicLinkVpcRequest { +export namespace DescribeStaleSecurityGroupsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DetachClassicLinkVpcRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeStaleSecurityGroupsRequest): any => ({ ...obj, }); } -export interface DetachClassicLinkVpcResult { +/** + *Describes a stale rule in a security group.
+ */ +export interface StaleIpPermission { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
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.
The IP protocol name (for tcp
, udp
, and icmp
) or number (see Protocol Numbers).
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The IP ranges. Not applicable for stale security group rules.
*/ - DryRun?: boolean; + IpRanges?: string[]; /** - *The ID of the internet gateway.
+ *The prefix list IDs. Not applicable for stale security group rules.
*/ - InternetGatewayId: string | undefined; + PrefixListIds?: string[]; /** - *The ID of the VPC.
+ *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.
Contains the parameters for DetachNetworkInterface.
- */ -export interface DetachNetworkInterfaceRequest { - /** - *The ID of the attachment.
- */ - AttachmentId: string | undefined; - - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
- *The security group pairs. Returns the ID of the referenced security group and VPC, and the ID and status of the VPC peering connection.
*/ - Force?: boolean; + UserIdGroupPairs?: UserIdGroupPair[]; } -export namespace DetachNetworkInterfaceRequest { +export namespace StaleIpPermission { /** * @internal */ - export const filterSensitiveLog = (obj: DetachNetworkInterfaceRequest): any => ({ + export const filterSensitiveLog = (obj: StaleIpPermission): any => ({ ...obj, }); } -export interface DetachVolumeRequest { - /** - *The device name.
- */ - Device?: string; - - /** - *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.
- */ - Force?: boolean; - - /** - *The ID of the instance. If you are detaching a Multi-Attach enabled volume, you must specify an instance ID.
- */ - InstanceId?: string; - +/** + *Describes a stale security group (a security group that contains stale rules).
+ */ +export interface StaleSecurityGroup { /** - *The ID of the volume.
+ *The description of the security group.
*/ - VolumeId: string | undefined; + Description?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the security group.
*/ - DryRun?: boolean; -} + GroupId?: string; -export namespace DetachVolumeRequest { /** - * @internal + *The name of the security group.
*/ - export const filterSensitiveLog = (obj: DetachVolumeRequest): any => ({ - ...obj, - }); -} + GroupName?: string; -/** - *Contains the parameters for DetachVpnGateway.
- */ -export interface DetachVpnGatewayRequest { /** - *The ID of the VPC.
+ *Information about the stale inbound rules in the security group.
*/ - VpcId: string | undefined; + StaleIpPermissions?: StaleIpPermission[]; /** - *The ID of the virtual private gateway.
+ *Information about the stale outbound rules in the security group.
*/ - VpnGatewayId: string | undefined; + StaleIpPermissionsEgress?: StaleIpPermission[]; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The ID of the VPC for the security group.
*/ - DryRun?: boolean; + VpcId?: string; } -export namespace DetachVpnGatewayRequest { +export namespace StaleSecurityGroup { /** * @internal */ - export const filterSensitiveLog = (obj: DetachVpnGatewayRequest): any => ({ + export const filterSensitiveLog = (obj: StaleSecurityGroup): any => ({ ...obj, }); } -export interface DisableEbsEncryptionByDefaultRequest { +export interface DescribeStaleSecurityGroupsResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
*/ - DryRun?: boolean; + NextToken?: string; + + /** + *Information about the stale security groups.
+ */ + StaleSecurityGroupSet?: StaleSecurityGroup[]; } -export namespace DisableEbsEncryptionByDefaultRequest { +export namespace DescribeStaleSecurityGroupsResult { /** * @internal */ - export const filterSensitiveLog = (obj: DisableEbsEncryptionByDefaultRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeStaleSecurityGroupsResult): any => ({ ...obj, }); } -export interface DisableEbsEncryptionByDefaultResult { +export interface DescribeStoreImageTasksRequest { /** - *The updated status of encryption by default.
+ *The AMI IDs for which to show progress. Up to 20 AMI IDs can be included in a request.
*/ - EbsEncryptionByDefault?: boolean; -} + ImageIds?: string[]; -export namespace DisableEbsEncryptionByDefaultResult { /** - * @internal + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
One or more Availability Zones. For example, us-east-2a
.
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.
The IDs of one or more snapshots. For example, snap-1234567890abcdef0
.
The token for the next page of results.
*/ - SourceSnapshotIds: string[] | undefined; + NextToken?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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. You cannot specify this parameter and the ImageIDs
parameter
+ * in the same call.
Describes fast snapshot restores that were successfully disabled.
+ *The information about the AMI store task, including the progress of the task.
*/ -export interface DisableFastSnapshotRestoreSuccessItem { - /** - *The ID of the snapshot.
- */ - SnapshotId?: string; - +export interface StoreImageTaskResult { /** - *The Availability Zone.
+ *The ID of the AMI that is being stored.
*/ - AvailabilityZone?: string; + AmiId?: string; /** - *The state of fast snapshot restores for the snapshot.
+ *The time the task started.
*/ - State?: FastSnapshotRestoreStateCode | string; + TaskStartTime?: Date; /** - *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
.
The name of the Amazon S3 bucket that contains the stored AMI object.
*/ - StateTransitionReason?: string; + Bucket?: string; /** - *The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.
+ *The name of the stored AMI object in the bucket.
*/ - OwnerId?: string; + S3objectKey?: string; /** - *The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.
+ *The progress of the task as a percentage.
*/ - OwnerAlias?: string; + ProgressPercentage?: number; /** - *The time at which fast snapshot restores entered the enabling
state.
The state of the store task (InProgress
, Completed
, or
+ * Failed
).
The time at which fast snapshot restores entered the optimizing
state.
If the tasks fails, the reason for the failure is returned. If the task succeeds,
+ * null
is returned.
The time at which fast snapshot restores entered the enabled
state.
The time at which fast snapshot restores entered the disabling
state.
The information about the AMI store tasks.
*/ - DisablingTime?: Date; + StoreImageTaskResults?: StoreImageTaskResult[]; /** - *The time at which fast snapshot restores entered the disabled
state.
The token to use to retrieve the next page of results. This value is null
+ * when there are no more results to return.
Describes an error that occurred when disabling fast snapshot restores.
- */ -export interface DisableFastSnapshotRestoreStateError { +export interface DescribeSubnetsRequest { /** - *The error code.
+ *One or more 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.
+ * 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.
+ * 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
).
+ * outpost-arn
- The Amazon Resource Name (ARN) of the Outpost.
+ * owner-id
- The ID of the Amazon Web Services account that owns the subnet.
+ * 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
: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.
The error message.
+ *One or more subnet IDs.
+ *Default: Describes all your subnets.
*/ - Message?: string; -} + SubnetIds?: string[]; -export namespace DisableFastSnapshotRestoreStateError { /** - * @internal + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains information about an error that occurred when disabling fast snapshot restores.
- */ -export interface DisableFastSnapshotRestoreStateErrorItem { /** - *The Availability Zone.
+ *The token for the next page of results.
*/ - AvailabilityZone?: string; + NextToken?: string; /** - *The error.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Contains information about the errors that occurred when disabling fast snapshot restores.
- */ -export interface DisableFastSnapshotRestoreErrorItem { +export interface DescribeSubnetsResult { /** - *The ID of the snapshot.
+ *Information about one or more subnets.
*/ - SnapshotId?: string; + Subnets?: Subnet[]; /** - *The errors.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the snapshots for which fast snapshot restores were successfully disabled.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the snapshots for which fast snapshot restores could not be disabled.
+ *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
:
+ * value
- The tag value.
The maximum number of results to return in a single call.
+ * This value can be between 5 and 1000.
+ * To retrieve the remaining results, make another call with the returned NextToken
value.
The token to retrieve the next page of results.
+ */ + NextToken?: string; } -export namespace DisableFastSnapshotRestoresResult { +export namespace DescribeTagsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DisableFastSnapshotRestoresResult): any => ({ + export const filterSensitiveLog = (obj: DescribeTagsRequest): any => ({ ...obj, }); } -export interface DisableImageDeprecationRequest { +/** + *Describes a tag.
+ */ +export interface TagDescription { /** - *The ID of the AMI.
+ *The tag key.
*/ - ImageId: string | undefined; + Key?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the resource.
*/ - DryRun?: boolean; -} + ResourceId?: string; -export namespace DisableImageDeprecationRequest { /** - * @internal + *The resource type.
*/ - export const filterSensitiveLog = (obj: DisableImageDeprecationRequest): any => ({ - ...obj, - }); -} + ResourceType?: ResourceType | string; -export interface DisableImageDeprecationResult { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
The tag value.
*/ - Return?: boolean; + Value?: string; } -export namespace DisableImageDeprecationResult { +export namespace TagDescription { /** * @internal */ - export const filterSensitiveLog = (obj: DisableImageDeprecationResult): any => ({ + export const filterSensitiveLog = (obj: TagDescription): any => ({ ...obj, }); } -export interface DisableSerialConsoleAccessRequest { +export interface DescribeTagsResult { /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The token to use to retrieve the next page of results. This value is
+ * null
when there are no more results to return.
The tags.
+ */ + Tags?: TagDescription[]; } -export namespace DisableSerialConsoleAccessRequest { +export namespace DescribeTagsResult { /** * @internal */ - export const filterSensitiveLog = (obj: DisableSerialConsoleAccessRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeTagsResult): any => ({ ...obj, }); } -export interface DisableSerialConsoleAccessResult { +export interface DescribeTrafficMirrorFiltersRequest { /** - *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.
The ID of the Traffic Mirror filter.
*/ - SerialConsoleAccessEnabled?: boolean; -} - -export namespace DisableSerialConsoleAccessResult { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DisableSerialConsoleAccessResult): any => ({ - ...obj, - }); -} - -export interface DisableTransitGatewayRouteTablePropagationRequest { - /** - *The ID of the propagation route table.
- */ - TransitGatewayRouteTableId: string | undefined; - - /** - *The ID of the attachment.
- */ - TransitGatewayAttachmentId: string | undefined; + TrafficMirrorFilterIds?: string[]; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -4436,405 +4365,470 @@ export interface DisableTransitGatewayRouteTablePropagationRequest {
* Otherwise, it is UnauthorizedOperation
.
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.
Describes route propagation.
- */ -export interface TransitGatewayPropagation { /** - *The ID of the attachment.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The ID of the resource.
+ *The token for the next page of results.
*/ - ResourceId?: string; + NextToken?: string; +} +export namespace DescribeTrafficMirrorFiltersRequest { /** - *The resource type. Note that the tgw-peering
resource type has been deprecated.
The ID of the transit gateway route table.
+ *Information about one or more Traffic Mirror filters.
*/ - TransitGatewayRouteTableId?: string; + TrafficMirrorFilters?: TrafficMirrorFilter[]; /** - *The state.
+ *The token to use to retrieve the next page of results. The value is null
when there are no more results to return.
Information about route propagation.
+ *The ID of the Traffic Mirror session.
*/ - Propagation?: TransitGatewayPropagation; -} + TrafficMirrorSessionIds?: string[]; -export namespace DisableTransitGatewayRouteTablePropagationResult { /** - * @internal + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains the parameters for DisableVgwRoutePropagation.
- */ -export interface DisableVgwRoutePropagationRequest { /** - *The ID of the virtual private gateway.
+ *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.
The ID of the route table.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The token for the next page of results.
*/ - DryRun?: boolean; + NextToken?: string; } -export namespace DisableVgwRoutePropagationRequest { +export namespace DescribeTrafficMirrorSessionsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DisableVgwRoutePropagationRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeTrafficMirrorSessionsRequest): any => ({ ...obj, }); } -export interface DisableVpcClassicLinkRequest { +export interface DescribeTrafficMirrorSessionsResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. Alternatively, you can filter the results.
*/ - DryRun?: boolean; + TrafficMirrorSessions?: TrafficMirrorSession[]; /** - *The ID of the VPC.
+ *The token to use to retrieve the next page of results. The value is null
when there are no more results to return.
Returns true
if the request succeeds; otherwise, it returns an error.
The ID of the Traffic Mirror targets.
*/ - Return?: boolean; -} + TrafficMirrorTargetIds?: string[]; -export namespace DisableVpcClassicLinkResult { /** - * @internal + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the VPC.
+ *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.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Returns true
if the request succeeds; otherwise, it returns an error.
The token for the next page of results.
*/ - Return?: boolean; + NextToken?: string; } -export namespace DisableVpcClassicLinkDnsSupportResult { +export namespace DescribeTrafficMirrorTargetsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DisableVpcClassicLinkDnsSupportResult): any => ({ + export const filterSensitiveLog = (obj: DescribeTrafficMirrorTargetsRequest): any => ({ ...obj, }); } -export interface DisassociateAddressRequest { - /** - *[EC2-VPC] The association ID. Required for EC2-VPC.
- */ - AssociationId?: string; - +export interface DescribeTrafficMirrorTargetsResult { /** - *[EC2-Classic] The Elastic IP address. Required for EC2-Classic.
+ *Information about one or more Traffic Mirror targets.
*/ - PublicIp?: string; + TrafficMirrorTargets?: TrafficMirrorTarget[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The token to use to retrieve the next page of results. The value is null
when there are no more results to return.
The ID of the Client VPN endpoint from which to disassociate the target network.
+ *The IDs of the attachments.
*/ - ClientVpnEndpointId: string | undefined; - - /** - *The ID of the target network association.
- */ - AssociationId: string | undefined; + TransitGatewayAttachmentIds?: string[]; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
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.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The ID of the target network association.
+ *The token for the next page of results.
*/ - AssociationId?: string; + NextToken?: string; /** - *The current state of the target network association.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ARN of the ACM certificate from which to disassociate the IAM role.
- */ - CertificateArn?: string; - +/** + *Describes an association.
+ */ +export interface TransitGatewayAttachmentAssociation { /** - *The ARN of the IAM role to disassociate.
+ *The ID of the route table for the transit gateway.
*/ - RoleArn?: string; + TransitGatewayRouteTableId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The state of the association.
*/ - DryRun?: boolean; + State?: TransitGatewayAssociationState | string; } -export namespace DisassociateEnclaveCertificateIamRoleRequest { +export namespace TransitGatewayAttachmentAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: DisassociateEnclaveCertificateIamRoleRequest): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayAttachmentAssociation): any => ({ ...obj, }); } -export interface DisassociateEnclaveCertificateIamRoleResult { +/** + *Describes an attachment between a resource and a transit gateway.
+ */ +export interface TransitGatewayAttachment { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
The ID of the attachment.
*/ - Return?: boolean; -} + TransitGatewayAttachmentId?: string; -export namespace DisassociateEnclaveCertificateIamRoleResult { /** - * @internal + *The ID of the transit gateway.
*/ - export const filterSensitiveLog = (obj: DisassociateEnclaveCertificateIamRoleResult): any => ({ - ...obj, - }); -} + TransitGatewayId?: string; -export interface DisassociateIamInstanceProfileRequest { /** - *The ID of the IAM instance profile association.
+ *The ID of the Amazon Web Services account that owns the transit gateway.
*/ - AssociationId: string | undefined; -} + TransitGatewayOwnerId?: string; -export namespace DisassociateIamInstanceProfileRequest { /** - * @internal + *The ID of the Amazon Web Services account that owns the resource.
*/ - export const filterSensitiveLog = (obj: DisassociateIamInstanceProfileRequest): any => ({ - ...obj, - }); -} + ResourceOwnerId?: string; -export interface DisassociateIamInstanceProfileResult { /** - *Information about the IAM instance profile association.
+ *The resource type. Note that the tgw-peering
resource type has been deprecated.
The ID of the resource.
*/ - export const filterSensitiveLog = (obj: DisassociateIamInstanceProfileResult): any => ({ - ...obj, - }); -} + ResourceId?: string; -/** - *The targets to disassociate from the specified event window.
- */ -export interface InstanceEventWindowDisassociationRequest { /** - *The IDs of the instances to disassociate from the event window.
+ *The attachment state. Note that the initiating
state has been deprecated.
The instance tags to disassociate from the event window. Any instances associated with - * the tags will be disassociated from the event window.
+ *The association.
*/ - InstanceTags?: Tag[]; + Association?: TransitGatewayAttachmentAssociation; /** - *The IDs of the Dedicated Hosts to disassociate from the event window.
+ *The creation time.
*/ - DedicatedHostIds?: string[]; + CreationTime?: Date; + + /** + *The tags for the attachment.
+ */ + Tags?: Tag[]; } -export namespace InstanceEventWindowDisassociationRequest { +export namespace TransitGatewayAttachment { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceEventWindowDisassociationRequest): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayAttachment): any => ({ ...obj, }); } -export interface DisassociateInstanceEventWindowRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the event window.
+ *Information about the attachments.
*/ - InstanceEventWindowId: string | undefined; + TransitGatewayAttachments?: TransitGatewayAttachment[]; /** - *One or more targets to disassociate from the specified event window.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the event window.
+ *The IDs of the Connect peers.
*/ - InstanceEventWindow?: InstanceEventWindow; -} + TransitGatewayConnectPeerIds?: string[]; -export namespace DisassociateInstanceEventWindowResult { /** - * @internal + *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.
The association ID representing the current association between the route table and subnet or gateway.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ */ + NextToken?: string; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -4844,67 +4838,85 @@ export interface DisassociateRouteTableRequest { DryRun?: boolean; } -export namespace DisassociateRouteTableRequest { +export namespace DescribeTransitGatewayConnectPeersRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DisassociateRouteTableRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeTransitGatewayConnectPeersRequest): any => ({ ...obj, }); } -export interface DisassociateSubnetCidrBlockRequest { +export interface DescribeTransitGatewayConnectPeersResult { /** - *
The association ID for the CIDR block.
+ *Information about the Connect peers.
*/ - AssociationId: string | undefined; + TransitGatewayConnectPeers?: TransitGatewayConnectPeer[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the IPv6 CIDR block association.
+ *The IDs of the attachments.
*/ - Ipv6CidrBlockAssociation?: SubnetIpv6CidrBlockAssociation; - - /** - *The ID of the subnet.
- */ - SubnetId?: string; -} - -export namespace DisassociateSubnetCidrBlockResult { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DisassociateSubnetCidrBlockResult): any => ({ - ...obj, - }); -} + TransitGatewayAttachmentIds?: string[]; -export interface DisassociateTransitGatewayMulticastDomainRequest { /** - *The ID of the transit gateway multicast domain.
+ *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.
The ID of the attachment.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The IDs of the subnets;
+ *The token for the next page of results.
*/ - SubnetIds?: string[]; + NextToken?: string; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -4914,87 +4926,71 @@ export interface DisassociateTransitGatewayMulticastDomainRequest { DryRun?: boolean; } -export namespace DisassociateTransitGatewayMulticastDomainRequest { - /** - * @internal - */ - export const filterSensitiveLog = (obj: DisassociateTransitGatewayMulticastDomainRequest): any => ({ - ...obj, - }); -} - -export interface DisassociateTransitGatewayMulticastDomainResult { - /** - *
Information about the association.
- */ - Associations?: TransitGatewayMulticastDomainAssociations; -} - -export namespace DisassociateTransitGatewayMulticastDomainResult { +export namespace DescribeTransitGatewayConnectsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DisassociateTransitGatewayMulticastDomainResult): any => ({ + export const filterSensitiveLog = (obj: DescribeTransitGatewayConnectsRequest): any => ({ ...obj, }); } -export interface DisassociateTransitGatewayRouteTableRequest { - /** - *The ID of the transit gateway route table.
- */ - TransitGatewayRouteTableId: string | undefined; - +export interface DescribeTransitGatewayConnectsResult { /** - *The ID of the attachment.
+ *Information about the Connect attachments.
*/ - TransitGatewayAttachmentId: string | undefined; + TransitGatewayConnects?: TransitGatewayConnect[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the association.
+ *The ID of the transit gateway multicast domain.
*/ - Association?: TransitGatewayAssociation; -} + TransitGatewayMulticastDomainIds?: string[]; -export namespace DisassociateTransitGatewayRouteTableResult { /** - * @internal + *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.
The ID of the association
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. For more information, see How to Ensure - * Idempotency.
+ *The token for the next page of results.
*/ - ClientToken?: string; + NextToken?: string; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -5004,81 +5000,89 @@ export interface DisassociateTrunkInterfaceRequest { DryRun?: boolean; } -export namespace DisassociateTrunkInterfaceRequest { +export namespace DescribeTransitGatewayMulticastDomainsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DisassociateTrunkInterfaceRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeTransitGatewayMulticastDomainsRequest): any => ({ ...obj, }); } -export interface DisassociateTrunkInterfaceResult { - /** - *
Returns true
if the request succeeds; otherwise, it returns an error.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the - * request. For more information, see How to Ensure - * Idempotency.
- */ - ClientToken?: string; -} - -export namespace DisassociateTrunkInterfaceResult { +export interface DescribeTransitGatewayMulticastDomainsResult { /** - * @internal + *Information about the transit gateway multicast domains.
*/ - export const filterSensitiveLog = (obj: DisassociateTrunkInterfaceResult): any => ({ - ...obj, - }); -} + TransitGatewayMulticastDomains?: TransitGatewayMulticastDomain[]; -export interface DisassociateVpcCidrBlockRequest { /** - *The association ID for the CIDR block.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the IPv6 CIDR block association.
+ *One or more IDs of the transit gateway peering attachments.
*/ - Ipv6CidrBlockAssociation?: VpcIpv6CidrBlockAssociation; + TransitGatewayAttachmentIds?: string[]; /** - *Information about the IPv4 CIDR block association.
+ *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
: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.
The ID of the VPC.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
*/ - export const filterSensitiveLog = (obj: DisassociateVpcCidrBlockResult): any => ({ - ...obj, - }); -} + NextToken?: string; -export interface EnableEbsEncryptionByDefaultRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -5087,42 +5091,81 @@ export interface EnableEbsEncryptionByDefaultRequest {
DryRun?: boolean;
}
-export namespace EnableEbsEncryptionByDefaultRequest {
+export namespace DescribeTransitGatewayPeeringAttachmentsRequest {
/**
* @internal
*/
- export const filterSensitiveLog = (obj: EnableEbsEncryptionByDefaultRequest): any => ({
+ export const filterSensitiveLog = (obj: DescribeTransitGatewayPeeringAttachmentsRequest): any => ({
...obj,
});
}
-export interface EnableEbsEncryptionByDefaultResult {
+export interface DescribeTransitGatewayPeeringAttachmentsResult {
/**
- *
The updated status of encryption by default.
+ *The transit gateway peering attachments.
*/ - EbsEncryptionByDefault?: boolean; + TransitGatewayPeeringAttachments?: TransitGatewayPeeringAttachment[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
One or more Availability Zones. For example, us-east-2a
.
The IDs of the transit gateway route tables.
*/ - AvailabilityZones: string[] | undefined; + TransitGatewayRouteTableIds?: string[]; /** - *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.
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.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ */ + NextToken?: string; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -5132,282 +5175,304 @@ export interface EnableFastSnapshotRestoresRequest { DryRun?: boolean; } -export namespace EnableFastSnapshotRestoresRequest { +export namespace DescribeTransitGatewayRouteTablesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: EnableFastSnapshotRestoresRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeTransitGatewayRouteTablesRequest): any => ({ ...obj, }); } -/** - *
Describes fast snapshot restores that were successfully enabled.
- */ -export interface EnableFastSnapshotRestoreSuccessItem { +export interface DescribeTransitGatewayRouteTablesResult { /** - *The ID of the snapshot.
+ *Information about the transit gateway route tables.
*/ - SnapshotId?: string; + TransitGatewayRouteTables?: TransitGatewayRouteTable[]; /** - *The Availability Zone.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The state of fast snapshot restores.
+ * @internal */ - State?: FastSnapshotRestoreStateCode | string; + export const filterSensitiveLog = (obj: DescribeTransitGatewayRouteTablesResult): any => ({ + ...obj, + }); +} +export interface DescribeTransitGatewaysRequest { /** - *The reason for the state transition. The possible values are as follows:
+ *The IDs of the transit gateways.
+ */ + TransitGatewayIds?: string[]; + + /** + *One or more filters. The possible values are:
*
- * Client.UserInitiated
- The state successfully transitioned to enabling
or
- * disabling
.
options.propagation-default-route-table-id
- The ID of the default propagation route table.
*
- * Client.UserInitiated - Lifecycle state transition
- The state successfully transitioned
- * to optimizing
, enabled
, or disabled
.
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.
The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.
- */ - OwnerId?: string; - - /** - *The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.
- */ - OwnerAlias?: string; - - /** - *The time at which fast snapshot restores entered the enabling
state.
The time at which fast snapshot restores entered the optimizing
state.
The time at which fast snapshot restores entered the enabled
state.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The time at which fast snapshot restores entered the disabling
state.
The token for the next page of results.
*/ - DisablingTime?: Date; + NextToken?: string; /** - *The time at which fast snapshot restores entered the disabled
state.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes an error that occurred when enabling fast snapshot restores.
- */ -export interface EnableFastSnapshotRestoreStateError { +export interface DescribeTransitGatewaysResult { /** - *The error code.
+ *Information about the transit gateways.
*/ - Code?: string; + TransitGateways?: TransitGateway[]; /** - *The error message.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains information about an error that occurred when enabling fast snapshot restores.
- */ -export interface EnableFastSnapshotRestoreStateErrorItem { +export interface DescribeTransitGatewayVpcAttachmentsRequest { /** - *The Availability Zone.
+ *The IDs of the attachments.
*/ - AvailabilityZone?: string; + TransitGatewayAttachmentIds?: string[]; /** - *The error.
+ *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.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Contains information about the errors that occurred when enabling fast snapshot restores.
- */ -export interface EnableFastSnapshotRestoreErrorItem { /** - *The ID of the snapshot.
+ *The token for the next page of results.
*/ - SnapshotId?: string; + NextToken?: string; /** - *The errors.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the snapshots for which fast snapshot restores were successfully enabled.
+ *Information about the VPC attachments.
*/ - Successful?: EnableFastSnapshotRestoreSuccessItem[]; + TransitGatewayVpcAttachments?: TransitGatewayVpcAttachment[]; /** - *Information about the snapshots for which fast snapshot restores could not be enabled.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the AMI.
+ *The IDs of the associations.
*/ - ImageId: string | undefined; + AssociationIds?: string[]; /** - *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.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more filters.
+ *
+ * gre-key
- The ID of a trunk interface association.
+ * interface-protocol
- The interface protocol. Valid values are VLAN
and GRE
.
The token for the next page of results.
*/ - export const filterSensitiveLog = (obj: EnableImageDeprecationRequest): any => ({ - ...obj, - }); -} + NextToken?: string; -export interface EnableImageDeprecationResult { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Information about the trunk associations.
*/ - export const filterSensitiveLog = (obj: EnableSerialConsoleAccessRequest): any => ({ - ...obj, - }); -} + InterfaceAssociations?: TrunkInterfaceAssociation[]; -export interface EnableSerialConsoleAccessResult { /** - *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.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the propagation route table.
+ *The attribute of the volume. This parameter is required.
*/ - TransitGatewayRouteTableId: string | undefined; + Attribute: VolumeAttributeName | string | undefined; /** - *The ID of the attachment.
+ *The ID of the volume.
*/ - TransitGatewayAttachmentId: string | undefined; + VolumeId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -5417,67 +5482,136 @@ export interface EnableTransitGatewayRouteTablePropagationRequest { DryRun?: boolean; } -export namespace EnableTransitGatewayRouteTablePropagationRequest { +export namespace DescribeVolumeAttributeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: EnableTransitGatewayRouteTablePropagationRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeVolumeAttributeRequest): any => ({ ...obj, }); } -export interface EnableTransitGatewayRouteTablePropagationResult { +export interface DescribeVolumeAttributeResult { /** - *
Information about route propagation.
+ *The state of autoEnableIO
attribute.
A list of product codes.
*/ - export const filterSensitiveLog = (obj: EnableTransitGatewayRouteTablePropagationResult): any => ({ - ...obj, - }); -} + ProductCodes?: ProductCode[]; -/** - *Contains the parameters for EnableVgwRoutePropagation.
- */ -export interface EnableVgwRoutePropagationRequest { /** - *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. - *
+ *The ID of the volume.
*/ - GatewayId: string | undefined; + VolumeId?: string; +} +export namespace DescribeVolumeAttributeResult { /** - *The ID of the route table. The routing table must be associated with the same VPC that - * the virtual private gateway is attached to.
+ * @internal */ - RouteTableId: string | undefined; + export const filterSensitiveLog = (obj: DescribeVolumeAttributeResult): any => ({ + ...obj, + }); +} +export interface DescribeVolumesRequest { /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
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
: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
)
The volume IDs.
*/ - export const filterSensitiveLog = (obj: EnableVgwRoutePropagationRequest): any => ({ - ...obj, - }); -} + VolumeIds?: string[]; -export interface EnableVolumeIORequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -5486,392 +5620,360 @@ export interface EnableVolumeIORequest {
DryRun?: boolean;
/**
- *
The ID of the volume.
+ *The maximum number of volume results returned by DescribeVolumes
in paginated
+ * output. When this parameter is used, DescribeVolumes
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
+ * DescribeVolumes
request with the returned NextToken
value. This
+ * value can be between 5 and 500; if MaxResults
is given a value larger than 500,
+ * only 500 results are returned. If this parameter is not used, then
+ * DescribeVolumes
returns all results. You cannot specify this parameter and the
+ * volume IDs parameter in the same request.
The NextToken
value returned from a previous paginated
+ * DescribeVolumes
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.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the volumes.
*/ - DryRun?: boolean; + Volumes?: Volume[]; /** - *The ID of the VPC.
+ *The NextToken
value to include in a future DescribeVolumes
+ * request. When the results of a DescribeVolumes
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.
Returns true
if the request succeeds; otherwise, it returns an error.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The IDs of the volumes.
*/ - export const filterSensitiveLog = (obj: EnableVpcClassicLinkResult): any => ({ - ...obj, - }); -} + VolumeIds?: string[]; -export interface EnableVpcClassicLinkDnsSupportRequest { /** - *The ID of the VPC.
+ *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.
The nextToken
value returned by a previous paginated request.
Returns true
if the request succeeds; otherwise, it returns an error.
The maximum number of results (up to a limit of 500) to be returned in a paginated + * request.
*/ - Return?: boolean; + MaxResults?: number; } -export namespace EnableVpcClassicLinkDnsSupportResult { +export namespace DescribeVolumesModificationsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: EnableVpcClassicLinkDnsSupportResult): any => ({ + export const filterSensitiveLog = (obj: DescribeVolumesModificationsRequest): any => ({ ...obj, }); } -export interface ExportClientVpnClientCertificateRevocationListRequest { +export type VolumeModificationState = "completed" | "failed" | "modifying" | "optimizing"; + +/** + *Describes the modification status of an EBS volume.
+ *If the volume has never been modified, some element values will be null.
+ */ +export interface VolumeModification { /** - *The ID of the Client VPN endpoint.
+ *The ID of the volume.
*/ - ClientVpnEndpointId: string | undefined; + VolumeId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The current modification state. The modification state is null for unmodified + * volumes.
*/ - DryRun?: boolean; -} + ModificationState?: VolumeModificationState | string; -export namespace ExportClientVpnClientCertificateRevocationListRequest { /** - * @internal + *A status message about the modification progress or failure.
*/ - export const filterSensitiveLog = (obj: ExportClientVpnClientCertificateRevocationListRequest): any => ({ - ...obj, - }); -} - -export type ClientCertificateRevocationListStatusCode = "active" | "pending"; + StatusMessage?: string; -/** - *Describes the state of a client certificate revocation list.
- */ -export interface ClientCertificateRevocationListStatus { /** - *The state of the client certificate revocation list.
+ *The target size of the volume, in GiB.
*/ - Code?: ClientCertificateRevocationListStatusCode | string; + TargetSize?: number; /** - *A message about the status of the client certificate revocation list, if applicable.
+ *The target IOPS rate of the volume.
*/ - Message?: string; -} + TargetIops?: number; -export namespace ClientCertificateRevocationListStatus { /** - * @internal + *The target EBS volume type of the volume.
*/ - export const filterSensitiveLog = (obj: ClientCertificateRevocationListStatus): any => ({ - ...obj, - }); -} + TargetVolumeType?: VolumeType | string; -export interface ExportClientVpnClientCertificateRevocationListResult { /** - *Information about the client certificate revocation list.
+ *The target throughput of the volume, in MiB/s.
*/ - CertificateRevocationList?: string; + TargetThroughput?: number; /** - *The current state of the client certificate revocation list.
+ *The target setting for Amazon EBS Multi-Attach.
*/ - Status?: ClientCertificateRevocationListStatus; -} + TargetMultiAttachEnabled?: boolean; -export namespace ExportClientVpnClientCertificateRevocationListResult { /** - * @internal + *The original size of the volume, in GiB.
*/ - export const filterSensitiveLog = (obj: ExportClientVpnClientCertificateRevocationListResult): any => ({ - ...obj, - }); -} + OriginalSize?: number; -export interface ExportClientVpnClientConfigurationRequest { /** - *The ID of the Client VPN endpoint.
+ *The original IOPS rate of the volume.
*/ - ClientVpnEndpointId: string | undefined; + OriginalIops?: number; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The original EBS volume type of the volume.
*/ - DryRun?: boolean; -} + OriginalVolumeType?: VolumeType | string; -export namespace ExportClientVpnClientConfigurationRequest { /** - * @internal + *The original throughput of the volume, in MiB/s.
*/ - export const filterSensitiveLog = (obj: ExportClientVpnClientConfigurationRequest): any => ({ - ...obj, - }); -} + OriginalThroughput?: number; -export interface ExportClientVpnClientConfigurationResult { /** - *The contents of the Client VPN endpoint configuration file.
+ *The original setting for Amazon EBS Multi-Attach.
*/ - ClientConfiguration?: string; -} + OriginalMultiAttachEnabled?: boolean; -export namespace ExportClientVpnClientConfigurationResult { /** - * @internal + *The modification progress, from 0 to 100 percent complete.
*/ - export const filterSensitiveLog = (obj: ExportClientVpnClientConfigurationResult): any => ({ - ...obj, - }); -} + Progress?: number; -/** - *Describes the destination for an export image task.
- */ -export interface ExportTaskS3LocationRequest { /** - *The destination Amazon S3 bucket.
+ *The modification start time.
*/ - S3Bucket: string | undefined; + StartTime?: Date; /** - *The prefix (logical hierarchy) in the bucket.
+ *The modification completion or failure time.
*/ - S3Prefix?: string; + EndTime?: Date; } -export namespace ExportTaskS3LocationRequest { +export namespace VolumeModification { /** * @internal */ - export const filterSensitiveLog = (obj: ExportTaskS3LocationRequest): any => ({ + export const filterSensitiveLog = (obj: VolumeModification): any => ({ ...obj, }); } -export interface ExportImageRequest { - /** - *Token to enable idempotency for export image requests.
- */ - ClientToken?: string; - - /** - *A description of the image being exported. The maximum length is 255 characters.
- */ - Description?: string; - +export interface DescribeVolumesModificationsResult { /** - *The disk image format.
+ *Information about the volume modifications.
*/ - DiskImageFormat: DiskImageFormat | string | undefined; + VolumesModifications?: VolumeModification[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Token for pagination, null if there are no more results
*/ - DryRun?: boolean; + NextToken?: string; +} +export namespace DescribeVolumesModificationsResult { /** - *The ID of the image.
+ * @internal */ - ImageId: string | undefined; + export const filterSensitiveLog = (obj: DescribeVolumesModificationsResult): any => ({ + ...obj, + }); +} +export interface DescribeVolumeStatusRequest { /** - *Information about the destination Amazon S3 bucket. The bucket must exist and grant WRITE - * and READ_ACP permissions to the Amazon Web Services account vm-import-export@amazon.com.
- */ - S3ExportLocation: ExportTaskS3LocationRequest | undefined; - - /** - *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'.
- */ - RoleName?: string; - - /** - *The tags to apply to the export image task during creation.
- */ - TagSpecifications?: TagSpecification[]; -} - -export namespace ExportImageRequest { - /** - * @internal - */ - export const filterSensitiveLog = (obj: ExportImageRequest): any => ({ - ...obj, - }); -} - -export interface ExportImageResult { - /** - *A description of the image being exported.
- */ - Description?: string; - - /** - *The disk image format for the exported image.
- */ - DiskImageFormat?: DiskImageFormat | string; - - /** - *The ID of the export image task.
- */ - ExportImageTaskId?: string; - - /** - *The ID of the image.
- */ - ImageId?: string; - - /** - *The name of the role that grants VM Import/Export permission to export images to your Amazon - * S3 bucket.
- */ - RoleName?: string; - - /** - *The percent complete of the export image task.
- */ - Progress?: string; - - /** - *Information about the destination Amazon S3 bucket.
- */ - S3ExportLocation?: ExportTaskS3Location; - - /** - *The status of the export image task. The possible values are active
, completed
,
- * deleting
, and deleted
.
The status message for the export image task.
- */ - StatusMessage?: string; - - /** - *Any tags assigned to the export image task.
- */ - Tags?: Tag[]; -} - -export namespace ExportImageResult { - /** - * @internal - */ - export const filterSensitiveLog = (obj: ExportImageResult): any => ({ - ...obj, - }); -} - -export interface ExportTransitGatewayRoutesRequest { - /** - *The ID of the route table.
- */ - TransitGatewayRouteTableId: string | undefined; - - /** - *One or more filters. The possible values are:
+ *The filters.
*
- * attachment.transit-gateway-attachment-id
- The id of the transit gateway attachment.
action.code
- The action code for the event (for example,
+ * enable-volume-io
).
*
- * attachment.resource-id
- The resource id of the transit gateway attachment.
action.description
- A description of the action.
*
- * route-search.exact-match
- The exact match of the specified filter.
action.event-id
- The event ID associated with the action.
*
- * route-search.longest-prefix-match
- The longest prefix that matches the route.
availability-zone
- The Availability Zone of the instance.
*
- * route-search.subnet-of-match
- The routes with a subnet that match the specified CIDR filter.
event.description
- A description of the event.
*
- * 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.
event.event-id
- The event ID.
*
- * state
- The state of the route (active
| blackhole
).
event.event-type
- The event type (for io-enabled
:
+ * passed
| failed
; for io-performance
:
+ * io-performance:degraded
| io-performance:severely-degraded
|
+ * io-performance:stalled
).
*
- * transit-gateway-route-destination-cidr-block
- The CIDR range.
event.not-after
- The latest end time for the event.
*
- * type
- The type of route (propagated
|
- * static
).
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
).
The name of the S3 bucket.
+ *The maximum number of volume results returned by DescribeVolumeStatus
in
+ * paginated output. When this parameter is used, the request 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
+ * 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.
+ * If this parameter is not used, then DescribeVolumeStatus
returns all results. You
+ * cannot specify this parameter and the volume IDs parameter in the same request.
The NextToken
value to include in a future DescribeVolumeStatus
+ * request. When the results of the 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.
The IDs of the volumes.
+ *Default: Describes all your volumes.
+ */ + VolumeIds?: string[]; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -5881,978 +5983,2266 @@ export interface ExportTransitGatewayRoutesRequest { DryRun?: boolean; } -export namespace ExportTransitGatewayRoutesRequest { +export namespace DescribeVolumeStatusRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ExportTransitGatewayRoutesRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeVolumeStatusRequest): any => ({ ...obj, }); } -export interface ExportTransitGatewayRoutesResult { +/** + *
Describes a volume status operation code.
+ */ +export interface VolumeStatusAction { /** - *The URL of the exported file in Amazon S3. For example, - * s3://bucket_name/VPCTransitGateway/TransitGatewayRouteTables/file_name.
+ *The code identifying the operation, for example, enable-volume-io
.
A description of the operation.
+ */ + Description?: string; + + /** + *The ID of the event associated with this operation.
+ */ + EventId?: string; + + /** + *The event type associated with this operation.
+ */ + EventType?: string; } -export namespace ExportTransitGatewayRoutesResult { +export namespace VolumeStatusAction { /** * @internal */ - export const filterSensitiveLog = (obj: ExportTransitGatewayRoutesResult): any => ({ + export const filterSensitiveLog = (obj: VolumeStatusAction): any => ({ ...obj, }); } -export interface GetAssociatedEnclaveCertificateIamRolesRequest { +/** + *Information about the instances to which the volume is attached.
+ */ +export interface VolumeStatusAttachmentStatus { /** - *The ARN of the ACM certificate for which to view the associated IAM roles, encryption keys, and Amazon - * S3 object information.
+ *The maximum IOPS supported by the attached instance.
*/ - CertificateArn?: string; + IoPerformance?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The ID of the attached instance.
*/ - DryRun?: boolean; + InstanceId?: string; } -export namespace GetAssociatedEnclaveCertificateIamRolesRequest { +export namespace VolumeStatusAttachmentStatus { /** * @internal */ - export const filterSensitiveLog = (obj: GetAssociatedEnclaveCertificateIamRolesRequest): any => ({ + export const filterSensitiveLog = (obj: VolumeStatusAttachmentStatus): any => ({ ...obj, }); } /** - *Information about the associated IAM roles.
+ *Describes a volume status event.
*/ -export interface AssociatedRole { +export interface VolumeStatusEvent { /** - *The ARN of the associated IAM role.
+ *A description of the event.
*/ - AssociatedRoleArn?: string; + Description?: string; /** - *The name of the Amazon S3 bucket in which the Amazon S3 object is stored.
+ *The ID of this event.
*/ - CertificateS3BucketName?: string; + EventId?: string; /** - *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
.
- *
The type of this event.
*/ - CertificateS3ObjectKey?: string; + EventType?: string; /** - *The ID of the KMS customer master key (CMK) used to encrypt the private key.
+ *The latest end time of the event.
*/ - EncryptionKmsKeyId?: string; -} + NotAfter?: Date; -export namespace AssociatedRole { /** - * @internal + *The earliest start time of the event.
*/ - export const filterSensitiveLog = (obj: AssociatedRole): any => ({ - ...obj, - }); -} + NotBefore?: Date; -export interface GetAssociatedEnclaveCertificateIamRolesResult { /** - *Information about the associated IAM roles.
+ *The ID of the instance associated with the event.
*/ - AssociatedRoles?: AssociatedRole[]; + InstanceId?: string; } -export namespace GetAssociatedEnclaveCertificateIamRolesResult { +export namespace VolumeStatusEvent { /** * @internal */ - export const filterSensitiveLog = (obj: GetAssociatedEnclaveCertificateIamRolesResult): any => ({ + export const filterSensitiveLog = (obj: VolumeStatusEvent): any => ({ ...obj, }); } -export interface GetAssociatedIpv6PoolCidrsRequest { - /** - *The ID of the IPv6 address pool.
- */ - PoolId: string | undefined; - - /** - *The token for the next page of results.
- */ - NextToken?: string; +export type VolumeStatusName = "io-enabled" | "io-performance"; +/** + *Describes a volume status.
+ */ +export interface VolumeStatusDetails { /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The name of the volume status.
*/ - MaxResults?: number; + Name?: VolumeStatusName | string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The intended status of the volume status.
*/ - DryRun?: boolean; + Status?: string; } -export namespace GetAssociatedIpv6PoolCidrsRequest { +export namespace VolumeStatusDetails { /** * @internal */ - export const filterSensitiveLog = (obj: GetAssociatedIpv6PoolCidrsRequest): any => ({ + export const filterSensitiveLog = (obj: VolumeStatusDetails): any => ({ ...obj, }); } +export type VolumeStatusInfoStatus = "impaired" | "insufficient-data" | "ok"; + /** - *Describes an IPv6 CIDR block association.
+ *Describes the status of a volume.
*/ -export interface Ipv6CidrAssociation { +export interface VolumeStatusInfo { /** - *The IPv6 CIDR block.
+ *The details of the volume status.
*/ - Ipv6Cidr?: string; + Details?: VolumeStatusDetails[]; /** - *The resource that's associated with the IPv6 CIDR block.
+ *The status of the volume.
*/ - AssociatedResource?: string; + Status?: VolumeStatusInfoStatus | string; } -export namespace Ipv6CidrAssociation { +export namespace VolumeStatusInfo { /** * @internal */ - export const filterSensitiveLog = (obj: Ipv6CidrAssociation): any => ({ + export const filterSensitiveLog = (obj: VolumeStatusInfo): any => ({ ...obj, }); } -export interface GetAssociatedIpv6PoolCidrsResult { +/** + *Describes the volume status.
+ */ +export interface VolumeStatusItem { /** - *Information about the IPv6 CIDR block associations.
+ *The details of the operation.
*/ - Ipv6CidrAssociations?: Ipv6CidrAssociation[]; + Actions?: VolumeStatusAction[]; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The Availability Zone of the volume.
*/ - NextToken?: string; -} + AvailabilityZone?: string; -export namespace GetAssociatedIpv6PoolCidrsResult { /** - * @internal + *The Amazon Resource Name (ARN) of the Outpost.
*/ - export const filterSensitiveLog = (obj: GetAssociatedIpv6PoolCidrsResult): any => ({ - ...obj, - }); -} + OutpostArn?: string; -export interface GetCapacityReservationUsageRequest { /** - *The ID of the Capacity Reservation.
+ *A list of events associated with the volume.
*/ - CapacityReservationId: string | undefined; + Events?: VolumeStatusEvent[]; /** - *The token to use to retrieve the next page of results.
+ *The volume ID.
*/ - NextToken?: string; + VolumeId?: string; /** - *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.
+ *The volume status.
*/ - MaxResults?: number; + VolumeStatus?: VolumeStatusInfo; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Information about the instances to which the volume is attached.
*/ - DryRun?: boolean; + AttachmentStatuses?: VolumeStatusAttachmentStatus[]; } -export namespace GetCapacityReservationUsageRequest { +export namespace VolumeStatusItem { /** * @internal */ - export const filterSensitiveLog = (obj: GetCapacityReservationUsageRequest): any => ({ + export const filterSensitiveLog = (obj: VolumeStatusItem): any => ({ ...obj, }); } -/** - *Information about the Capacity Reservation usage.
- */ -export interface InstanceUsage { +export interface DescribeVolumeStatusResult { /** - *The ID of the Amazon Web Services account that is making use of the Capacity Reservation.
+ *The token to use to retrieve the next page of results. This value is null
+ * when there are no more results to return.
The number of instances the Amazon Web Services account currently has in the Capacity Reservation.
+ *Information about the status of the volumes.
*/ - UsedInstanceCount?: number; + VolumeStatuses?: VolumeStatusItem[]; } -export namespace InstanceUsage { +export namespace DescribeVolumeStatusResult { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceUsage): any => ({ + export const filterSensitiveLog = (obj: DescribeVolumeStatusResult): any => ({ ...obj, }); } -export interface GetCapacityReservationUsageResult { +export type VpcAttributeName = "enableDnsHostnames" | "enableDnsSupport"; + +export interface DescribeVpcAttributeRequest { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The VPC attribute.
*/ - NextToken?: string; + Attribute: VpcAttributeName | string | undefined; /** - *The ID of the Capacity Reservation.
+ *The ID of the VPC.
*/ - CapacityReservationId?: string; + VpcId: string | undefined; /** - *The type of instance for which the Capacity Reservation reserves capacity.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The number of instances for which the Capacity Reservation reserves capacity.
+ * @internal */ - TotalInstanceCount?: number; + export const filterSensitiveLog = (obj: DescribeVpcAttributeRequest): any => ({ + ...obj, + }); +} +export interface DescribeVpcAttributeResult { /** - *The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.
+ *The ID of the VPC.
*/ - AvailableInstanceCount?: number; + VpcId?: string; /** - *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.
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.
Information about the Capacity Reservation usage.
+ *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.
The ID of the address pool.
- */ - PoolId: string | undefined; - +export interface DescribeVpcClassicLinkRequest { /** - *The filters. The following are the possible values:
- *
- * coip-address-usage.allocation-id
- *
One or more filters.
+ *
- * coip-address-usage.aws-account-id
- *
+ * is-classic-link-enabled
- Whether the VPC is enabled for ClassicLink
+ * (true
| false
).
- * coip-address-usage.aws-service
- *
+ * tag
:Owner
and the value TeamA
, specify tag:Owner
for the filter name and TeamA
for the filter value.
- * coip-address-usage.co-ip
- *
+ * 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.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The token for the next page of results.
+ *One or more VPCs for which you want to describe the ClassicLink status.
*/ - NextToken?: string; + VpcIds?: string[]; +} + +export namespace DescribeVpcClassicLinkRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcClassicLinkRequest): any => ({ + ...obj, + }); +} +/** + *Describes whether a VPC is enabled for ClassicLink.
+ */ +export interface VpcClassicLink { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Indicates whether the VPC is enabled for ClassicLink.
+ */ + ClassicLinkEnabled?: boolean; + + /** + *Any tags assigned to the VPC.
+ */ + Tags?: Tag[]; + + /** + *The ID of the VPC.
+ */ + VpcId?: string; +} + +export namespace VpcClassicLink { + /** + * @internal + */ + export const filterSensitiveLog = (obj: VpcClassicLink): any => ({ + ...obj, + }); +} + +export interface DescribeVpcClassicLinkResult { + /** + *The ClassicLink status of one or more VPCs.
+ */ + Vpcs?: VpcClassicLink[]; +} + +export namespace DescribeVpcClassicLinkResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcClassicLinkResult): any => ({ + ...obj, + }); +} + +export interface DescribeVpcClassicLinkDnsSupportRequest { + /** + *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ */ + NextToken?: string; + + /** + *One or more VPC IDs.
+ */ + VpcIds?: string[]; +} + +export namespace DescribeVpcClassicLinkDnsSupportRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcClassicLinkDnsSupportRequest): any => ({ + ...obj, + }); +} + +/** + *Describes the ClassicLink DNS support status of a VPC.
+ */ +export interface ClassicLinkDnsSupport { + /** + *Indicates whether ClassicLink DNS support is enabled for the VPC.
+ */ + ClassicLinkDnsSupported?: boolean; + + /** + *The ID of the VPC.
+ */ + VpcId?: string; +} + +export namespace ClassicLinkDnsSupport { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ClassicLinkDnsSupport): any => ({ + ...obj, + }); +} + +export interface DescribeVpcClassicLinkDnsSupportResult { + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the ClassicLink DNS support status of the VPCs.
+ */ + Vpcs?: ClassicLinkDnsSupport[]; +} + +export namespace DescribeVpcClassicLinkDnsSupportResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcClassicLinkDnsSupportResult): any => ({ + ...obj, + }); +} + +export interface DescribeVpcEndpointConnectionNotificationsRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the notification.
+ */ + ConnectionNotificationId?: string; + + /** + *One or more 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.
The maximum number of results to return in a single call. To retrieve the remaining
+ * results, make another request with the returned NextToken
value.
The token to request the next page of results.
+ */ + NextToken?: string; +} + +export namespace DescribeVpcEndpointConnectionNotificationsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcEndpointConnectionNotificationsRequest): any => ({ + ...obj, + }); +} + +export interface DescribeVpcEndpointConnectionNotificationsResult { + /** + *One or more notifications.
+ */ + ConnectionNotificationSet?: ConnectionNotification[]; + + /** + *The token to use to retrieve the next page of results. This value is
+ * null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
One or more filters.
+ *
+ * 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.
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.
The token to retrieve the next page of results.
+ */ + NextToken?: string; +} + +export namespace DescribeVpcEndpointConnectionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcEndpointConnectionsRequest): any => ({ + ...obj, + }); +} + +/** + *Describes a VPC endpoint connection to a service.
+ */ +export interface VpcEndpointConnection { + /** + *The ID of the service to which the endpoint is connected.
+ */ + ServiceId?: string; + + /** + *The ID of the VPC endpoint.
+ */ + VpcEndpointId?: string; + + /** + *The ID of the Amazon Web Services account that owns the VPC endpoint.
+ */ + VpcEndpointOwner?: string; + + /** + *The state of the VPC endpoint.
+ */ + VpcEndpointState?: State | string; + + /** + *The date and time that the VPC endpoint was created.
+ */ + CreationTimestamp?: Date; + + /** + *The DNS entries for the VPC endpoint.
+ */ + DnsEntries?: DnsEntry[]; + + /** + *The Amazon Resource Names (ARNs) of the network load balancers for the service.
+ */ + NetworkLoadBalancerArns?: string[]; + + /** + *The Amazon Resource Names (ARNs) of the Gateway Load Balancers for the service.
+ */ + GatewayLoadBalancerArns?: string[]; +} + +export namespace VpcEndpointConnection { + /** + * @internal + */ + export const filterSensitiveLog = (obj: VpcEndpointConnection): any => ({ + ...obj, + }); +} + +export interface DescribeVpcEndpointConnectionsResult { + /** + *Information about one or more VPC endpoint connections.
+ */ + VpcEndpointConnections?: VpcEndpointConnection[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for DescribeVpcEndpoints.
+ */ +export interface DescribeVpcEndpointsRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
One or more endpoint IDs.
+ */ + VpcEndpointIds?: string[]; + + /** + *One or more filters.
+ *
+ * service-name
- The name of the service.
+ * 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
).
+ * tag
: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.
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.
+ */ + MaxResults?: number; + + /** + *The token for the next set of items to return. (You received this token from a prior call.)
+ */ + NextToken?: string; +} + +export namespace DescribeVpcEndpointsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcEndpointsRequest): any => ({ + ...obj, + }); +} + +/** + *Contains the output of DescribeVpcEndpoints.
+ */ +export interface DescribeVpcEndpointsResult { + /** + *Information about the endpoints.
+ */ + VpcEndpoints?: VpcEndpoint[]; + + /** + *The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
+ */ + NextToken?: string; +} + +export namespace DescribeVpcEndpointsResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcEndpointsResult): any => ({ + ...obj, + }); +} + +export interface DescribeVpcEndpointServiceConfigurationsRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The IDs of one or more services.
+ */ + ServiceIds?: string[]; + + /** + *One or more 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
).
+ * tag
: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.
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.
The token to retrieve the next page of results.
+ */ + NextToken?: string; +} + +export namespace DescribeVpcEndpointServiceConfigurationsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcEndpointServiceConfigurationsRequest): any => ({ + ...obj, + }); +} + +export interface DescribeVpcEndpointServiceConfigurationsResult { + /** + *Information about one or more services.
+ */ + ServiceConfigurations?: ServiceConfiguration[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the service.
+ */ + ServiceId: string | undefined; + + /** + *One or more filters.
+ *
+ * principal
- The ARN of the principal.
+ * principal-type
- The principal type (All
|
+ * Service
| OrganizationUnit
| Account
+ * | User
| Role
).
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.
The token to retrieve the next page of results.
+ */ + NextToken?: string; +} + +export namespace DescribeVpcEndpointServicePermissionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcEndpointServicePermissionsRequest): any => ({ + ...obj, + }); +} + +export interface DescribeVpcEndpointServicePermissionsResult { + /** + *Information about one or more allowed principals.
+ */ + AllowedPrincipals?: AllowedPrincipal[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for DescribeVpcEndpointServices.
+ */ +export interface DescribeVpcEndpointServicesRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
One or more service names.
+ */ + ServiceNames?: string[]; + + /** + *One or more filters.
+ *
+ * service-name
- The name of the service.
+ * service-type
- The type of service (Interface
|
+ * Gateway
).
+ * tag
: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.
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.
+ */ + MaxResults?: number; + + /** + *The token for the next set of items to return. (You received this token from a prior call.)
+ */ + NextToken?: string; +} + +export namespace DescribeVpcEndpointServicesRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcEndpointServicesRequest): any => ({ + ...obj, + }); +} + +/** + *Information about the Private DNS name for interface endpoints.
+ */ +export interface PrivateDnsDetails { + /** + *The private DNS name assigned to the VPC endpoint service.
+ */ + PrivateDnsName?: string; +} + +export namespace PrivateDnsDetails { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PrivateDnsDetails): any => ({ + ...obj, + }); +} + +/** + *Describes a VPC endpoint service.
+ */ +export interface ServiceDetail { + /** + *The Amazon Resource Name (ARN) of the service.
+ */ + ServiceName?: string; + + /** + *The ID of the endpoint service.
+ */ + ServiceId?: string; + + /** + *The type of service.
+ */ + ServiceType?: ServiceTypeDetail[]; + + /** + *The Availability Zones in which the service is available.
+ */ + AvailabilityZones?: string[]; + + /** + *The Amazon Web Services account ID of the service owner.
+ */ + Owner?: string; + + /** + *The DNS names for the service.
+ */ + BaseEndpointDnsNames?: string[]; + + /** + *The private DNS name for the service.
+ */ + PrivateDnsName?: string; + + /** + *The private DNS names assigned to the VPC endpoint service.
+ */ + PrivateDnsNames?: PrivateDnsDetails[]; + + /** + *Indicates whether the service supports endpoint policies.
+ */ + VpcEndpointPolicySupported?: boolean; + + /** + *Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner.
+ */ + AcceptanceRequired?: boolean; + + /** + *Indicates whether the service manages its VPC endpoints. Management of the service VPC + * endpoints using the VPC endpoint API is restricted.
+ */ + ManagesVpcEndpoints?: boolean; + + /** + *Any tags assigned to the service.
+ */ + Tags?: Tag[]; + + /** + *The verification state of the VPC endpoint service.
+ *Consumers of the endpoint service cannot use the private name when the state is not verified
.
Contains the output of DescribeVpcEndpointServices.
+ */ +export interface DescribeVpcEndpointServicesResult { + /** + *A list of supported services.
+ */ + ServiceNames?: string[]; + + /** + *Information about the service.
+ */ + ServiceDetails?: ServiceDetail[]; + + /** + *The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
+ */ + NextToken?: string; +} + +export namespace DescribeVpcEndpointServicesResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpcEndpointServicesResult): any => ({ + ...obj, + }); +} + +export interface DescribeVpcPeeringConnectionsRequest { + /** + *One or more 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
: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.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
One or more VPC peering connection IDs.
+ *Default: Describes all your VPC peering connections.
+ */ + VpcPeeringConnectionIds?: string[]; + + /** + *The token for the next page of results.
+ */ + NextToken?: string; + + /** + *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Information about the VPC peering connections.
+ */ + VpcPeeringConnections?: VpcPeeringConnection[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
One or more 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
: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.
One or more VPC IDs.
+ *Default: Describes all your VPCs.
+ */ + VpcIds?: string[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The token for the next page of results.
+ */ + NextToken?: string; + + /** + *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Information about one or more VPCs.
+ */ + Vpcs?: Vpc[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for DescribeVpnConnections.
+ */ +export interface DescribeVpnConnectionsRequest { + /** + *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
: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.
One or more VPN connection IDs.
+ *Default: Describes your VPN connections.
+ */ + VpnConnectionIds?: string[]; + + /** + *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
Contains the output of DescribeVpnConnections.
+ */ +export interface DescribeVpnConnectionsResult { + /** + *Information about one or more VPN connections.
+ */ + VpnConnections?: VpnConnection[]; +} + +export namespace DescribeVpnConnectionsResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: DescribeVpnConnectionsResult): any => ({ + ...obj, + }); +} + +/** + *Contains the parameters for DescribeVpnGateways.
+ */ +export interface DescribeVpnGatewaysRequest { + /** + *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
: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.
One or more virtual private gateway IDs.
+ *Default: Describes all your virtual private gateways.
+ */ + VpnGatewayIds?: string[]; + + /** + *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
Contains the output of DescribeVpnGateways.
+ */ +export interface DescribeVpnGatewaysResult { + /** + *Information about one or more virtual private gateways.
*/ - DryRun?: boolean; + VpnGateways?: VpnGateway[]; } -export namespace GetCoipPoolUsageRequest { +export namespace DescribeVpnGatewaysResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetCoipPoolUsageRequest): any => ({ + export const filterSensitiveLog = (obj: DescribeVpnGatewaysResult): any => ({ ...obj, }); } -/** - *Describes address usage for a customer-owned address pool.
- */ -export interface CoipAddressUsage { +export interface DetachClassicLinkVpcRequest { /** - *The allocation ID of the 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
.
The Amazon Web Services account ID.
+ *The ID of the instance to unlink from the VPC.
*/ - AwsAccountId?: string; + InstanceId: string | undefined; /** - *The Amazon Web Services service.
+ *The ID of the VPC to which the instance is linked.
*/ - AwsService?: string; + VpcId: string | undefined; +} +export namespace DetachClassicLinkVpcRequest { /** - *The customer-owned IP address.
+ * @internal */ - CoIp?: string; + export const filterSensitiveLog = (obj: DetachClassicLinkVpcRequest): any => ({ + ...obj, + }); } -export namespace CoipAddressUsage { +export interface DetachClassicLinkVpcResult { + /** + *Returns true
if the request succeeds; otherwise, it returns an error.
The ID of the customer-owned address pool.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the address usage.
+ *The ID of the internet gateway.
*/ - CoipAddressUsages?: CoipAddressUsage[]; + InternetGatewayId: string | undefined; /** - *The ID of the local gateway route table.
+ *The ID of the VPC.
*/ - LocalGatewayRouteTableId?: string; + VpcId: string | undefined; } -export namespace GetCoipPoolUsageResult { +export namespace DetachInternetGatewayRequest { /** * @internal */ - export const filterSensitiveLog = (obj: GetCoipPoolUsageResult): any => ({ + export const filterSensitiveLog = (obj: DetachInternetGatewayRequest): any => ({ ...obj, }); } -export interface GetConsoleOutputRequest { +/** + *Contains the parameters for DetachNetworkInterface.
+ */ +export interface DetachNetworkInterfaceRequest { /** - *The ID of the instance.
+ *The ID of the attachment.
*/ - InstanceId: string | undefined; + AttachmentId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
*/
DryRun?: boolean;
/**
- * When enabled, retrieves the latest console output for the instance.
- *Default: disabled (false
)
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.
+ *The ID of the instance.
+ *The device name.
+ */ + Device?: string; + + /** + *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.
+ */ + Force?: boolean; + + /** + *The ID of the instance. If you are detaching a Multi-Attach enabled volume, you must specify an instance ID.
*/ InstanceId?: string; /** - *The console output, base64-encoded. If you are using a command line tool, the tool - * decodes the output for you.
+ *The ID of the volume.
*/ - Output?: string; + VolumeId: string | undefined; /** - *The time at which the output was last updated.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains the parameters for DetachVpnGateway.
+ */ +export interface DetachVpnGatewayRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the VPC.
*/ - DryRun?: boolean; + VpcId: string | undefined; /** - *The ID of the instance.
+ *The ID of the virtual private gateway.
*/ - InstanceId: string | undefined; + VpnGatewayId: string | undefined; /** - *When set to true
, acts as keystroke input and wakes up an instance that's
- * in standby or "sleep" mode.
Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The data that comprises the image.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the instance.
+ * @internal */ - InstanceId?: string; + export const filterSensitiveLog = (obj: DisableEbsEncryptionByDefaultRequest): any => ({ + ...obj, + }); } -export namespace GetConsoleScreenshotResult { +export interface DisableEbsEncryptionByDefaultResult { + /** + *The updated status of encryption by default.
+ */ + EbsEncryptionByDefault?: boolean; +} + +export namespace DisableEbsEncryptionByDefaultResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetConsoleScreenshotResult): any => ({ + export const filterSensitiveLog = (obj: DisableEbsEncryptionByDefaultResult): any => ({ ...obj, }); } -export type UnlimitedSupportedInstanceFamily = "t2" | "t3" | "t3a" | "t4g"; +export interface DisableFastSnapshotRestoresRequest { + /** + *One or more Availability Zones. For example, us-east-2a
.
The IDs of one or more snapshots. For example, snap-1234567890abcdef0
.
Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
The instance family.
- */ - InstanceFamily: UnlimitedSupportedInstanceFamily | string | undefined; } -export namespace GetDefaultCreditSpecificationRequest { +export namespace DisableFastSnapshotRestoresRequest { /** * @internal */ - export const filterSensitiveLog = (obj: GetDefaultCreditSpecificationRequest): any => ({ + export const filterSensitiveLog = (obj: DisableFastSnapshotRestoresRequest): any => ({ ...obj, }); } /** - *Describes the default credit option for CPU usage of a burstable performance instance family.
+ *Describes fast snapshot restores that were successfully disabled.
*/ -export interface InstanceFamilyCreditSpecification { +export interface DisableFastSnapshotRestoreSuccessItem { /** - *The instance family.
+ *The ID of the snapshot.
*/ - InstanceFamily?: UnlimitedSupportedInstanceFamily | string; + SnapshotId?: string; /** - *The default credit option for CPU usage of the instance family. Valid values are standard
and unlimited
.
The Availability Zone.
*/ - CpuCredits?: string; -} + AvailabilityZone?: string; -export namespace InstanceFamilyCreditSpecification { /** - * @internal + *The state of fast snapshot restores for the snapshot.
*/ - export const filterSensitiveLog = (obj: InstanceFamilyCreditSpecification): any => ({ - ...obj, - }); -} + State?: FastSnapshotRestoreStateCode | string; -export interface GetDefaultCreditSpecificationResult { /** - *The default credit option for CPU usage of the instance family.
+ *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
.
The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.
+ */ + OwnerId?: string; -export namespace GetDefaultCreditSpecificationResult { /** - * @internal + *The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.
*/ - export const filterSensitiveLog = (obj: GetDefaultCreditSpecificationResult): any => ({ - ...obj, - }); -} + OwnerAlias?: string; -export interface GetEbsDefaultKmsKeyIdRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The time at which fast snapshot restores entered the enabling
state.
The time at which fast snapshot restores entered the optimizing
state.
The Amazon Resource Name (ARN) of the default KMS key for encryption by default.
+ *The time at which fast snapshot restores entered the enabled
state.
The time at which fast snapshot restores entered the disabling
state.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The time at which fast snapshot restores entered the disabled
state.
Describes an error that occurred when disabling fast snapshot restores.
+ */ +export interface DisableFastSnapshotRestoreStateError { /** - *Indicates whether encryption by default is enabled.
+ *The error code.
*/ - EbsEncryptionByDefault?: boolean; + Code?: string; + + /** + *The error message.
+ */ + Message?: string; } -export namespace GetEbsEncryptionByDefaultResult { +export namespace DisableFastSnapshotRestoreStateError { /** * @internal */ - export const filterSensitiveLog = (obj: GetEbsEncryptionByDefaultResult): any => ({ + export const filterSensitiveLog = (obj: DisableFastSnapshotRestoreStateError): any => ({ ...obj, }); } -export enum PartitionLoadFrequency { - DAILY = "daily", - MONTHLY = "monthly", - NONE = "none", - WEEKLY = "weekly", -} - /** - *Describes integration options for Amazon Athena.
+ *Contains information about an error that occurred when disabling fast snapshot restores.
*/ -export interface AthenaIntegration { - /** - *The location in Amazon S3 to store the generated CloudFormation template.
- */ - IntegrationResultS3DestinationArn: string | undefined; - - /** - *The schedule for adding new partitions to the table.
- */ - PartitionLoadFrequency: PartitionLoadFrequency | string | undefined; - +export interface DisableFastSnapshotRestoreStateErrorItem { /** - *The start date for the partition.
+ *The Availability Zone.
*/ - PartitionStartDate?: Date; + AvailabilityZone?: string; /** - *The end date for the partition.
+ *The error.
*/ - PartitionEndDate?: Date; + Error?: DisableFastSnapshotRestoreStateError; } -export namespace AthenaIntegration { +export namespace DisableFastSnapshotRestoreStateErrorItem { /** * @internal */ - export const filterSensitiveLog = (obj: AthenaIntegration): any => ({ + export const filterSensitiveLog = (obj: DisableFastSnapshotRestoreStateErrorItem): any => ({ ...obj, }); } /** - *Describes service integrations with VPC Flow logs.
+ *Contains information about the errors that occurred when disabling fast snapshot restores.
*/ -export interface IntegrateServices { +export interface DisableFastSnapshotRestoreErrorItem { /** - *Information about the integration with Amazon Athena.
+ *The ID of the snapshot.
*/ - AthenaIntegrations?: AthenaIntegration[]; + SnapshotId?: string; + + /** + *The errors.
+ */ + FastSnapshotRestoreStateErrors?: DisableFastSnapshotRestoreStateErrorItem[]; } -export namespace IntegrateServices { +export namespace DisableFastSnapshotRestoreErrorItem { /** * @internal */ - export const filterSensitiveLog = (obj: IntegrateServices): any => ({ + export const filterSensitiveLog = (obj: DisableFastSnapshotRestoreErrorItem): any => ({ ...obj, }); } -export interface GetFlowLogsIntegrationTemplateRequest { +export interface DisableFastSnapshotRestoresResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the snapshots for which fast snapshot restores were successfully disabled.
*/ - DryRun?: boolean; + Successful?: DisableFastSnapshotRestoreSuccessItem[]; /** - *The ID of the flow log.
+ *Information about the snapshots for which fast snapshot restores could not be disabled.
*/ - FlowLogId: string | undefined; + Unsuccessful?: DisableFastSnapshotRestoreErrorItem[]; +} +export namespace DisableFastSnapshotRestoresResult { /** - *To store the CloudFormation template in Amazon S3, specify the location in Amazon S3.
+ * @internal */ - ConfigDeliveryS3DestinationArn: string | undefined; + export const filterSensitiveLog = (obj: DisableFastSnapshotRestoresResult): any => ({ + ...obj, + }); +} +export interface DisableImageDeprecationRequest { /** - *Information about the service integration.
+ *The ID of the AMI.
*/ - IntegrateServices: IntegrateServices | undefined; + ImageId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The generated CloudFormation template.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
The ID of the Capacity Reservation.
+ *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
.
The token to use to retrieve the next page of results.
+ *The Organizations member account ID that you want to disable as IPAM account.
*/ - NextToken?: string; + DelegatedAdminAccountId: string | undefined; +} +export namespace DisableIpamOrganizationAdminAccountRequest { /** - *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.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The result of disabling the IPAM account.
*/ - DryRun?: boolean; + Success?: boolean; } -export namespace GetGroupsForCapacityReservationRequest { +export namespace DisableIpamOrganizationAdminAccountResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetGroupsForCapacityReservationRequest): any => ({ + export const filterSensitiveLog = (obj: DisableIpamOrganizationAdminAccountResult): any => ({ ...obj, }); } -/** - *Describes a resource group to which a Capacity Reservation has been added.
- */ -export interface CapacityReservationGroup { - /** - *The ARN of the resource group.
- */ - GroupArn?: string; - +export interface DisableSerialConsoleAccessRequest { /** - *The ID of the Amazon Web Services account that owns the resource group.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the resource groups to which the Capacity Reservation has been added.
+ *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.
The IDs of the Dedicated Hosts with which the reservation is associated.
+ *The ID of the propagation route table.
*/ - HostIdSet: string[] | undefined; + TransitGatewayRouteTableId: string | undefined; /** - *The offering ID of the reservation.
+ *The ID of the attachment.
*/ - OfferingId: string | undefined; + TransitGatewayAttachmentId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes the result of the purchase.
+ *Describes route propagation.
*/ -export interface Purchase { - /** - *The currency in which the UpfrontPrice
and HourlyPrice
- * amounts are specified. At this time, the only supported currency is
- * USD
.
The duration of the reservation's term in seconds.
+ *The ID of the attachment.
*/ - Duration?: number; + TransitGatewayAttachmentId?: string; /** - *The IDs of the Dedicated Hosts associated with the reservation.
+ *The ID of the resource.
*/ - HostIdSet?: string[]; + ResourceId?: string; /** - *The ID of the reservation.
+ *The resource type. Note that the tgw-peering
resource type has been deprecated.
The hourly price of the reservation per hour.
+ *The ID of the transit gateway route table.
*/ - HourlyPrice?: string; + TransitGatewayRouteTableId?: string; /** - *The instance family on the Dedicated Host that the reservation can be associated - * with.
+ *The state.
*/ - InstanceFamily?: string; + State?: TransitGatewayPropagationState | string; +} +export namespace TransitGatewayPropagation { /** - *The payment option for the reservation.
+ * @internal */ - PaymentOption?: PaymentOption | string; + export const filterSensitiveLog = (obj: TransitGatewayPropagation): any => ({ + ...obj, + }); +} +export interface DisableTransitGatewayRouteTablePropagationResult { /** - *The upfront price of the reservation.
+ *Information about route propagation.
*/ - UpfrontPrice?: string; + Propagation?: TransitGatewayPropagation; } -export namespace Purchase { +export namespace DisableTransitGatewayRouteTablePropagationResult { /** * @internal */ - export const filterSensitiveLog = (obj: Purchase): any => ({ + export const filterSensitiveLog = (obj: DisableTransitGatewayRouteTablePropagationResult): any => ({ ...obj, }); } -export interface GetHostReservationPurchasePreviewResult { - /** - *The currency in which the totalUpfrontPrice
and
- * totalHourlyPrice
amounts are specified. At this time, the only
- * supported currency is USD
.
Contains the parameters for DisableVgwRoutePropagation.
+ */ +export interface DisableVgwRoutePropagationRequest { /** - *The purchase information of the Dedicated Host reservation and the Dedicated Hosts - * associated with it.
+ *The ID of the virtual private gateway.
*/ - Purchase?: Purchase[]; + GatewayId: string | undefined; /** - *The potential total hourly price of the reservation per hour.
+ *The ID of the route table.
*/ - TotalHourlyPrice?: string; + RouteTableId: string | undefined; /** - *The potential total upfront price. This is billed immediately.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -6861,290 +8251,296 @@ export interface GetInstanceTypesFromInstanceRequirementsRequest {
DryRun?: boolean;
/**
- *
The processor architecture type.
+ *The ID of the VPC.
*/ - ArchitectureTypes: (ArchitectureType | string)[] | undefined; + VpcId: string | undefined; +} +export namespace DisableVpcClassicLinkRequest { /** - *The virtualization type.
+ * @internal */ - VirtualizationTypes: (VirtualizationType | string)[] | undefined; + export const filterSensitiveLog = (obj: DisableVpcClassicLinkRequest): any => ({ + ...obj, + }); +} +export interface DisableVpcClassicLinkResult { /** - *The attributes required for the instance types.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
The maximum number of results to return in a single call. Specify a value between 1 and
- * 1000. The default value is 1000. To retrieve the remaining results, make another call with
- * the returned NextToken
value.
The token for the next set of results.
+ *The ID of the VPC.
*/ - NextToken?: string; + VpcId?: string; } -export namespace GetInstanceTypesFromInstanceRequirementsRequest { +export namespace DisableVpcClassicLinkDnsSupportRequest { /** * @internal */ - export const filterSensitiveLog = (obj: GetInstanceTypesFromInstanceRequirementsRequest): any => ({ + export const filterSensitiveLog = (obj: DisableVpcClassicLinkDnsSupportRequest): any => ({ ...obj, }); } -/** - *The list of instance types with the specified instance attributes.
- */ -export interface InstanceTypeInfoFromInstanceRequirements { +export interface DisableVpcClassicLinkDnsSupportResult { /** - *The matching instance type.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
The instance types with the specified instance attributes.
+ *[EC2-VPC] The association ID. Required for EC2-VPC.
*/ - InstanceTypes?: InstanceTypeInfoFromInstanceRequirements[]; + AssociationId?: string; /** - *The token for the next set of results.
+ *[EC2-Classic] The Elastic IP address. Required for EC2-Classic.
*/ - NextToken?: string; + PublicIp?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The ID of the Client VPN endpoint from which to disassociate the target network.
*/ - DryRun?: boolean; + ClientVpnEndpointId: string | undefined; /** - *The ID of the instance.
+ *The ID of the target network association.
*/ - InstanceId: string | undefined; + AssociationId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The ID of the target network association.
+ */ + AssociationId?: string; + /** - *The instance data.
+ *The current state of the target network association.
*/ - LaunchTemplateData?: ResponseLaunchTemplateData; + Status?: AssociationStatus; } -export namespace GetLaunchTemplateDataResult { +export namespace DisassociateClientVpnTargetNetworkResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetLaunchTemplateDataResult): any => ({ + export const filterSensitiveLog = (obj: DisassociateClientVpnTargetNetworkResult): any => ({ ...obj, }); } -export interface GetManagedPrefixListAssociationsRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the prefix list.
+ *The ARN of the ACM certificate from which to disassociate the IAM role.
*/ - PrefixListId: string | undefined; + CertificateArn?: string; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The ARN of the IAM role to disassociate.
*/ - MaxResults?: number; + RoleArn?: string; /** - *The token for the next page of results.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Describes the resource with which a prefix list is associated.
- */ -export interface PrefixListAssociation { - /** - *The ID of the resource.
- */ - ResourceId?: string; - +export interface DisassociateEnclaveCertificateIamRoleResult { /** - *The owner of the resource.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
Information about the associations.
- */ - PrefixListAssociations?: PrefixListAssociation[]; - +export interface DisassociateIamInstanceProfileRequest { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the IAM instance profile association.
*/ - NextToken?: string; + AssociationId: string | undefined; } -export namespace GetManagedPrefixListAssociationsResult { +export namespace DisassociateIamInstanceProfileRequest { /** * @internal */ - export const filterSensitiveLog = (obj: GetManagedPrefixListAssociationsResult): any => ({ + export const filterSensitiveLog = (obj: DisassociateIamInstanceProfileRequest): any => ({ ...obj, }); } -export interface GetManagedPrefixListEntriesRequest { +export interface DisassociateIamInstanceProfileResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the IAM instance profile association.
*/ - DryRun?: boolean; + IamInstanceProfileAssociation?: IamInstanceProfileAssociation; +} +export namespace DisassociateIamInstanceProfileResult { /** - *The ID of the prefix list.
+ * @internal */ - PrefixListId: string | undefined; + export const filterSensitiveLog = (obj: DisassociateIamInstanceProfileResult): any => ({ + ...obj, + }); +} +/** + *The targets to disassociate from the specified event window.
+ */ +export interface InstanceEventWindowDisassociationRequest { /** - *The version of the prefix list for which to return the entries. The default is the current version.
+ *The IDs of the instances to disassociate from the event window.
*/ - TargetVersion?: number; + InstanceIds?: string[]; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The instance tags to disassociate from the event window. Any instances associated with + * the tags will be disassociated from the event window.
*/ - MaxResults?: number; + InstanceTags?: Tag[]; /** - *The token for the next page of results.
+ *The IDs of the Dedicated Hosts to disassociate from the event window.
*/ - NextToken?: string; + DedicatedHostIds?: string[]; } -export namespace GetManagedPrefixListEntriesRequest { +export namespace InstanceEventWindowDisassociationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: GetManagedPrefixListEntriesRequest): any => ({ - ...obj, - }); -} + export const filterSensitiveLog = (obj: InstanceEventWindowDisassociationRequest): any => ({ + ...obj, + }); +} + +export interface DisassociateInstanceEventWindowRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a prefix list entry.
- */ -export interface PrefixListEntry { /** - *The CIDR block.
+ *The ID of the event window.
*/ - Cidr?: string; + InstanceEventWindowId: string | undefined; /** - *The description.
+ *One or more targets to disassociate from the specified event window.
*/ - Description?: string; + AssociationTarget: InstanceEventWindowDisassociationRequest | undefined; } -export namespace PrefixListEntry { +export namespace DisassociateInstanceEventWindowRequest { /** * @internal */ - export const filterSensitiveLog = (obj: PrefixListEntry): any => ({ + export const filterSensitiveLog = (obj: DisassociateInstanceEventWindowRequest): any => ({ ...obj, }); } -export interface GetManagedPrefixListEntriesResult { - /** - *Information about the prefix list entries.
- */ - Entries?: PrefixListEntry[]; - +export interface DisassociateInstanceEventWindowResult { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the event window.
*/ - NextToken?: string; + InstanceEventWindow?: InstanceEventWindow; } -export namespace GetManagedPrefixListEntriesResult { +export namespace DisassociateInstanceEventWindowResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetManagedPrefixListEntriesResult): any => ({ + export const filterSensitiveLog = (obj: DisassociateInstanceEventWindowResult): any => ({ ...obj, }); } -export interface GetPasswordDataRequest { +export interface DisassociateRouteTableRequest { /** - *The ID of the Windows instance.
+ *The association ID representing the current association between the route table and subnet or gateway.
*/ - InstanceId: string | undefined; + AssociationId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -7154,669 +8550,609 @@ export interface GetPasswordDataRequest { DryRun?: boolean; } -export namespace GetPasswordDataRequest { +export namespace DisassociateRouteTableRequest { /** * @internal */ - export const filterSensitiveLog = (obj: GetPasswordDataRequest): any => ({ + export const filterSensitiveLog = (obj: DisassociateRouteTableRequest): any => ({ ...obj, }); } -export interface GetPasswordDataResult { +export interface DisassociateSubnetCidrBlockRequest { /** - *
The ID of the Windows instance.
+ *The association ID for the CIDR block.
*/ - InstanceId?: string; + AssociationId: string | undefined; +} +export namespace DisassociateSubnetCidrBlockRequest { /** - *The password of the instance. Returns an empty string if the password is not - * available.
+ * @internal */ - PasswordData?: string; + export const filterSensitiveLog = (obj: DisassociateSubnetCidrBlockRequest): any => ({ + ...obj, + }); +} +export interface DisassociateSubnetCidrBlockResult { /** - *The time the data was last updated.
+ *Information about the IPv6 CIDR block association.
*/ - Timestamp?: Date; + Ipv6CidrBlockAssociation?: SubnetIpv6CidrBlockAssociation; + + /** + *The ID of the subnet.
+ */ + SubnetId?: string; } -export namespace GetPasswordDataResult { +export namespace DisassociateSubnetCidrBlockResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetPasswordDataResult): any => ({ + export const filterSensitiveLog = (obj: DisassociateSubnetCidrBlockResult): any => ({ ...obj, }); } -/** - *Contains the parameters for GetReservedInstanceExchangeQuote.
- */ -export interface GetReservedInstancesExchangeQuoteRequest { +export interface DisassociateTransitGatewayMulticastDomainRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the transit gateway multicast domain.
*/ - DryRun?: boolean; + TransitGatewayMulticastDomainId?: string; + + /** + *The ID of the attachment.
+ */ + TransitGatewayAttachmentId?: string; /** - *The IDs of the Convertible Reserved Instances to exchange.
+ *The IDs of the subnets;
*/ - ReservedInstanceIds: string[] | undefined; + SubnetIds?: string[]; /** - *The configuration of the target Convertible Reserved Instance to exchange for your - * current Convertible Reserved Instances.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The cost associated with the Reserved Instance.
- */ -export interface ReservationValue { - /** - *The hourly rate of the reservation.
- */ - HourlyPrice?: string; - - /** - *The balance of the total value (the sum of remainingUpfrontValue + hourlyPrice * number of hours remaining).
- */ - RemainingTotalValue?: string; - +export interface DisassociateTransitGatewayMulticastDomainResult { /** - *The remaining upfront cost of the reservation.
+ *Information about the association.
*/ - RemainingUpfrontValue?: string; + Associations?: TransitGatewayMulticastDomainAssociations; } -export namespace ReservationValue { +export namespace DisassociateTransitGatewayMulticastDomainResult { /** * @internal */ - export const filterSensitiveLog = (obj: ReservationValue): any => ({ + export const filterSensitiveLog = (obj: DisassociateTransitGatewayMulticastDomainResult): any => ({ ...obj, }); } -/** - *The total value of the Convertible Reserved Instance.
- */ -export interface ReservedInstanceReservationValue { +export interface DisassociateTransitGatewayRouteTableRequest { + /** + *The ID of the transit gateway route table.
+ */ + TransitGatewayRouteTableId: string | undefined; + /** - *The total value of the Convertible Reserved Instance that you are exchanging.
+ *The ID of the attachment.
*/ - ReservationValue?: ReservationValue; + TransitGatewayAttachmentId: string | undefined; /** - *The ID of the Convertible Reserved Instance that you are exchanging.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the Convertible Reserved Instance offering.
- */ -export interface TargetConfiguration { - /** - *The number of instances the Convertible Reserved Instance offering can be applied to. This parameter is - * reserved and cannot be specified in a request
- */ - InstanceCount?: number; - +export interface DisassociateTransitGatewayRouteTableResult { /** - *The ID of the Convertible Reserved Instance offering.
+ *Information about the association.
*/ - OfferingId?: string; + Association?: TransitGatewayAssociation; } -export namespace TargetConfiguration { +export namespace DisassociateTransitGatewayRouteTableResult { /** * @internal */ - export const filterSensitiveLog = (obj: TargetConfiguration): any => ({ + export const filterSensitiveLog = (obj: DisassociateTransitGatewayRouteTableResult): any => ({ ...obj, }); } -/** - *The total value of the new Convertible Reserved Instances.
- */ -export interface TargetReservationValue { +export interface DisassociateTrunkInterfaceRequest { /** - *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.
+ *The ID of the association
+ */ + AssociationId: string | undefined; + + /** + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. For more information, see How to Ensure + * Idempotency.
*/ - ReservationValue?: ReservationValue; + ClientToken?: string; /** - *The configuration of the Convertible Reserved Instances that make up the exchange.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains the output of GetReservedInstancesExchangeQuote.
- */ -export interface GetReservedInstancesExchangeQuoteResult { - /** - *The currency of the transaction.
- */ - CurrencyCode?: string; - +export interface DisassociateTrunkInterfaceResult { /** - *If true
, the exchange is valid. If false
, the exchange cannot be completed.
Returns true
if the request succeeds; otherwise, it returns an error.
The new end date of the reservation term.
+ *Unique, case-sensitive identifier that you provide to ensure the idempotency of the + * request. For more information, see How to Ensure + * Idempotency.
*/ - OutputReservedInstancesWillExpireAt?: Date; + ClientToken?: string; +} +export namespace DisassociateTrunkInterfaceResult { /** - *The total true upfront charge for the exchange.
+ * @internal */ - PaymentDue?: string; + export const filterSensitiveLog = (obj: DisassociateTrunkInterfaceResult): any => ({ + ...obj, + }); +} +export interface DisassociateVpcCidrBlockRequest { /** - *The cost associated with the Reserved Instance.
+ *The association ID for the CIDR block.
*/ - ReservedInstanceValueRollup?: ReservationValue; + AssociationId: string | undefined; +} +export namespace DisassociateVpcCidrBlockRequest { /** - *The configuration of your Convertible Reserved Instances.
+ * @internal */ - ReservedInstanceValueSet?: ReservedInstanceReservationValue[]; + export const filterSensitiveLog = (obj: DisassociateVpcCidrBlockRequest): any => ({ + ...obj, + }); +} +export interface DisassociateVpcCidrBlockResult { /** - *The cost associated with the Reserved Instance.
+ *Information about the IPv6 CIDR block association.
*/ - TargetConfigurationValueRollup?: ReservationValue; + Ipv6CidrBlockAssociation?: VpcIpv6CidrBlockAssociation; /** - *The values of the target Convertible Reserved Instances.
+ *Information about the IPv4 CIDR block association.
*/ - TargetConfigurationValueSet?: TargetReservationValue[]; + CidrBlockAssociation?: VpcCidrBlockAssociation; /** - *Describes the reason why the exchange cannot be completed.
+ *The ID of the VPC.
*/ - ValidationFailureReason?: string; + VpcId?: string; } -export namespace GetReservedInstancesExchangeQuoteResult { +export namespace DisassociateVpcCidrBlockResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetReservedInstancesExchangeQuoteResult): any => ({ + export const filterSensitiveLog = (obj: DisassociateVpcCidrBlockResult): any => ({ ...obj, }); } -export interface GetSerialConsoleAccessStatusRequest { +export interface EnableEbsEncryptionByDefaultRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
The updated status of encryption by default.
*/ - SerialConsoleAccessEnabled?: boolean; + EbsEncryptionByDefault?: boolean; } -export namespace GetSerialConsoleAccessStatusResult { +export namespace EnableEbsEncryptionByDefaultResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetSerialConsoleAccessStatusResult): any => ({ + export const filterSensitiveLog = (obj: EnableEbsEncryptionByDefaultResult): any => ({ ...obj, }); } -/** - *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
.
The architecture type.
+ *One or more Availability Zones. For example, us-east-2a
.
The virtualization type.
+ *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.
The attributes for the instance types. When you specify instance attributes, Amazon EC2 will - * identify instance types with those attributes.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes fast snapshot restores that were successfully enabled.
+ */ +export interface EnableFastSnapshotRestoreSuccessItem { /** - *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
.
The ID of the snapshot.
*/ - InstanceTypes?: string[]; + SnapshotId?: string; /** - *The target capacity.
+ *The Availability Zone.
*/ - TargetCapacity: number | undefined; + AvailabilityZone?: string; /** - *The unit for the target capacity.
- *Default: units
(translates to number of instances)
The state of fast snapshot restores.
*/ - TargetCapacityUnitType?: TargetCapacityUnitType | string; + State?: FastSnapshotRestoreStateCode | string; + + /** + *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
.
The ID of the Amazon Web Services account that enabled fast snapshot restores on the snapshot.
+ */ + OwnerId?: string; /** - *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.
+ *The Amazon Web Services owner alias that enabled fast snapshot restores on the snapshot. This is intended for future use.
*/ - SingleAvailabilityZone?: boolean; + OwnerAlias?: string; /** - *The Regions used to narrow down the list of Regions to be scored. Enter the Region code,
- * for example, us-east-1
.
The time at which fast snapshot restores entered the enabling
state.
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
.
The time at which fast snapshot restores entered the optimizing
state.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The time at which fast snapshot restores entered the enabled
state.
The maximum number of results to return in a single call. Specify a value between 1 and
- * 1000. The default value is 1000. To retrieve the remaining results, make another call with
- * the returned NextToken
value.
The time at which fast snapshot restores entered the disabling
state.
The token for the next set of results.
+ *The time at which fast snapshot restores entered the disabled
state.
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.
Describes an error that occurred when enabling fast snapshot restores.
*/ -export interface SpotPlacementScore { - /** - *The Region.
- */ - Region?: string; - +export interface EnableFastSnapshotRestoreStateError { /** - *The Availability Zone.
+ *The error code.
*/ - AvailabilityZoneId?: string; + Code?: string; /** - *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.
The error message.
*/ - Score?: number; + Message?: string; } -export namespace SpotPlacementScore { +export namespace EnableFastSnapshotRestoreStateError { /** * @internal */ - export const filterSensitiveLog = (obj: SpotPlacementScore): any => ({ + export const filterSensitiveLog = (obj: EnableFastSnapshotRestoreStateError): any => ({ ...obj, }); } -export interface GetSpotPlacementScoresResult { +/** + *Contains information about an error that occurred when enabling fast snapshot restores.
+ */ +export interface EnableFastSnapshotRestoreStateErrorItem { /** - *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.
- *The Availability Zone.
*/ - SpotPlacementScores?: SpotPlacementScore[]; + AvailabilityZone?: string; /** - *The token for the next set of results.
+ *The error.
*/ - NextToken?: string; + Error?: EnableFastSnapshotRestoreStateError; } -export namespace GetSpotPlacementScoresResult { +export namespace EnableFastSnapshotRestoreStateErrorItem { /** * @internal */ - export const filterSensitiveLog = (obj: GetSpotPlacementScoresResult): any => ({ + export const filterSensitiveLog = (obj: EnableFastSnapshotRestoreStateErrorItem): any => ({ ...obj, }); } -export interface GetSubnetCidrReservationsRequest { +/** + *Contains information about the errors that occurred when enabling fast snapshot restores.
+ */ +export interface EnableFastSnapshotRestoreErrorItem { /** - *One or more filters.
- *
- * reservationType
- The type of reservation (prefix
|
- * explicit
).
- * subnet-id
- The ID of the subnet.
- * tag
: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.
The ID of the snapshot.
*/ - Filters?: Filter[]; + SnapshotId?: string; /** - *The ID of the subnet.
+ *The errors.
*/ - SubnetId: string | undefined; + FastSnapshotRestoreStateErrors?: EnableFastSnapshotRestoreStateErrorItem[]; +} +export namespace EnableFastSnapshotRestoreErrorItem { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The token for the next page of results.
+ *Information about the snapshots for which fast snapshot restores were successfully enabled.
*/ - NextToken?: string; + Successful?: EnableFastSnapshotRestoreSuccessItem[]; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Information about the snapshots for which fast snapshot restores could not be enabled.
*/ - MaxResults?: number; + Unsuccessful?: EnableFastSnapshotRestoreErrorItem[]; } -export namespace GetSubnetCidrReservationsRequest { +export namespace EnableFastSnapshotRestoresResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetSubnetCidrReservationsRequest): any => ({ + export const filterSensitiveLog = (obj: EnableFastSnapshotRestoresResult): any => ({ ...obj, }); } -export interface GetSubnetCidrReservationsResult { +export interface EnableImageDeprecationRequest { /** - *Information about the IPv4 subnet CIDR reservations.
+ *The ID of the AMI.
*/ - SubnetIpv4CidrReservations?: SubnetCidrReservation[]; + ImageId: string | undefined; /** - *Information about the IPv6 subnet CIDR reservations.
+ *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.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the attachment.
- */ - TransitGatewayAttachmentId: string | undefined; - - /** - *One or more filters. The possible values are:
- *
- * transit-gateway-route-table-id
- The ID of the transit gateway route table.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
Returns true
if the request succeeds; otherwise, it returns an error.
The token for the next page of results.
+ * @internal */ - NextToken?: string; + export const filterSensitiveLog = (obj: EnableImageDeprecationResult): any => ({ + ...obj, + }); +} +export interface EnableIpamOrganizationAdminAccountRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request, + *
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
.
The Organizations member account ID that you want to enable as the IPAM account.
+ */ + DelegatedAdminAccountId: string | undefined; } -export namespace GetTransitGatewayAttachmentPropagationsRequest { +export namespace EnableIpamOrganizationAdminAccountRequest { /** * @internal */ - export const filterSensitiveLog = (obj: GetTransitGatewayAttachmentPropagationsRequest): any => ({ + export const filterSensitiveLog = (obj: EnableIpamOrganizationAdminAccountRequest): any => ({ ...obj, }); } -/** - *Describes a propagation route table.
- */ -export interface TransitGatewayAttachmentPropagation { - /** - *The ID of the propagation route table.
- */ - TransitGatewayRouteTableId?: string; - +export interface EnableIpamOrganizationAdminAccountResult { /** - *The state of the propagation route table.
+ *The result of enabling the IPAM account.
*/ - State?: TransitGatewayPropagationState | string; + Success?: boolean; } -export namespace TransitGatewayAttachmentPropagation { +export namespace EnableIpamOrganizationAdminAccountResult { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayAttachmentPropagation): any => ({ + export const filterSensitiveLog = (obj: EnableIpamOrganizationAdminAccountResult): any => ({ ...obj, }); } -export interface GetTransitGatewayAttachmentPropagationsResult { - /** - *Information about the propagation route tables.
- */ - TransitGatewayAttachmentPropagations?: TransitGatewayAttachmentPropagation[]; - +export interface EnableSerialConsoleAccessRequest { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The ID of the transit gateway multicast domain.
+ *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.
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.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The ID of the propagation route table.
*/ - MaxResults?: number; + TransitGatewayRouteTableId: string | undefined; /** - *The token for the next page of results.
+ *The ID of the attachment.
*/ - NextToken?: string; + TransitGatewayAttachmentId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -7826,314 +9162,304 @@ export interface GetTransitGatewayMulticastDomainAssociationsRequest { DryRun?: boolean; } -export namespace GetTransitGatewayMulticastDomainAssociationsRequest { +export namespace EnableTransitGatewayRouteTablePropagationRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: EnableTransitGatewayRouteTablePropagationRequest): any => ({ + ...obj, + }); +} + +export interface EnableTransitGatewayRouteTablePropagationResult { + /** + *
Information about route propagation.
+ */ + Propagation?: TransitGatewayPropagation; +} + +export namespace EnableTransitGatewayRouteTablePropagationResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetTransitGatewayMulticastDomainAssociationsRequest): any => ({ + export const filterSensitiveLog = (obj: EnableTransitGatewayRouteTablePropagationResult): any => ({ ...obj, }); } /** - *Describes the resources associated with the transit gateway multicast domain.
+ *Contains the parameters for EnableVgwRoutePropagation.
*/ -export interface TransitGatewayMulticastDomainAssociation { +export interface EnableVgwRoutePropagationRequest { /** - *The ID of the transit gateway attachment.
+ *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. + *
*/ - TransitGatewayAttachmentId?: string; + GatewayId: string | undefined; /** - *The ID of the resource.
+ *The ID of the route table. The routing table must be associated with the same VPC that + * the virtual private gateway is attached to.
*/ - ResourceId?: string; + RouteTableId: string | undefined; /** - *The type of resource, for example a VPC attachment.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The ID of the Amazon Web Services account that owns the transit gateway multicast domain association resource.
+ * @internal */ - ResourceOwnerId?: string; + export const filterSensitiveLog = (obj: EnableVgwRoutePropagationRequest): any => ({ + ...obj, + }); +} + +export interface EnableVolumeIORequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The subnet associated with the transit gateway multicast domain.
+ *The ID of the volume.
*/ - Subnet?: SubnetAssociation; + VolumeId: string | undefined; } -export namespace TransitGatewayMulticastDomainAssociation { +export namespace EnableVolumeIORequest { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayMulticastDomainAssociation): any => ({ + export const filterSensitiveLog = (obj: EnableVolumeIORequest): any => ({ ...obj, }); } -export interface GetTransitGatewayMulticastDomainAssociationsResult { +export interface EnableVpcClassicLinkRequest { /** - *Information about the multicast domain associations.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the VPC.
*/ - NextToken?: string; + VpcId: string | undefined; } -export namespace GetTransitGatewayMulticastDomainAssociationsResult { +export namespace EnableVpcClassicLinkRequest { /** * @internal */ - export const filterSensitiveLog = (obj: GetTransitGatewayMulticastDomainAssociationsResult): any => ({ + export const filterSensitiveLog = (obj: EnableVpcClassicLinkRequest): any => ({ ...obj, }); } -export interface GetTransitGatewayPrefixListReferencesRequest { +export interface EnableVpcClassicLinkResult { /** - *The ID of the transit gateway route table.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
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
).
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The ID of the VPC.
*/ - MaxResults?: number; + VpcId?: string; +} +export namespace EnableVpcClassicLinkDnsSupportRequest { /** - *The token for the next page of results.
+ * @internal */ - NextToken?: string; + export const filterSensitiveLog = (obj: EnableVpcClassicLinkDnsSupportRequest): any => ({ + ...obj, + }); +} +export interface EnableVpcClassicLinkDnsSupportResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Returns true
if the request succeeds; otherwise, it returns an error.
Information about the prefix list references.
+ *The ID of the Client VPN endpoint.
*/ - TransitGatewayPrefixListReferences?: TransitGatewayPrefixListReference[]; + ClientVpnEndpointId: string | undefined; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Describes the state of a client certificate revocation list.
+ */ +export interface ClientCertificateRevocationListStatus { /** - *The ID of the transit gateway route table.
+ *The state of the client certificate revocation list.
*/ - TransitGatewayRouteTableId: string | undefined; + Code?: ClientCertificateRevocationListStatusCode | string; /** - *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.
A message about the status of the client certificate revocation list, if applicable.
*/ - Filters?: Filter[]; + Message?: string; +} +export namespace ClientCertificateRevocationListStatus { /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ *Information about the client certificate revocation list.
*/ - NextToken?: string; + CertificateRevocationList?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The current state of the client certificate revocation list.
*/ - DryRun?: boolean; + Status?: ClientCertificateRevocationListStatus; } -export namespace GetTransitGatewayRouteTableAssociationsRequest { +export namespace ExportClientVpnClientCertificateRevocationListResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetTransitGatewayRouteTableAssociationsRequest): any => ({ + export const filterSensitiveLog = (obj: ExportClientVpnClientCertificateRevocationListResult): any => ({ ...obj, }); } -/** - *Describes an association between a route table and a resource attachment.
- */ -export interface TransitGatewayRouteTableAssociation { +export interface ExportClientVpnClientConfigurationRequest { /** - *The ID of the attachment.
+ *The ID of the Client VPN endpoint.
*/ - TransitGatewayAttachmentId?: string; + ClientVpnEndpointId: string | undefined; /** - *The ID of the resource.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The resource type. Note that the tgw-peering
resource type has been deprecated.
The state of the association.
+ *The contents of the Client VPN endpoint configuration file.
*/ - State?: TransitGatewayAssociationState | string; + ClientConfiguration?: string; } -export namespace TransitGatewayRouteTableAssociation { +export namespace ExportClientVpnClientConfigurationResult { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayRouteTableAssociation): any => ({ + export const filterSensitiveLog = (obj: ExportClientVpnClientConfigurationResult): any => ({ ...obj, }); } -export interface GetTransitGatewayRouteTableAssociationsResult { +/** + *Describes the destination for an export image task.
+ */ +export interface ExportTaskS3LocationRequest { /** - *Information about the associations.
+ *The destination Amazon S3 bucket.
*/ - Associations?: TransitGatewayRouteTableAssociation[]; + S3Bucket: string | undefined; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The prefix (logical hierarchy) in the bucket.
*/ - NextToken?: string; + S3Prefix?: string; } -export namespace GetTransitGatewayRouteTableAssociationsResult { +export namespace ExportTaskS3LocationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: GetTransitGatewayRouteTableAssociationsResult): any => ({ + export const filterSensitiveLog = (obj: ExportTaskS3LocationRequest): any => ({ ...obj, }); } -export interface GetTransitGatewayRouteTablePropagationsRequest { - /** - *The ID of the transit gateway route table.
- */ - TransitGatewayRouteTableId: string | undefined; - +export interface ExportImageRequest { /** - *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.
Token to enable idempotency for export image requests.
*/ - Filters?: Filter[]; + ClientToken?: string; /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
A description of the image being exported. The maximum length is 255 characters.
*/ - MaxResults?: number; + Description?: string; /** - *The token for the next page of results.
+ *The disk image format.
*/ - NextToken?: string; + DiskImageFormat: DiskImageFormat | string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -8141,968 +9467,900 @@ export interface GetTransitGatewayRouteTablePropagationsRequest {
* Otherwise, it is UnauthorizedOperation
.
The ID of the image.
+ */ + ImageId: string | undefined; + + /** + *Information about the destination Amazon S3 bucket. The bucket must exist and grant WRITE + * and READ_ACP permissions to the Amazon Web Services account vm-import-export@amazon.com.
+ */ + S3ExportLocation: ExportTaskS3LocationRequest | undefined; + + /** + *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'.
+ */ + RoleName?: string; + + /** + *The tags to apply to the export image task during creation.
+ */ + TagSpecifications?: TagSpecification[]; } -export namespace GetTransitGatewayRouteTablePropagationsRequest { +export namespace ExportImageRequest { /** * @internal */ - export const filterSensitiveLog = (obj: GetTransitGatewayRouteTablePropagationsRequest): any => ({ + export const filterSensitiveLog = (obj: ExportImageRequest): any => ({ ...obj, }); } -/** - *Describes a route table propagation.
- */ -export interface TransitGatewayRouteTablePropagation { +export interface ExportImageResult { /** - *The ID of the attachment.
+ *A description of the image being exported.
+ */ + Description?: string; + + /** + *The disk image format for the exported image.
+ */ + DiskImageFormat?: DiskImageFormat | string; + + /** + *The ID of the export image task.
+ */ + ExportImageTaskId?: string; + + /** + *The ID of the image.
*/ - TransitGatewayAttachmentId?: string; + ImageId?: string; /** - *The ID of the resource.
+ *The name of the role that grants VM Import/Export permission to export images to your Amazon + * S3 bucket.
*/ - ResourceId?: string; + RoleName?: string; /** - *The type of resource. Note that the tgw-peering
resource type has been deprecated.
The percent complete of the export image task.
*/ - ResourceType?: TransitGatewayAttachmentResourceType | string; + Progress?: string; /** - *The state of the resource.
+ *Information about the destination Amazon S3 bucket.
*/ - State?: TransitGatewayPropagationState | string; -} + S3ExportLocation?: ExportTaskS3Location; -export namespace TransitGatewayRouteTablePropagation { /** - * @internal + *The status of the export image task. The possible values are active
, completed
,
+ * deleting
, and deleted
.
Information about the route table propagations.
+ *The status message for the export image task.
*/ - TransitGatewayRouteTablePropagations?: TransitGatewayRouteTablePropagation[]; + StatusMessage?: string; /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Any tags assigned to the export image task.
*/ - NextToken?: string; + Tags?: Tag[]; } -export namespace GetTransitGatewayRouteTablePropagationsResult { +export namespace ExportImageResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetTransitGatewayRouteTablePropagationsResult): any => ({ + export const filterSensitiveLog = (obj: ExportImageResult): any => ({ ...obj, }); } -export interface GetVpnConnectionDeviceSampleConfigurationRequest { +export interface ExportTransitGatewayRoutesRequest { /** - *The VpnConnectionId
specifies the Site-to-Site VPN connection used for the sample
- * configuration.
The ID of the route table.
*/ - VpnConnectionId: string | undefined; + TransitGatewayRouteTableId: string | undefined; /** - *Device identifier provided by the GetVpnConnectionDeviceTypes
API.
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
).
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
.
The name of the S3 bucket.
*/ - InternetKeyExchangeVersion?: string; + S3Bucket: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Sample configuration file for the specified customer gateway device.
+ *The URL of the exported file in Amazon S3. For example, + * s3://bucket_name/VPCTransitGateway/TransitGatewayRouteTables/file_name.
*/ - VpnConnectionDeviceSampleConfiguration?: string; + S3Location?: string; } -export namespace GetVpnConnectionDeviceSampleConfigurationResult { +export namespace ExportTransitGatewayRoutesResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetVpnConnectionDeviceSampleConfigurationResult): any => ({ + export const filterSensitiveLog = (obj: ExportTransitGatewayRoutesResult): any => ({ ...obj, - ...(obj.VpnConnectionDeviceSampleConfiguration && { VpnConnectionDeviceSampleConfiguration: SENSITIVE_STRING }), }); } -export interface GetVpnConnectionDeviceTypesRequest { - /** - *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.
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.
The ARN of the ACM certificate for which to view the associated IAM roles, encryption keys, and Amazon + * S3 object information.
*/ - NextToken?: string; + CertificateArn?: string; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
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.
+ *Information about the associated IAM roles.
*/ -export interface VpnConnectionDeviceType { +export interface AssociatedRole { /** - *Customer gateway device identifier.
+ *The ARN of the associated IAM role.
*/ - VpnConnectionDeviceTypeId?: string; + AssociatedRoleArn?: string; /** - *Customer gateway device vendor.
+ *The name of the Amazon S3 bucket in which the Amazon S3 object is stored.
*/ - Vendor?: string; + CertificateS3BucketName?: string; /** - *Customer gateway device platform.
+ *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
.
+ *
Customer gateway device software version.
+ *The ID of the KMS customer master key (CMK) used to encrypt the private key.
*/ - Software?: string; + EncryptionKmsKeyId?: string; } -export namespace VpnConnectionDeviceType { +export namespace AssociatedRole { /** * @internal */ - export const filterSensitiveLog = (obj: VpnConnectionDeviceType): any => ({ + export const filterSensitiveLog = (obj: AssociatedRole): any => ({ ...obj, }); } -export interface GetVpnConnectionDeviceTypesResult { - /** - *List of customer gateway devices that have a sample configuration file available for - * use.
- */ - VpnConnectionDeviceTypes?: VpnConnectionDeviceType[]; - +export interface GetAssociatedEnclaveCertificateIamRolesResult { /** - *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.
Information about the associated IAM roles.
*/ - NextToken?: string; + AssociatedRoles?: AssociatedRole[]; } -export namespace GetVpnConnectionDeviceTypesResult { +export namespace GetAssociatedEnclaveCertificateIamRolesResult { /** * @internal */ - export const filterSensitiveLog = (obj: GetVpnConnectionDeviceTypesResult): any => ({ + export const filterSensitiveLog = (obj: GetAssociatedEnclaveCertificateIamRolesResult): any => ({ ...obj, }); } -export interface ImportClientVpnClientCertificateRevocationListRequest { - /** - *The ID of the Client VPN endpoint to which the client certificate revocation list applies.
- */ - ClientVpnEndpointId: string | undefined; - +export interface GetAssociatedIpv6PoolCidrsRequest { /** - *The client certificate revocation list file. For more information, see Generate a Client Certificate Revocation List in the - * Client VPN Administrator Guide.
+ *The ID of the IPv6 address pool.
*/ - CertificateRevocationList: string | undefined; + PoolId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The token for the next page of results.
*/ - DryRun?: boolean; -} + NextToken?: string; -export namespace ImportClientVpnClientCertificateRevocationListRequest { /** - * @internal + *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Returns true
if the request succeeds; otherwise, it returns an error.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes the client-specific data.
+ *Describes an IPv6 CIDR block association.
*/ -export interface ClientData { - /** - *A user-defined comment about the disk upload.
- */ - Comment?: string; - - /** - *The time that the disk upload ends.
- */ - UploadEnd?: Date; - +export interface Ipv6CidrAssociation { /** - *The size of the uploaded disk image, in GiB.
+ *The IPv6 CIDR block.
*/ - UploadSize?: number; + Ipv6Cidr?: string; /** - *The time that the disk upload starts.
+ *The resource that's associated with the IPv6 CIDR block.
*/ - UploadStart?: Date; + AssociatedResource?: string; } -export namespace ClientData { +export namespace Ipv6CidrAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: ClientData): any => ({ + export const filterSensitiveLog = (obj: Ipv6CidrAssociation): any => ({ ...obj, }); } -/** - *Describes the Amazon S3 bucket for the disk image.
- */ -export interface UserBucket { +export interface GetAssociatedIpv6PoolCidrsResult { /** - *The name of the Amazon S3 bucket where the disk image is located.
+ *Information about the IPv6 CIDR block associations.
*/ - S3Bucket?: string; + Ipv6CidrAssociations?: Ipv6CidrAssociation[]; /** - *The file name of the disk image.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Describes the disk container object for an import image task.
- */ -export interface ImageDiskContainer { - /** - *The description of the disk image.
- */ - Description?: string; - - /** - *The block device mapping for the disk.
- */ - DeviceName?: string; - +export interface GetCapacityReservationUsageRequest { /** - *The format of the disk image being imported.
- *Valid values: OVA
| VHD
| VHDX
| VMDK
| RAW
- *
The ID of the Capacity Reservation.
*/ - Format?: string; + CapacityReservationId: string | undefined; /** - *The ID of the EBS snapshot to be used for importing the snapshot.
+ *The token to use to retrieve the next page of results.
*/ - SnapshotId?: string; + NextToken?: string; /** - *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://..)
+ *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.
*/ - Url?: string; + MaxResults?: number; /** - *The S3 bucket for the disk image.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The request information of license configurations.
+ *Information about the Capacity Reservation usage.
*/ -export interface ImportImageLicenseConfigurationRequest { +export interface InstanceUsage { + /** + *The ID of the Amazon Web Services account that is making use of the Capacity Reservation.
+ */ + AccountId?: string; + /** - *The ARN of a license configuration.
+ *The number of instances the Amazon Web Services account currently has in the Capacity Reservation.
*/ - LicenseConfigurationArn?: string; + UsedInstanceCount?: number; } -export namespace ImportImageLicenseConfigurationRequest { +export namespace InstanceUsage { /** * @internal */ - export const filterSensitiveLog = (obj: ImportImageLicenseConfigurationRequest): any => ({ + export const filterSensitiveLog = (obj: InstanceUsage): any => ({ ...obj, }); } -export interface ImportImageRequest { +export interface GetCapacityReservationUsageResult { /** - *The architecture of the virtual machine.
- *Valid values: i386
| x86_64
| arm64
- *
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The client-specific data.
+ *The ID of the Capacity Reservation.
*/ - ClientData?: ClientData; + CapacityReservationId?: string; /** - *The token to enable idempotency for VM import requests.
+ *The type of instance for which the Capacity Reservation reserves capacity.
*/ - ClientToken?: string; + InstanceType?: string; /** - *A description string for the import image task.
+ *The number of instances for which the Capacity Reservation reserves capacity.
*/ - Description?: string; + TotalInstanceCount?: number; + + /** + *The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.
+ */ + AvailableInstanceCount?: number; /** - *Information about the disk containers.
+ *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.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the Capacity Reservation usage.
*/ - DryRun?: boolean; + InstanceUsages?: InstanceUsage[]; +} +export namespace GetCapacityReservationUsageResult { /** - *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.
The target hypervisor platform.
- *Valid values: xen
- *
The ID of the address pool.
*/ - Hypervisor?: string; + PoolId: string | undefined; /** - *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:
+ *The filters. The following are the possible values:
*Key ID
+ *
+ * coip-address-usage.allocation-id
+ *
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.
+ * coip-address-usage.aws-account-id
+ *
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.
+ * coip-address-usage.aws-service
+ *
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.
+ * coip-address-usage.co-ip
+ *
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.
- */ - KmsKeyId?: string; - - /** - *The license type to be used for the Amazon Machine Image (AMI) after importing.
- *By default, we detect the source-system operating system (OS) and apply the appropriate license. Specify
- * AWS
to replace the source-system license with an Amazon Web Services license, if appropriate. Specify BYOL
- * to retain the source-system license, if appropriate.
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.
The operating system of the virtual machine.
- *Valid values: Windows
| Linux
- *
The name of the role to use when not using the default role, 'vmimport'.
- */ - RoleName?: string; - - /** - *The ARNs of the license configurations.
*/ - LicenseSpecifications?: ImportImageLicenseConfigurationRequest[]; + Filters?: Filter[]; /** - *The tags to apply to the import image task during creation.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The usage operation value. For more information, see Licensing options in the VM Import/Export User Guide.
+ *The token for the next page of results.
*/ - UsageOperation?: string; + NextToken?: string; /** - *The boot mode of the virtual machine.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes address usage for a customer-owned address pool.
+ */ +export interface CoipAddressUsage { /** - *The architecture of the virtual machine.
+ *The allocation ID of the address.
*/ - Architecture?: string; + AllocationId?: string; /** - *A description of the import task.
+ *The Amazon Web Services account ID.
*/ - Description?: string; + AwsAccountId?: string; /** - *Indicates whether the AMI is encrypted.
+ *The Amazon Web Services service.
*/ - Encrypted?: boolean; + AwsService?: string; /** - *The target hypervisor of the import task.
+ *The customer-owned IP address.
*/ - Hypervisor?: string; + CoIp?: string; +} +export namespace CoipAddressUsage { /** - *The ID of the Amazon Machine Image (AMI) created by the import task.
+ * @internal */ - ImageId?: string; + export const filterSensitiveLog = (obj: CoipAddressUsage): any => ({ + ...obj, + }); +} +export interface GetCoipPoolUsageResult { /** - *The task ID of the import image task.
+ *The ID of the customer-owned address pool.
*/ - ImportTaskId?: string; + CoipPoolId?: string; /** - *The identifier for the symmetric KMS key that was used to create the encrypted AMI.
+ *Information about the address usage.
*/ - KmsKeyId?: string; + CoipAddressUsages?: CoipAddressUsage[]; /** - *The license type of the virtual machine.
+ *The ID of the local gateway route table.
*/ - LicenseType?: string; + LocalGatewayRouteTableId?: string; +} +export namespace GetCoipPoolUsageResult { /** - *The operating system of the virtual machine.
+ * @internal */ - Platform?: string; + export const filterSensitiveLog = (obj: GetCoipPoolUsageResult): any => ({ + ...obj, + }); +} +export interface GetConsoleOutputRequest { /** - *The progress of the task.
+ *The ID of the instance.
*/ - Progress?: string; + InstanceId: string | undefined; /** - *Information about the snapshots.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
A brief status of the task.
+ *When enabled, retrieves the latest console output for the instance.
+ *Default: disabled (false
)
A detailed status message of the import task.
+ * @internal */ - StatusMessage?: string; + export const filterSensitiveLog = (obj: GetConsoleOutputRequest): any => ({ + ...obj, + }); +} +export interface GetConsoleOutputResult { /** - *The ARNs of the license configurations.
+ *The ID of the instance.
*/ - LicenseSpecifications?: ImportImageLicenseConfigurationResponse[]; + InstanceId?: string; /** - *Any tags assigned to the import image task.
+ *The console output, base64-encoded. If you are using a command line tool, the tool + * decodes the output for you.
*/ - Tags?: Tag[]; + Output?: string; /** - *The usage operation value.
+ *The time at which the output was last updated.
*/ - UsageOperation?: string; + Timestamp?: Date; } -export namespace ImportImageResult { +export namespace GetConsoleOutputResult { /** * @internal */ - export const filterSensitiveLog = (obj: ImportImageResult): any => ({ + export const filterSensitiveLog = (obj: GetConsoleOutputResult): any => ({ ...obj, }); } -/** - *Describes a disk image.
- */ -export interface DiskImageDetail { +export interface GetConsoleScreenshotRequest { /** - *The size of the disk image, in GiB.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The disk image format.
+ *The ID of the instance.
*/ - Format: DiskImageFormat | string | undefined; + InstanceId: string | undefined; /** - *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.
+ *When set to true
, acts as keystroke input and wakes up an instance that's
+ * in standby or "sleep" mode.
Describes an EBS volume.
- */ -export interface VolumeDetail { +export interface GetConsoleScreenshotResult { + /** + *The data that comprises the image.
+ */ + ImageData?: string; + /** - *The size of the volume, in GiB.
+ *The ID of the instance.
*/ - Size: number | undefined; + InstanceId?: string; } -export namespace VolumeDetail { +export namespace GetConsoleScreenshotResult { /** * @internal */ - export const filterSensitiveLog = (obj: VolumeDetail): any => ({ + export const filterSensitiveLog = (obj: GetConsoleScreenshotResult): any => ({ ...obj, }); } -/** - *Describes a disk image.
- */ -export interface DiskImage { - /** - *A description of the disk image.
- */ - Description?: string; +export type UnlimitedSupportedInstanceFamily = "t2" | "t3" | "t3a" | "t4g"; +export interface GetDefaultCreditSpecificationRequest { /** - *Information about the disk image.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the volume.
+ *The instance family.
*/ - Volume?: VolumeDetail; + InstanceFamily: UnlimitedSupportedInstanceFamily | string | undefined; } -export namespace DiskImage { +export namespace GetDefaultCreditSpecificationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: DiskImage): any => ({ + export const filterSensitiveLog = (obj: GetDefaultCreditSpecificationRequest): any => ({ ...obj, }); } /** - *Describes the user data for an instance.
+ *Describes the default credit option for CPU usage of a burstable performance instance family.
*/ -export interface UserData { +export interface InstanceFamilyCreditSpecification { /** - *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.
+ *The instance family.
+ */ + InstanceFamily?: UnlimitedSupportedInstanceFamily | string; + + /** + *The default credit option for CPU usage of the instance family. Valid values are standard
and unlimited
.
Describes the launch specification for VM import.
- */ -export interface ImportInstanceLaunchSpecification { - /** - *Reserved.
- */ - AdditionalInfo?: string; - - /** - *The architecture of the instance.
- */ - Architecture?: ArchitectureValues | string; - - /** - *The security group IDs.
- */ - GroupIds?: string[]; - - /** - *The security group names.
- */ - GroupNames?: string[]; - - /** - *Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the - * operating system command for system shutdown).
- */ - InstanceInitiatedShutdownBehavior?: ShutdownBehavior | string; - - /** - *The instance type. For more information about the instance types that you can import, see Instance Types in the - * VM Import/Export User Guide.
- */ - InstanceType?: _InstanceType | string; - - /** - *Indicates whether monitoring is enabled.
- */ - Monitoring?: boolean; - - /** - *The placement information for the instance.
- */ - Placement?: Placement; - - /** - *[EC2-VPC] An available IP address from the IP address range of the subnet.
- */ - PrivateIpAddress?: string; - - /** - *[EC2-VPC] The ID of the subnet in which to launch the instance.
- */ - SubnetId?: string; - +export interface GetDefaultCreditSpecificationResult { /** - *The Base64-encoded user data to make available to the instance.
+ *The default credit option for CPU usage of the instance family.
*/ - UserData?: UserData; + InstanceFamilyCreditSpecification?: InstanceFamilyCreditSpecification; } -export namespace ImportInstanceLaunchSpecification { +export namespace GetDefaultCreditSpecificationResult { /** * @internal */ - export const filterSensitiveLog = (obj: ImportInstanceLaunchSpecification): any => ({ + export const filterSensitiveLog = (obj: GetDefaultCreditSpecificationResult): any => ({ ...obj, - ...(obj.UserData && { UserData: SENSITIVE_STRING }), }); } -export interface ImportInstanceRequest { - /** - *A description for the instance being imported.
- */ - Description?: string; - - /** - *The disk image.
- */ - DiskImages?: DiskImage[]; - +export interface GetEbsDefaultKmsKeyIdRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
The launch specification.
- */ - LaunchSpecification?: ImportInstanceLaunchSpecification; - - /** - *The instance operating system.
- */ - Platform: PlatformValues | string | undefined; } -export namespace ImportInstanceRequest { +export namespace GetEbsDefaultKmsKeyIdRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ImportInstanceRequest): any => ({ + export const filterSensitiveLog = (obj: GetEbsDefaultKmsKeyIdRequest): any => ({ ...obj, - ...(obj.LaunchSpecification && { - LaunchSpecification: ImportInstanceLaunchSpecification.filterSensitiveLog(obj.LaunchSpecification), - }), }); } -export interface ImportInstanceResult { +export interface GetEbsDefaultKmsKeyIdResult { /** - *Information about the conversion task.
+ *The Amazon Resource Name (ARN) of the default KMS key for encryption by default.
*/ - ConversionTask?: ConversionTask; + KmsKeyId?: string; } -export namespace ImportInstanceResult { +export namespace GetEbsDefaultKmsKeyIdResult { /** * @internal */ - export const filterSensitiveLog = (obj: ImportInstanceResult): any => ({ + export const filterSensitiveLog = (obj: GetEbsDefaultKmsKeyIdResult): any => ({ ...obj, }); } -export interface ImportKeyPairRequest { +export interface GetEbsEncryptionByDefaultRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
A unique name for the key pair.
- */ - KeyName: string | undefined; - - /** - *The public key. For API calls, the text must be base64-encoded. For command line tools, base64 encoding is performed for you.
- */ - PublicKeyMaterial: Uint8Array | undefined; - - /** - *The tags to apply to the imported key pair.
- */ - TagSpecifications?: TagSpecification[]; } -export namespace ImportKeyPairRequest { +export namespace GetEbsEncryptionByDefaultRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ImportKeyPairRequest): any => ({ + export const filterSensitiveLog = (obj: GetEbsEncryptionByDefaultRequest): any => ({ ...obj, }); } -export interface ImportKeyPairResult { - /** - *The MD5 public key fingerprint as specified in section 4 of RFC 4716.
- */ - KeyFingerprint?: string; - - /** - *The key pair name that you provided.
- */ - KeyName?: string; - - /** - *The ID of the resulting key pair.
- */ - KeyPairId?: string; - +export interface GetEbsEncryptionByDefaultResult { /** - *The tags applied to the imported key pair.
+ *Indicates whether encryption by default is enabled.
*/ - Tags?: Tag[]; + EbsEncryptionByDefault?: boolean; } -export namespace ImportKeyPairResult { +export namespace GetEbsEncryptionByDefaultResult { /** * @internal */ - export const filterSensitiveLog = (obj: ImportKeyPairResult): any => ({ + export const filterSensitiveLog = (obj: GetEbsEncryptionByDefaultResult): any => ({ ...obj, }); } +export enum PartitionLoadFrequency { + DAILY = "daily", + MONTHLY = "monthly", + NONE = "none", + WEEKLY = "weekly", +} + /** - *The disk container object for the import snapshot request.
+ *Describes integration options for Amazon Athena.
*/ -export interface SnapshotDiskContainer { +export interface AthenaIntegration { /** - *The description of the disk image being imported.
+ *The location in Amazon S3 to store the generated CloudFormation template.
*/ - Description?: string; + IntegrationResultS3DestinationArn: string | undefined; /** - *The format of the disk image being imported.
- *Valid values: VHD
| VMDK
| RAW
- *
The schedule for adding new partitions to the table.
*/ - Format?: string; + PartitionLoadFrequency: PartitionLoadFrequency | string | undefined; /** - *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://..).
+ *The start date for the partition.
*/ - Url?: string; + PartitionStartDate?: Date; /** - *The Amazon S3 bucket for the disk image.
+ *The end date for the partition.
*/ - UserBucket?: UserBucket; + PartitionEndDate?: Date; } -export namespace SnapshotDiskContainer { +export namespace AthenaIntegration { /** * @internal */ - export const filterSensitiveLog = (obj: SnapshotDiskContainer): any => ({ + export const filterSensitiveLog = (obj: AthenaIntegration): any => ({ ...obj, }); } -export interface ImportSnapshotRequest { - /** - *The client-specific data.
- */ - ClientData?: ClientData; - - /** - *Token to enable idempotency for VM import requests.
- */ - ClientToken?: string; - +/** + *Describes service integrations with VPC Flow logs.
+ */ +export interface IntegrateServices { /** - *The description string for the import snapshot task.
+ *Information about the integration with Amazon Athena.
*/ - Description?: string; + AthenaIntegrations?: AthenaIntegration[]; +} +export namespace IntegrateServices { /** - *Information about the disk container.
+ * @internal */ - DiskContainer?: SnapshotDiskContainer; + export const filterSensitiveLog = (obj: IntegrateServices): any => ({ + ...obj, + }); +} +export interface GetFlowLogsIntegrationTemplateRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -9111,963 +10369,815 @@ export interface ImportSnapshotRequest {
DryRun?: boolean;
/**
- *
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.
The ID of the flow log.
*/ - Encrypted?: boolean; + FlowLogId: string | undefined; /** - *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. 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.
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.
+ *To store the CloudFormation template in Amazon S3, specify the location in Amazon S3.
*/ - KmsKeyId?: string; + ConfigDeliveryS3DestinationArn: string | undefined; /** - *The name of the role to use when not using the default role, 'vmimport'.
+ *Information about the service integration.
*/ - RoleName?: string; + IntegrateServices: IntegrateServices | undefined; +} +export namespace GetFlowLogsIntegrationTemplateRequest { /** - *The tags to apply to the import snapshot task during creation.
+ * @internal */ - TagSpecifications?: TagSpecification[]; + export const filterSensitiveLog = (obj: GetFlowLogsIntegrationTemplateRequest): any => ({ + ...obj, + }); +} + +export interface GetFlowLogsIntegrationTemplateResult { + /** + *The generated CloudFormation template.
+ */ + Result?: string; } -export namespace ImportSnapshotRequest { +export namespace GetFlowLogsIntegrationTemplateResult { /** * @internal */ - export const filterSensitiveLog = (obj: ImportSnapshotRequest): any => ({ + export const filterSensitiveLog = (obj: GetFlowLogsIntegrationTemplateResult): any => ({ ...obj, }); } -export interface ImportSnapshotResult { +export interface GetGroupsForCapacityReservationRequest { /** - *A description of the import snapshot task.
+ *The ID of the Capacity Reservation.
*/ - Description?: string; + CapacityReservationId: string | undefined; /** - *The ID of the import snapshot task.
+ *The token to use to retrieve the next page of results.
*/ - ImportTaskId?: string; + NextToken?: string; /** - *Information about the import snapshot task.
+ *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.
Any tags assigned to the import snapshot task.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Describes a resource group to which a Capacity Reservation has been added.
+ */ +export interface CapacityReservationGroup { /** - *The Availability Zone for the resulting EBS volume.
+ *The ARN of the resource group.
*/ - AvailabilityZone: string | undefined; + GroupArn?: string; /** - *A description of the volume.
+ *The ID of the Amazon Web Services account that owns the resource group.
*/ - Description?: string; + OwnerId?: string; +} +export namespace CapacityReservationGroup { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The disk image.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The volume size.
+ *Information about the resource groups to which the Capacity Reservation has been added.
*/ - Volume: VolumeDetail | undefined; + CapacityReservationGroups?: CapacityReservationGroup[]; } -export namespace ImportVolumeRequest { +export namespace GetGroupsForCapacityReservationResult { /** * @internal */ - export const filterSensitiveLog = (obj: ImportVolumeRequest): any => ({ + export const filterSensitiveLog = (obj: GetGroupsForCapacityReservationResult): any => ({ ...obj, }); } -export interface ImportVolumeResult { +export interface GetHostReservationPurchasePreviewRequest { + /** + *The IDs of the Dedicated Hosts with which the reservation is associated.
+ */ + HostIdSet: string[] | undefined; + /** - *Information about the conversion task.
+ *The offering ID of the reservation.
*/ - ConversionTask?: ConversionTask; + OfferingId: string | undefined; } -export namespace ImportVolumeResult { +export namespace GetHostReservationPurchasePreviewRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ImportVolumeResult): any => ({ + export const filterSensitiveLog = (obj: GetHostReservationPurchasePreviewRequest): any => ({ ...obj, }); } -export interface ListSnapshotsInRecycleBinRequest { +/** + *Describes the result of the purchase.
+ */ +export interface Purchase { + /** + *The currency in which the UpfrontPrice
and HourlyPrice
+ * amounts are specified. At this time, the only supported currency is
+ * USD
.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The duration of the reservation's term in seconds.
*/ - MaxResults?: number; + Duration?: number; /** - *The token for the next page of results.
+ *The IDs of the Dedicated Hosts associated with the reservation.
*/ - NextToken?: string; + HostIdSet?: string[]; /** - *The IDs of the snapshots to list. Omit this parameter to list all of the - * snapshots that are in the Recycle Bin.
+ *The ID of the reservation.
*/ - SnapshotIds?: string[]; + HostReservationId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The hourly price of the reservation per hour.
*/ - DryRun?: boolean; + HourlyPrice?: string; + + /** + *The instance family on the Dedicated Host that the reservation can be associated + * with.
+ */ + InstanceFamily?: string; + + /** + *The payment option for the reservation.
+ */ + PaymentOption?: PaymentOption | string; + + /** + *The upfront price of the reservation.
+ */ + UpfrontPrice?: string; } -export namespace ListSnapshotsInRecycleBinRequest { +export namespace Purchase { /** * @internal */ - export const filterSensitiveLog = (obj: ListSnapshotsInRecycleBinRequest): any => ({ + export const filterSensitiveLog = (obj: Purchase): any => ({ ...obj, }); } -/** - *Information about a snapshot that is currently in the Recycle Bin.
- */ -export interface SnapshotRecycleBinInfo { - /** - *The ID of the snapshot.
- */ - SnapshotId?: string; - +export interface GetHostReservationPurchasePreviewResult { /** - *The date and time when the snaphsot entered the Recycle Bin.
+ *The currency in which the totalUpfrontPrice
and
+ * totalHourlyPrice
amounts are specified. At this time, the only
+ * supported currency is USD
.
The date and time when the snapshot is to be permanently deleted from the Recycle Bin.
+ *The purchase information of the Dedicated Host reservation and the Dedicated Hosts + * associated with it.
*/ - RecycleBinExitTime?: Date; + Purchase?: Purchase[]; /** - *The description for the snapshot.
+ *The potential total hourly price of the reservation per hour.
*/ - Description?: string; + TotalHourlyPrice?: string; /** - *The ID of the volume from which the snapshot was created.
+ *The potential total upfront price. This is billed immediately.
*/ - VolumeId?: string; + TotalUpfrontPrice?: string; } -export namespace SnapshotRecycleBinInfo { +export namespace GetHostReservationPurchasePreviewResult { /** * @internal */ - export const filterSensitiveLog = (obj: SnapshotRecycleBinInfo): any => ({ + export const filterSensitiveLog = (obj: GetHostReservationPurchasePreviewResult): any => ({ ...obj, }); } -export interface ListSnapshotsInRecycleBinResult { +export interface GetInstanceTypesFromInstanceRequirementsRequest { /** - *Information about the snapshots.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The processor architecture type.
*/ - NextToken?: string; -} + ArchitectureTypes: (ArchitectureType | string)[] | undefined; -export namespace ListSnapshotsInRecycleBinResult { /** - * @internal + *The virtualization type.
*/ - export const filterSensitiveLog = (obj: ListSnapshotsInRecycleBinResult): any => ({ - ...obj, - }); -} + VirtualizationTypes: (VirtualizationType | string)[] | undefined; -export interface ModifyAddressAttributeRequest { /** - *[EC2-VPC] The allocation ID.
+ *The attributes required for the instance types.
*/ - AllocationId: string | undefined; + InstanceRequirements: InstanceRequirementsRequest | undefined; /** - *The domain name to modify for the IP address.
+ *The maximum number of results to return in a single call. Specify a value between 1 and
+ * 1000. The default value is 1000. To retrieve the remaining results, make another call with
+ * the returned NextToken
value.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The token for the next set of results.
*/ - DryRun?: boolean; + NextToken?: string; } -export namespace ModifyAddressAttributeRequest { +export namespace GetInstanceTypesFromInstanceRequirementsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyAddressAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: GetInstanceTypesFromInstanceRequirementsRequest): any => ({ ...obj, }); } -export interface ModifyAddressAttributeResult { +/** + *The list of instance types with the specified instance attributes.
+ */ +export interface InstanceTypeInfoFromInstanceRequirements { /** - *Information about the Elastic IP address.
+ *The matching instance type.
*/ - Address?: AddressAttribute; + InstanceType?: string; } -export namespace ModifyAddressAttributeResult { +export namespace InstanceTypeInfoFromInstanceRequirements { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyAddressAttributeResult): any => ({ + export const filterSensitiveLog = (obj: InstanceTypeInfoFromInstanceRequirements): any => ({ ...obj, }); } -export type ModifyAvailabilityZoneOptInStatus = "not-opted-in" | "opted-in"; - -export interface ModifyAvailabilityZoneGroupRequest { - /** - *The name of the Availability Zone group, Local Zone group, or Wavelength Zone - * group.
- */ - GroupName: string | undefined; - +export interface GetInstanceTypesFromInstanceRequirementsResult { /** - *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.
The instance types with the specified instance attributes.
*/ - OptInStatus: ModifyAvailabilityZoneOptInStatus | string | undefined; + InstanceTypes?: InstanceTypeInfoFromInstanceRequirements[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The token for the next set of results.
*/ - DryRun?: boolean; + NextToken?: string; } -export namespace ModifyAvailabilityZoneGroupRequest { +export namespace GetInstanceTypesFromInstanceRequirementsResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyAvailabilityZoneGroupRequest): any => ({ + export const filterSensitiveLog = (obj: GetInstanceTypesFromInstanceRequirementsResult): any => ({ ...obj, }); } -export interface ModifyAvailabilityZoneGroupResult { - /** - *Is true
if the request succeeds, and an error otherwise.
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
.
The ID of the Capacity Reservation.
+ *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.
*/ - CapacityReservationId: string | undefined; + Cidr: string | undefined; /** - *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.
The ID of the IPAM scope that the CIDR is in.
*/ - InstanceCount?: number; + IpamScopeId: string | undefined; /** - *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
.
The ID of the VPC you want your history records filtered by.
*/ - EndDate?: Date; + VpcId?: string; /** - *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
.
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.
*/ - EndDateType?: EndDateType | string; + StartTime?: Date; /** - *Reserved. Capacity Reservations you have created are accepted by default.
+ *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.
*/ - Accept?: boolean; + EndTime?: Date; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The maximum number of historical results you would like returned per page. Defaults to 100.
*/ - DryRun?: boolean; + MaxResults?: number; /** - *Reserved for future use.
+ *The token for the next page of results.
*/ - AdditionalInfo?: string; + NextToken?: string; } -export namespace ModifyCapacityReservationRequest { +export namespace GetIpamAddressHistoryRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyCapacityReservationRequest): any => ({ + export const filterSensitiveLog = (obj: GetIpamAddressHistoryRequest): any => ({ ...obj, }); } -export interface ModifyCapacityReservationResult { - /** - *Returns true
if the request succeeds; otherwise, it returns an error.
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. + *
+ */ +export interface IpamAddressHistoryRecord { /** - * @internal + *The ID of the resource owner.
*/ - export const filterSensitiveLog = (obj: ModifyCapacityReservationResult): any => ({ - ...obj, - }); -} + ResourceOwnerId?: string; -export interface ModifyCapacityReservationFleetRequest { /** - *The ID of the Capacity Reservation Fleet to modify.
+ *The Amazon Web Services Region of the resource.
*/ - CapacityReservationFleetId: string | undefined; + ResourceRegion?: string; /** - *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.
+ *The type of the resource.
*/ - TotalTargetCapacity?: number; + ResourceType?: IpamAddressHistoryResourceType | string; /** - *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.
+ *The ID of the resource.
*/ - EndDate?: Date; + ResourceId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The CIDR of the resource.
*/ - DryRun?: boolean; + ResourceCidr?: string; /** - *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.
+ *The name of the resource.
*/ - RemoveEndDate?: boolean; -} + ResourceName?: string; -export namespace ModifyCapacityReservationFleetRequest { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: ModifyCapacityReservationFleetRequest): any => ({ - ...obj, - }); -} + ResourceComplianceStatus?: IpamComplianceStatus | string; -export interface ModifyCapacityReservationFleetResult { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
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.
*/ - Return?: boolean; -} + ResourceOverlapStatus?: IpamOverlapStatus | string; -export namespace ModifyCapacityReservationFleetResult { /** - * @internal + *The VPC ID of the resource.
*/ - export const filterSensitiveLog = (obj: ModifyCapacityReservationFleetResult): any => ({ - ...obj, - }); -} + VpcId?: string; -/** - *Information about the DNS server to be used.
- */ -export interface DnsServersOptionsModifyStructure { /** - *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.
+ *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.
*/ - CustomDnsServers?: string[]; + SampledStartTime?: Date; /** - *Indicates whether DNS servers should be used. Specify False
to delete the existing DNS
- * servers.
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.
*/ - Enabled?: boolean; + SampledEndTime?: Date; } -export namespace DnsServersOptionsModifyStructure { +export namespace IpamAddressHistoryRecord { /** * @internal */ - export const filterSensitiveLog = (obj: DnsServersOptionsModifyStructure): any => ({ + export const filterSensitiveLog = (obj: IpamAddressHistoryRecord): any => ({ ...obj, }); } -export interface ModifyClientVpnEndpointRequest { - /** - *The ID of the Client VPN endpoint to modify.
- */ - ClientVpnEndpointId: string | undefined; - - /** - *The ARN of the server certificate to be used. The server certificate must be provisioned in - * Certificate Manager (ACM).
- */ - ServerCertificateArn?: string; - - /** - *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
- *Information about the DNS servers to be used by Client VPN connections. A Client VPN endpoint can have - * up to two DNS servers.
+ *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.
*/ - DnsServers?: DnsServersOptionsModifyStructure; + HistoryRecords?: IpamAddressHistoryRecord[]; /** - *The port number to assign to the Client VPN endpoint for TCP and UDP traffic.
- *Valid Values: 443
| 1194
- *
Default Value: 443
- *
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
A brief description of the Client VPN endpoint.
+ * @internal */ - Description?: string; + export const filterSensitiveLog = (obj: GetIpamAddressHistoryResult): any => ({ + ...obj, + }); +} +export interface GetIpamPoolAllocationsRequest { /** - *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.
+ *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
.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The ID of the IPAM pool you want to see the allocations for.
*/ - DryRun?: boolean; + IpamPoolId: string | undefined; /** - *The IDs of one or more security groups to apply to the target network.
+ *The ID of the allocation.
*/ - SecurityGroupIds?: string[]; + IpamPoolAllocationId?: string; /** - *The ID of the VPC to associate with the Client VPN endpoint.
+ *One or more filters for the request. For more information about filtering, see Filtering CLI output.
*/ - VpcId?: string; + Filters?: Filter[]; /** - *Specify whether to enable the self-service portal for the Client VPN endpoint.
+ *The maximum number of results you would like returned per page.
*/ - SelfServicePortal?: SelfServicePortal | string; + MaxResults?: number; /** - *The options for managing connection authorization for new client connections.
+ *The token for the next page of results.
*/ - ClientConnectOptions?: ClientConnectOptions; + NextToken?: string; } -export namespace ModifyClientVpnEndpointRequest { +export namespace GetIpamPoolAllocationsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyClientVpnEndpointRequest): any => ({ + export const filterSensitiveLog = (obj: GetIpamPoolAllocationsRequest): any => ({ ...obj, }); } -export interface ModifyClientVpnEndpointResult { +export interface GetIpamPoolAllocationsResult { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
The IPAM pool allocations you want information on.
*/ - Return?: boolean; + IpamPoolAllocations?: IpamPoolAllocation[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request, + *
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
.
The instance family.
+ *The ID of the IPAM pool you want the CIDR for.
*/ - InstanceFamily: UnlimitedSupportedInstanceFamily | string | undefined; + IpamPoolId: string | undefined; /** - *The credit option for CPU usage of the instance family.
- *Valid Values: standard
| unlimited
- *
One or more filters for the request. For more information about filtering, see Filtering CLI output.
*/ - CpuCredits: string | undefined; -} + Filters?: Filter[]; -export namespace ModifyDefaultCreditSpecificationRequest { /** - * @internal + *The maximum number of results to return in the request.
*/ - export const filterSensitiveLog = (obj: ModifyDefaultCreditSpecificationRequest): any => ({ - ...obj, - }); -} + MaxResults?: number; -export interface ModifyDefaultCreditSpecificationResult { /** - *The default credit option for CPU usage of the instance family.
+ *The token for the next page of results.
*/ - InstanceFamilyCreditSpecification?: InstanceFamilyCreditSpecification; + NextToken?: string; } -export namespace ModifyDefaultCreditSpecificationResult { +export namespace GetIpamPoolCidrsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyDefaultCreditSpecificationResult): any => ({ + export const filterSensitiveLog = (obj: GetIpamPoolCidrsRequest): any => ({ ...obj, }); } -export interface ModifyEbsDefaultKmsKeyIdRequest { +export interface GetIpamPoolCidrsResult { /** - *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.
+ *Information about the CIDRs provisioned to an IPAM pool.
*/ - KmsKeyId: string | undefined; + IpamPoolCidrs?: IpamPoolCidr[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The Amazon Resource Name (ARN) of the default KMS key for encryption by default.
- */ - KmsKeyId?: string; -} - -export namespace ModifyEbsDefaultKmsKeyIdResult { - /** - * @internal - */ - export const filterSensitiveLog = (obj: ModifyEbsDefaultKmsKeyIdResult): any => ({ - ...obj, - }); +export enum IpamResourceType { + eip = "eip", + ipv6_pool = "ipv6-pool", + public_ipv4_pool = "public-ipv4-pool", + subnet = "subnet", + vpc = "vpc", } -export interface ModifyFleetRequest { +export interface GetIpamResourceCidrsRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request, + *
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
.
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.
- */ - ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy | string; - - /** - *The launch template and overrides.
+ *One or more filters for the request. For more information about filtering, see Filtering CLI output.
*/ - LaunchTemplateConfigs?: FleetLaunchTemplateConfigRequest[]; + Filters?: Filter[]; /** - *The ID of the EC2 Fleet.
+ *The maximum number of results to return in the request.
*/ - FleetId: string | undefined; + MaxResults?: number; /** - *The size of the EC2 Fleet.
+ *The token for the next page of results.
*/ - TargetCapacitySpecification?: TargetCapacitySpecificationRequest; + NextToken?: string; /** - *Reserved.
+ *The ID of the scope that the resource is in.
*/ - Context?: string; -} + IpamScopeId: string | undefined; -export namespace ModifyFleetRequest { /** - * @internal + *The ID of the IPAM pool that the resource is in.
*/ - export const filterSensitiveLog = (obj: ModifyFleetRequest): any => ({ - ...obj, - }); -} + IpamPoolId?: string; -export interface ModifyFleetResult { /** - *Is true
if the request succeeds, and an error otherwise.
The ID of the resource.
*/ - Return?: boolean; -} + ResourceId?: string; -export namespace ModifyFleetResult { /** - * @internal + *The resource type.
*/ - export const filterSensitiveLog = (obj: ModifyFleetResult): any => ({ - ...obj, - }); -} + ResourceType?: IpamResourceType | string; -/** - *Describes a load permission.
- */ -export interface LoadPermissionRequest { /** - *The name of the group.
+ *A tag on an IPAM resource.
*/ - Group?: PermissionGroup | string; + ResourceTag?: RequestIpamResourceTag; /** - *The Amazon Web Services account ID.
+ *The ID of the Amazon Web Services account that owns the resource.
*/ - UserId?: string; + ResourceOwner?: string; } -export namespace LoadPermissionRequest { +export namespace GetIpamResourceCidrsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LoadPermissionRequest): any => ({ + export const filterSensitiveLog = (obj: GetIpamResourceCidrsRequest): any => ({ ...obj, }); } +export enum IpamManagementState { + ignored = "ignored", + managed = "managed", + unmanaged = "unmanaged", +} + /** - *Describes modifications to the load permissions of an Amazon FPGA image (AFI).
+ *The CIDR for an IPAM resource.
*/ -export interface LoadPermissionModifications { +export interface IpamResourceCidr { /** - *The load permissions to add.
+ *The IPAM ID for an IPAM resource.
*/ - Add?: LoadPermissionRequest[]; + IpamId?: string; /** - *The load permissions to remove.
+ *The scope ID for an IPAM resource.
*/ - Remove?: LoadPermissionRequest[]; -} + IpamScopeId?: string; -export namespace LoadPermissionModifications { /** - * @internal + *The pool ID for an IPAM resource.
*/ - export const filterSensitiveLog = (obj: LoadPermissionModifications): any => ({ - ...obj, - }); -} + IpamPoolId?: string; -export type OperationType = "add" | "remove"; - -export interface ModifyFpgaImageAttributeRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Amazon Web Services Region for an IPAM resource.
*/ - DryRun?: boolean; + ResourceRegion?: string; /** - *The ID of the AFI.
+ *The Amazon Web Services account number of the owner of an IPAM resource.
*/ - FpgaImageId: string | undefined; + ResourceOwnerId?: string; /** - *The name of the attribute.
+ *The ID of an IPAM resource.
*/ - Attribute?: FpgaImageAttributeName | string; + ResourceId?: string; /** - *The operation type.
+ *The name of an IPAM resource.
*/ - OperationType?: OperationType | string; + ResourceName?: string; /** - *The Amazon Web Services account IDs. This parameter is valid only when modifying the loadPermission
attribute.
The CIDR for an IPAM resource.
*/ - UserIds?: string[]; + ResourceCidr?: string; /** - *The user groups. This parameter is valid only when modifying the loadPermission
attribute.
The type of IPAM resource.
*/ - UserGroups?: string[]; + ResourceType?: IpamResourceType | string; /** - *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.
The tags for an IPAM resource.
*/ - ProductCodes?: string[]; + ResourceTags?: IpamResourceTag[]; /** - *The load permission for the AFI.
+ *The IP address space in the IPAM pool that is allocated to this resource. To convert the decimal to a percentage, multiply the decimal by 100.
*/ - LoadPermission?: LoadPermissionModifications; + IpUsage?: number; /** - *A description for the AFI.
+ *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.
*/ - Description?: string; + ComplianceStatus?: IpamComplianceStatus | string; /** - *A name for the AFI.
+ *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.
*/ - Name?: string; -} + ManagementState?: IpamManagementState | string; -export namespace ModifyFpgaImageAttributeRequest { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: ModifyFpgaImageAttributeRequest): any => ({ - ...obj, - }); -} + OverlapStatus?: IpamOverlapStatus | string; -export interface ModifyFpgaImageAttributeResult { /** - *Information about the attribute.
+ *The ID of a VPC.
*/ - FpgaImageAttribute?: FpgaImageAttribute; + VpcId?: string; } -export namespace ModifyFpgaImageAttributeResult { +export namespace IpamResourceCidr { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyFpgaImageAttributeResult): any => ({ + export const filterSensitiveLog = (obj: IpamResourceCidr): any => ({ ...obj, }); } -export interface ModifyHostsRequest { +export interface GetIpamResourceCidrsResult { /** - *Specify whether to enable or disable auto-placement.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The IDs of the Dedicated Hosts to modify.
+ *The resource CIDRs.
*/ - HostIds: string[] | undefined; + IpamResourceCidrs?: IpamResourceCidr[]; +} +export namespace GetIpamResourceCidrsResult { /** - *Indicates whether to enable or disable host recovery for the Dedicated Host. For more information, - * see - * Host recovery in the Amazon EC2 User Guide.
+ * @internal */ - HostRecovery?: HostRecovery | string; + export const filterSensitiveLog = (obj: GetIpamResourceCidrsResult): any => ({ + ...obj, + }); +} +export interface GetLaunchTemplateDataRequest { /** - *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.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
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.
+ *The ID of the instance.
*/ - InstanceFamily?: string; + InstanceId: string | undefined; } -export namespace ModifyHostsRequest { +export namespace GetLaunchTemplateDataRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyHostsRequest): any => ({ + export const filterSensitiveLog = (obj: GetLaunchTemplateDataRequest): any => ({ ...obj, }); } diff --git a/clients/client-ec2/src/models/models_5.ts b/clients/client-ec2/src/models/models_5.ts index 24b755dd7b45..07977de1c987 100644 --- a/clients/client-ec2/src/models/models_5.ts +++ b/clients/client-ec2/src/models/models_5.ts @@ -1,24 +1,39 @@ +import { SENSITIVE_STRING } from "@aws-sdk/smithy-client"; + import { _InstanceType, + AccessScopeAnalysisFinding, + AddIpamOperatingRegion, AddPrefixListEntry, AddressAttribute, AddressAttributeName, Affinity, ApplianceModeSupportValue, AttributeValue, + AutoPlacement, ByoipCidr, + ClientConnectOptions, ClientVpnAuthorizationRuleStatus, + ConnectionLogOptions, CurrencyCodeValues, DnsSupportValue, + EndDateType, + FleetExcessCapacityTerminationPolicy, HostnameType, + HostRecovery, IamInstanceProfileAssociation, IamInstanceProfileSpecification, InstanceEventWindow, IpPermission, Ipv6SupportValue, - Placement, + PortRange, RouteTableAssociationState, + SelfServicePortal, + SubnetAssociation, + Tag, TagSpecification, + TargetConfigurationRequest, + TransitGatewayAssociationState, TransitGatewayAttachmentResourceType, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, @@ -30,23 +45,32 @@ import { BlockDeviceMapping, CapacityReservationPreference, CapacityReservationTarget, - CreditSpecificationRequest, DefaultRouteTableAssociationValue, DefaultRouteTablePropagationValue, - ElasticGpuSpecification, + DiskImageFormat, + FleetLaunchTemplateConfigRequest, IcmpTypeCode, InstanceEventWindowTimeRangeRequest, InstanceInterruptionBehavior, - InstanceIpv6Address, + InstanceRequirementsRequest, + Ipam, + IpamPool, + IpamScope, LaunchTemplate, - LocalGatewayRoute, ManagedPrefixList, MarketType, - PortRange, + NetworkInsightsAccessScopeContent, + Placement, + PlatformValues, + RequestIpamResourceTag, + ResponseLaunchTemplateData, RuleAction, ShutdownBehavior, SnapshotState, SpotInstanceType, + SubnetCidrReservation, + TargetCapacitySpecificationRequest, + TargetCapacityUnitType, TrafficDirection, TrafficMirrorFilter, TrafficMirrorFilterRule, @@ -55,357 +79,356 @@ import { TrafficMirrorRuleAction, TrafficMirrorSession, TransitGateway, - TransitGatewayPrefixListReference, - TransitGatewayRoute, VolumeType, VpnEcmpSupportValue, } from "./models_1"; import { - ClientVpnConnectionStatus, Filter, IKEVersionsRequestListValue, InstanceTagNotificationAttribute, + IpamPoolCidr, Phase1DHGroupNumbersRequestListValue, Phase1EncryptionAlgorithmsRequestListValue, Phase1IntegrityAlgorithmsRequestListValue, Phase2DHGroupNumbersRequestListValue, Phase2EncryptionAlgorithmsRequestListValue, Phase2IntegrityAlgorithmsRequestListValue, + TransitGatewayPrefixListReference, + TransitGatewayRoute, VpnConnection, } from "./models_2"; import { + AnalysisStatus, + ArchitectureType, ArchitectureValues, AttributeBooleanValue, BootModeValues, - CreateVolumePermission, - ExcessCapacityTerminationPolicy, + ConversionTask, + FpgaImageAttribute, + FpgaImageAttributeName, HttpTokensState, + ImportImageLicenseConfigurationResponse, InstanceAttributeName, InstanceMetadataEndpointState, InstanceMetadataOptionsResponse, InstanceMetadataProtocolState, - InstanceNetworkInterfaceSpecification, - InstanceState, InstanceStatusEvent, LaunchPermission, - LaunchTemplateConfig, Monitoring, - NetworkInsightsAnalysis, + PermissionGroup, + PublicIpv4PoolRange, ReservedInstancesConfiguration, + SnapshotDetail, + SnapshotTaskDetail, + VirtualizationType, +} from "./models_3"; +import { + CreateVolumePermission, + ExcessCapacityTerminationPolicy, + InstanceFamilyCreditSpecification, + InstanceNetworkInterfaceSpecification, + IpamResourceCidr, + LaunchTemplateConfig, + Purchase, RunInstancesMonitoringEnabled, ScheduledInstance, SnapshotAttributeName, SpotFleetRequestConfigData, SpotInstanceRequest, SpotPlacement, -} from "./models_3"; -import { OperationType, Purchase, VolumeModification } from "./models_4"; - -export interface ModifyHostsResult { - /** - *The IDs of the Dedicated Hosts that were successfully modified.
- */ - Successful?: string[]; + TransitGatewayPropagationState, + UnlimitedSupportedInstanceFamily, + VolumeModification, +} from "./models_4"; +export interface GetLaunchTemplateDataResult { /** - *The IDs of the Dedicated Hosts that could not be modified. Check whether the - * setting you requested can be used.
+ *The instance data.
*/ - Unsuccessful?: UnsuccessfulItem[]; + LaunchTemplateData?: ResponseLaunchTemplateData; } -export namespace ModifyHostsResult { +export namespace GetLaunchTemplateDataResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyHostsResult): any => ({ + export const filterSensitiveLog = (obj: GetLaunchTemplateDataResult): any => ({ ...obj, }); } -export interface ModifyIdentityIdFormatRequest { +export interface GetManagedPrefixListAssociationsRequest { /** - *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.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
The ID of the prefix list.
*/ - Resource: string | undefined; + PrefixListId: string | undefined; /** - *Indicates whether the resource should use longer IDs (17-character IDs)
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ */ + NextToken?: string; } -export namespace ModifyIdentityIdFormatRequest { +export namespace GetManagedPrefixListAssociationsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyIdentityIdFormatRequest): any => ({ + export const filterSensitiveLog = (obj: GetManagedPrefixListAssociationsRequest): any => ({ ...obj, }); } -export interface ModifyIdFormatRequest { +/** + *Describes the resource with which a prefix list is associated.
+ */ +export interface PrefixListAssociation { /** - *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.
The ID of the resource.
*/ - Resource: string | undefined; + ResourceId?: string; /** - *Indicate whether the resource should use longer IDs (17-character IDs).
+ *The owner of the resource.
*/ - UseLongIds: boolean | undefined; + ResourceOwner?: string; } -export namespace ModifyIdFormatRequest { +export namespace PrefixListAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyIdFormatRequest): any => ({ + export const filterSensitiveLog = (obj: PrefixListAssociation): any => ({ ...obj, }); } -/** - *Describes a launch permission modification.
- */ -export interface LaunchPermissionModifications { +export interface GetManagedPrefixListAssociationsResult { /** - *The Amazon Web Services account ID to add to the list of launch permissions for the AMI.
+ *Information about the associations.
*/ - Add?: LaunchPermission[]; + PrefixListAssociations?: PrefixListAssociation[]; /** - *The Amazon Web Services account ID to remove from the list of launch permissions for the AMI.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for ModifyImageAttribute.
- */ -export interface ModifyImageAttributeRequest { - /** - *The name of the attribute to modify.
- *Valid values: description
| launchPermission
- *
A new description for the AMI.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the AMI.
+ *The ID of the prefix list.
*/ - ImageId: string | undefined; + PrefixListId: string | undefined; /** - *A new launch permission for the AMI.
+ *The version of the prefix list for which to return the entries. The default is the current version.
*/ - LaunchPermission?: LaunchPermissionModifications; + TargetVersion?: number; /** - *The operation type.
- * This parameter can be used only when the Attribute
parameter is launchPermission
.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
Not supported.
+ *The token for the next page of results.
*/ - ProductCodes?: string[]; + NextToken?: string; +} +export namespace GetManagedPrefixListEntriesRequest { /** - *The user groups.
- * This parameter can be used only when the Attribute
parameter is launchPermission
.
Describes a prefix list entry.
+ */ +export interface PrefixListEntry { /** - *The Amazon Web Services account IDs.
- * This parameter can be used only when the Attribute
parameter is launchPermission
.
The CIDR block.
*/ - UserIds?: string[]; + Cidr?: string; /** - *The value of the attribute being modified.
- * This parameter can be used only when the Attribute
parameter is description
.
The description.
*/ - Value?: string; + Description?: string; +} +export namespace PrefixListEntry { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Amazon Resource Name (ARN) of an organization. This parameter can be used only when the Attribute
parameter is launchPermission
.
Information about the prefix list entries.
*/ - OrganizationArns?: string[]; + Entries?: PrefixListEntry[]; /** - *The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter can be used only when the Attribute
parameter is launchPermission
.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Describes information used to set up an EBS volume specified in a block device - * mapping.
- */ -export interface EbsInstanceBlockDeviceSpecification { +export interface GetNetworkInsightsAccessScopeAnalysisFindingsRequest { /** - *Indicates whether the volume is deleted on instance termination.
+ *The ID of the Network Access Scope analysis.
*/ - DeleteOnTermination?: boolean; + NetworkInsightsAccessScopeAnalysisId: string | undefined; /** - *The ID of the EBS volume.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ */ + NextToken?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a block device mapping entry.
- */ -export interface InstanceBlockDeviceMappingSpecification { +export interface GetNetworkInsightsAccessScopeAnalysisFindingsResult { /** - *The device name (for example, /dev/sdh
or xvdh
).
The ID of the Network Access Scope analysis.
*/ - DeviceName?: string; + NetworkInsightsAccessScopeAnalysisId?: string; /** - *Parameters used to automatically set up EBS volumes when the instance is - * launched.
+ *The status of Network Access Scope Analysis.
*/ - Ebs?: EbsInstanceBlockDeviceSpecification; + AnalysisStatus?: AnalysisStatus | string; /** - *suppress the specified device included in the block device mapping.
+ *The findings associated with Network Access Scope Analysis.
*/ - NoDevice?: string; + AnalysisFindings?: AccessScopeAnalysisFinding[]; /** - *The virtual device name.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the Network Access Scope.
+ */ + NetworkInsightsAccessScopeId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
The name of the attribute.
+ *The Network Access Scope content.
*/ - Attribute?: InstanceAttributeName | string; + NetworkInsightsAccessScopeContent?: NetworkInsightsAccessScopeContent; +} +export namespace GetNetworkInsightsAccessScopeContentResult { /** - *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.
+ * @internal */ - BlockDeviceMappings?: InstanceBlockDeviceMappingSpecification[]; + export const filterSensitiveLog = (obj: GetNetworkInsightsAccessScopeContentResult): any => ({ + ...obj, + }); +} +export interface GetPasswordDataRequest { /** - *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.
The ID of the Windows instance.
*/ - DisableApiTermination?: AttributeBooleanValue; + InstanceId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -413,1669 +436,1788 @@ export interface ModifyInstanceAttributeRequest {
* Otherwise, it is UnauthorizedOperation
.
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.
+ * @internal */ - EbsOptimized?: AttributeBooleanValue; + export const filterSensitiveLog = (obj: GetPasswordDataRequest): any => ({ + ...obj, + }); +} +export interface GetPasswordDataResult { /** - *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.
+ *The ID of the Windows instance.
*/ - EnaSupport?: AttributeBooleanValue; + InstanceId?: string; /** - *[EC2-VPC] Replaces the security groups of the instance with the specified security groups. - * You must specify at least one security group, even if it's just the default security group for the VPC. You must - * specify the security group ID, not the security group name.
+ *The password of the instance. Returns an empty string if the password is not + * available.
*/ - Groups?: string[]; + PasswordData?: string; /** - *The ID of the instance.
+ *The time the data was last updated.
*/ - InstanceId: string | undefined; + Timestamp?: Date; +} +export namespace GetPasswordDataResult { /** - *Specifies whether an instance stops or terminates when you initiate shutdown from the - * instance (using the operating system command for system shutdown).
+ * @internal */ - InstanceInitiatedShutdownBehavior?: AttributeValue; + export const filterSensitiveLog = (obj: GetPasswordDataResult): any => ({ + ...obj, + }); +} +/** + *Contains the parameters for GetReservedInstanceExchangeQuote.
+ */ +export interface GetReservedInstancesExchangeQuoteRequest { /** - *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
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
+ *The IDs of the Convertible Reserved Instances to exchange.
*/ - Kernel?: AttributeValue; + ReservedInstanceIds: string[] | undefined; /** - *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.
+ *The configuration of the target Convertible Reserved Instance to exchange for your + * current Convertible Reserved Instances.
*/ - Ramdisk?: AttributeValue; + TargetConfigurations?: TargetConfigurationRequest[]; +} +export namespace GetReservedInstancesExchangeQuoteRequest { /** - *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.
+ * @internal */ - SriovNetSupport?: AttributeValue; + export const filterSensitiveLog = (obj: GetReservedInstancesExchangeQuoteRequest): any => ({ + ...obj, + }); +} +/** + *The cost associated with the Reserved Instance.
+ */ +export interface ReservationValue { /** - *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.
+ *The hourly rate of the reservation.
*/ - UserData?: BlobAttributeValue; + HourlyPrice?: string; /** - *A new value for the attribute. Use only with the kernel
,
- * ramdisk
, userData
, disableApiTermination
, or
- * instanceInitiatedShutdownBehavior
attribute.
The balance of the total value (the sum of remainingUpfrontValue + hourlyPrice * number of hours remaining).
*/ - Value?: string; + RemainingTotalValue?: string; + + /** + *The remaining upfront cost of the reservation.
+ */ + RemainingUpfrontValue?: string; } -export namespace ModifyInstanceAttributeRequest { +export namespace ReservationValue { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyInstanceAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: ReservationValue): any => ({ ...obj, }); } /** - *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.
The total value of the Convertible Reserved Instance.
*/ -export interface CapacityReservationSpecification { +export interface ReservedInstanceReservationValue { /** - *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.
The total value of the Convertible Reserved Instance that you are exchanging.
*/ - CapacityReservationPreference?: CapacityReservationPreference | string; + ReservationValue?: ReservationValue; /** - *Information about the target Capacity Reservation or Capacity Reservation group.
+ *The ID of the Convertible Reserved Instance that you are exchanging.
*/ - CapacityReservationTarget?: CapacityReservationTarget; + ReservedInstanceId?: string; } -export namespace CapacityReservationSpecification { +export namespace ReservedInstanceReservationValue { /** * @internal */ - export const filterSensitiveLog = (obj: CapacityReservationSpecification): any => ({ + export const filterSensitiveLog = (obj: ReservedInstanceReservationValue): any => ({ ...obj, }); } -export interface ModifyInstanceCapacityReservationAttributesRequest { - /** - *The ID of the instance to be modified.
- */ - InstanceId: string | undefined; - +/** + *Information about the Convertible Reserved Instance offering.
+ */ +export interface TargetConfiguration { /** - *Information about the Capacity Reservation targeting option.
+ *The number of instances the Convertible Reserved Instance offering can be applied to. This parameter is + * reserved and cannot be specified in a request
*/ - CapacityReservationSpecification: CapacityReservationSpecification | undefined; + InstanceCount?: number; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The ID of the Convertible Reserved Instance offering.
*/ - DryRun?: boolean; + OfferingId?: string; } -export namespace ModifyInstanceCapacityReservationAttributesRequest { +export namespace TargetConfiguration { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyInstanceCapacityReservationAttributesRequest): any => ({ + export const filterSensitiveLog = (obj: TargetConfiguration): any => ({ ...obj, }); } -export interface ModifyInstanceCapacityReservationAttributesResult { +/** + *The total value of the new Convertible Reserved Instances.
+ */ +export interface TargetReservationValue { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
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.
*/ - Return?: boolean; + ReservationValue?: ReservationValue; + + /** + *The configuration of the Convertible Reserved Instances that make up the exchange.
+ */ + TargetConfiguration?: TargetConfiguration; } -export namespace ModifyInstanceCapacityReservationAttributesResult { +export namespace TargetReservationValue { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyInstanceCapacityReservationAttributesResult): any => ({ + export const filterSensitiveLog = (obj: TargetReservationValue): any => ({ ...obj, }); } /** - *Describes the credit option for CPU usage of a burstable performance instance.
+ *Contains the output of GetReservedInstancesExchangeQuote.
*/ -export interface InstanceCreditSpecificationRequest { +export interface GetReservedInstancesExchangeQuoteResult { /** - *The ID of the instance.
+ *The currency of the transaction.
*/ - InstanceId?: string; + CurrencyCode?: string; /** - *The credit option for CPU usage of the instance. Valid values are
- * standard
and unlimited
.
T3 instances with host
tenancy do not support the unlimited
- * CPU credit option.
If true
, the exchange is valid. If false
, the exchange cannot be completed.
The new end date of the reservation term.
*/ - export const filterSensitiveLog = (obj: InstanceCreditSpecificationRequest): any => ({ - ...obj, - }); -} + OutputReservedInstancesWillExpireAt?: Date; -export interface ModifyInstanceCreditSpecificationRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The total true upfront charge for the exchange.
*/ - DryRun?: boolean; + PaymentDue?: string; /** - *A unique, case-sensitive token that you provide to ensure idempotency of your - * modification request. For more information, see Ensuring - * Idempotency.
+ *The cost associated with the Reserved Instance.
*/ - ClientToken?: string; + ReservedInstanceValueRollup?: ReservationValue; /** - *Information about the credit option for CPU usage.
+ *The configuration of your Convertible Reserved Instances.
*/ - InstanceCreditSpecifications: InstanceCreditSpecificationRequest[] | undefined; -} + ReservedInstanceValueSet?: ReservedInstanceReservationValue[]; -export namespace ModifyInstanceCreditSpecificationRequest { /** - * @internal + *The cost associated with the Reserved Instance.
*/ - export const filterSensitiveLog = (obj: ModifyInstanceCreditSpecificationRequest): any => ({ - ...obj, - }); -} + TargetConfigurationValueRollup?: ReservationValue; -/** - *Describes the burstable performance instance whose credit option for CPU usage was - * successfully modified.
- */ -export interface SuccessfulInstanceCreditSpecificationItem { /** - *The ID of the instance.
+ *The values of the target Convertible Reserved Instances.
*/ - InstanceId?: string; + TargetConfigurationValueSet?: TargetReservationValue[]; + + /** + *Describes the reason why the exchange cannot be completed.
+ */ + ValidationFailureReason?: string; } -export namespace SuccessfulInstanceCreditSpecificationItem { +export namespace GetReservedInstancesExchangeQuoteResult { /** * @internal */ - export const filterSensitiveLog = (obj: SuccessfulInstanceCreditSpecificationItem): any => ({ + export const filterSensitiveLog = (obj: GetReservedInstancesExchangeQuoteResult): any => ({ ...obj, }); } -export enum UnsuccessfulInstanceCreditSpecificationErrorCode { - INCORRECT_INSTANCE_STATE = "IncorrectInstanceState", - INSTANCE_CREDIT_SPECIFICATION_NOT_SUPPORTED = "InstanceCreditSpecification.NotSupported", - INSTANCE_NOT_FOUND = "InvalidInstanceID.NotFound", - INVALID_INSTANCE_ID = "InvalidInstanceID.Malformed", +export interface GetSerialConsoleAccessStatusRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Information about the error for the burstable performance instance whose credit option - * for CPU usage was not modified.
- */ -export interface UnsuccessfulInstanceCreditSpecificationItemError { +export namespace GetSerialConsoleAccessStatusRequest { /** - *The error code.
+ * @internal */ - Code?: UnsuccessfulInstanceCreditSpecificationErrorCode | string; + export const filterSensitiveLog = (obj: GetSerialConsoleAccessStatusRequest): any => ({ + ...obj, + }); +} +export interface GetSerialConsoleAccessStatusResult { /** - *The applicable error message.
+ *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.
Describes the burstable performance instance whose credit option for CPU usage was not - * modified.
+ *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
.
The ID of the instance.
+ *The architecture type.
*/ - InstanceId?: string; + ArchitectureTypes?: (ArchitectureType | string)[]; /** - *The applicable error for the burstable performance instance whose credit option for - * CPU usage was not modified.
+ *The virtualization type.
*/ - Error?: UnsuccessfulInstanceCreditSpecificationItemError; + VirtualizationTypes?: (VirtualizationType | string)[]; + + /** + *The attributes for the instance types. When you specify instance attributes, Amazon EC2 will + * identify instance types with those attributes.
+ */ + InstanceRequirements?: InstanceRequirementsRequest; } -export namespace UnsuccessfulInstanceCreditSpecificationItem { +export namespace InstanceRequirementsWithMetadataRequest { /** * @internal */ - export const filterSensitiveLog = (obj: UnsuccessfulInstanceCreditSpecificationItem): any => ({ + export const filterSensitiveLog = (obj: InstanceRequirementsWithMetadataRequest): any => ({ ...obj, }); } -export interface ModifyInstanceCreditSpecificationResult { +export interface GetSpotPlacementScoresRequest { /** - *Information about the instances whose credit option for CPU usage was successfully - * modified.
+ *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
.
Information about the instances whose credit option for CPU usage was not - * modified.
+ *The target capacity.
*/ - UnsuccessfulInstanceCreditSpecifications?: UnsuccessfulInstanceCreditSpecificationItem[]; -} + TargetCapacity: number | undefined; -export namespace ModifyInstanceCreditSpecificationResult { /** - * @internal + *The unit for the target capacity.
+ *Default: units
(translates to number of instances)
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
*/ - DryRun?: boolean; + SingleAvailabilityZone?: boolean; /** - *The ID of the instance with the scheduled event.
+ *The Regions used to narrow down the list of Regions to be scored. Enter the Region code,
+ * for example, us-east-1
.
The ID of the event whose date and time you are modifying.
+ *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
.
The new date and time when the event will take place.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The maximum number of results to return in a single call. Specify a value between 1 and
+ * 1000. The default value is 1000. To retrieve the remaining results, make another call with
+ * the returned NextToken
value.
Describes a scheduled event for an instance.
+ *The token for the next set of results.
*/ - Event?: InstanceStatusEvent; + NextToken?: string; } -export namespace ModifyInstanceEventStartTimeResult { +export namespace GetSpotPlacementScoresRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyInstanceEventStartTimeResult): any => ({ + export const filterSensitiveLog = (obj: GetSpotPlacementScoresRequest): any => ({ ...obj, }); } -export interface ModifyInstanceEventWindowRequest { +/** + *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.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Region.
*/ - DryRun?: boolean; - - /** - *The name of the event window.
- */ - Name?: string; - - /** - *The ID of the event window.
- */ - InstanceEventWindowId: string | undefined; + Region?: string; /** - *The time ranges of the event window.
+ *The Availability Zone.
*/ - TimeRanges?: InstanceEventWindowTimeRangeRequest[]; + AvailabilityZoneId?: string; /** - *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.
+ *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.
Information about the event window.
+ *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.
+ *The token for the next set of results.
+ */ + NextToken?: string; } -export namespace ModifyInstanceEventWindowResult { +export namespace GetSpotPlacementScoresResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyInstanceEventWindowResult): any => ({ + export const filterSensitiveLog = (obj: GetSpotPlacementScoresResult): any => ({ ...obj, }); } -export interface ModifyInstanceMetadataOptionsRequest { - /** - *The ID of the instance.
- */ - InstanceId: string | undefined; - +export interface GetSubnetCidrReservationsRequest { /** - *The state of token usage for your instance metadata requests. If the parameter is not
- * specified in the request, the default state is optional
.
If the state is optional
, you can choose to retrieve instance metadata
- * with or without a signed token header on your request. If you retrieve the IAM role
- * credentials without a token, the version 1.0 role credentials are returned. If you
- * retrieve the IAM role credentials using a valid signed token, the version 2.0 role
- * credentials are returned.
If the state is required
, you must send a signed token header with any
- * instance metadata retrieval requests. In this state, retrieving the IAM role credential
- * always returns the version 2.0 credentials; the version 1.0 credentials are not
- * available.
One or more filters.
+ *
+ * reservationType
- The type of reservation (prefix
|
+ * explicit
).
+ * subnet-id
- The ID of the subnet.
+ * tag
: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.
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
+ *The ID of the subnet.
*/ - HttpPutResponseHopLimit?: number; + SubnetId: string | undefined; /** - *Enables or disables the HTTP metadata endpoint on your instances. If - * the parameter is not specified, the existing state is maintained.
- *If you specify a value of disabled
, you cannot access your
- * instance metadata.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is
- * DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The token for the next page of results.
*/ - DryRun?: boolean; + NextToken?: string; /** - *Enables or disables the IPv6 endpoint for the instance metadata service. This setting - * applies only if you have enabled the HTTP metadata endpoint.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The ID of the instance.
+ *Information about the IPv4 subnet CIDR reservations.
*/ - InstanceId?: string; + SubnetIpv4CidrReservations?: SubnetCidrReservation[]; /** - *The metadata options for the instance.
+ *Information about the IPv6 subnet CIDR reservations.
*/ - InstanceMetadataOptions?: InstanceMetadataOptionsResponse; + SubnetIpv6CidrReservations?: SubnetCidrReservation[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the attachment.
+ */ + TransitGatewayAttachmentId: string | undefined; -export interface ModifyInstancePlacementRequest { /** - *The affinity setting for the instance.
+ *One or more filters. The possible values are:
+ *
+ * transit-gateway-route-table-id
- The ID of the transit gateway route table.
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 - * ("").
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The ID of the Dedicated Host with which to associate the instance.
+ *The token for the next page of results.
*/ - HostId?: string; + NextToken?: string; /** - *The ID of the instance that you are modifying.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The tenancy for the instance.
- * - *For T3 instances, you can't change the tenancy from dedicated
- * to host
, or from host
to dedicated
.
- * Attempting to make one of these unsupported tenancy changes results in the
- * InvalidTenancy
error code.
Describes a propagation route table.
+ */ +export interface TransitGatewayAttachmentPropagation { /** - *The number of the partition in which to place the instance. Valid only if the
- * placement group strategy is set to partition
.
The ID of the propagation route table.
*/ - PartitionNumber?: number; + TransitGatewayRouteTableId?: string; /** - *The ARN of the host resource group in which to place the instance.
+ *The state of the propagation route table.
*/ - HostResourceGroupArn?: string; + State?: TransitGatewayPropagationState | string; } -export namespace ModifyInstancePlacementRequest { +export namespace TransitGatewayAttachmentPropagation { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyInstancePlacementRequest): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayAttachmentPropagation): any => ({ ...obj, }); } -export interface ModifyInstancePlacementResult { +export interface GetTransitGatewayAttachmentPropagationsResult { /** - *Is true
if the request succeeds, and an error otherwise.
Information about the propagation route tables.
*/ - Return?: boolean; + TransitGatewayAttachmentPropagations?: TransitGatewayAttachmentPropagation[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The ID of the transit gateway multicast domain.
*/ - DryRun?: boolean; + TransitGatewayMulticastDomainId?: string; /** - *Unique, case-sensitive identifier you provide to ensure the idempotency of the - * request. For more information, see Ensuring - * Idempotency.
- *Constraint: Maximum 128 ASCII characters.
+ *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.
The ID of the launch template. You must specify either the launch template ID or - * launch template name in the request.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The name of the launch template. You must specify either the launch template ID or - * launch template name in the request.
+ *The token for the next page of results.
*/ - LaunchTemplateName?: string; + NextToken?: string; /** - *The version number of the launch template to set as the default version.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the launch template.
+/** + *Describes the resources associated with the transit gateway multicast domain.
+ */ +export interface TransitGatewayMulticastDomainAssociation { + /** + *The ID of the transit gateway attachment.
*/ - LaunchTemplate?: LaunchTemplate; -} + TransitGatewayAttachmentId?: string; -export namespace ModifyLaunchTemplateResult { /** - * @internal + *The ID of the resource.
*/ - export const filterSensitiveLog = (obj: ModifyLaunchTemplateResult): any => ({ - ...obj, - }); -} + ResourceId?: string; -/** - *An entry for a prefix list.
- */ -export interface RemovePrefixListEntry { /** - *The CIDR block.
+ *The type of resource, for example a VPC attachment.
*/ - Cidr: string | undefined; + ResourceType?: TransitGatewayAttachmentResourceType | string; + + /** + *The ID of the Amazon Web Services account that owns the transit gateway multicast domain association resource.
+ */ + ResourceOwnerId?: string; + + /** + *The subnet associated with the transit gateway multicast domain.
+ */ + Subnet?: SubnetAssociation; } -export namespace RemovePrefixListEntry { +export namespace TransitGatewayMulticastDomainAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: RemovePrefixListEntry): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayMulticastDomainAssociation): any => ({ ...obj, }); } -export interface ModifyManagedPrefixListRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the prefix list.
+ *Information about the multicast domain associations.
*/ - PrefixListId: string | undefined; + MulticastDomainAssociations?: TransitGatewayMulticastDomainAssociation[]; /** - *The current version of the prefix list.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
A name for the prefix list.
+ * @internal */ - PrefixListName?: string; + export const filterSensitiveLog = (obj: GetTransitGatewayMulticastDomainAssociationsResult): any => ({ + ...obj, + }); +} +export interface GetTransitGatewayPrefixListReferencesRequest { /** - *One or more entries to add to the prefix list.
+ *The ID of the transit gateway route table.
*/ - AddEntries?: AddPrefixListEntry[]; + TransitGatewayRouteTableId: string | undefined; /** - *One or more entries to remove from the prefix list.
+ *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
).
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.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
*/ - export const filterSensitiveLog = (obj: ModifyManagedPrefixListRequest): any => ({ - ...obj, - }); -} + NextToken?: string; -export interface ModifyManagedPrefixListResult { /** - *Information about the prefix list.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes an attachment change.
- */ -export interface NetworkInterfaceAttachmentChanges { +export interface GetTransitGatewayPrefixListReferencesResult { /** - *The ID of the network interface attachment.
+ *Information about the prefix list references.
*/ - AttachmentId?: string; + TransitGatewayPrefixListReferences?: TransitGatewayPrefixListReference[]; /** - *Indicates whether the network interface is deleted when the instance is terminated.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for ModifyNetworkInterfaceAttribute.
- */ -export interface ModifyNetworkInterfaceAttributeRequest { - /** - *Information about the interface attachment. If modifying the 'delete on termination' attribute, you must specify the ID of the interface attachment.
- */ - Attachment?: NetworkInterfaceAttachmentChanges; - +export interface GetTransitGatewayRouteTableAssociationsRequest { /** - *A description for the network interface.
+ *The ID of the transit gateway route table.
*/ - Description?: AttributeValue; + TransitGatewayRouteTableId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
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.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The ID of the network interface.
+ *The token for the next page of results.
*/ - NetworkInterfaceId: string | undefined; + NextToken?: string; /** - *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.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes an association between a route table and a resource attachment.
+ */ +export interface TransitGatewayRouteTableAssociation { /** - *The ID of the instance.
+ *The ID of the attachment.
*/ - InstanceId?: string; + TransitGatewayAttachmentId?: string; /** - *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.
+ *The ID of the resource.
*/ - PrivateDnsHostnameType?: HostnameType | string; + ResourceId?: string; /** - *Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
+ *The resource type. Note that the tgw-peering
resource type has been deprecated.
Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
+ *The state of the association.
*/ - EnableResourceNameDnsAAAARecord?: boolean; + State?: TransitGatewayAssociationState | string; } -export namespace ModifyPrivateDnsNameOptionsRequest { +export namespace TransitGatewayRouteTableAssociation { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyPrivateDnsNameOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayRouteTableAssociation): any => ({ ...obj, }); } -export interface ModifyPrivateDnsNameOptionsResult { +export interface GetTransitGatewayRouteTableAssociationsResult { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
Information about the associations.
*/ - Return?: boolean; + Associations?: TransitGatewayRouteTableAssociation[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Contains the parameters for ModifyReservedInstances.
- */ -export interface ModifyReservedInstancesRequest { +export interface GetTransitGatewayRouteTablePropagationsRequest { /** - *The IDs of the Reserved Instances to modify.
+ *The ID of the transit gateway route table.
*/ - ReservedInstancesIds: string[] | undefined; + TransitGatewayRouteTableId: string | undefined; /** - *A unique, case-sensitive token you provide to ensure idempotency of your modification request. For more information, see - * Ensuring Idempotency.
+ *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.
The configuration settings for the Reserved Instances to modify.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
*/ - export const filterSensitiveLog = (obj: ModifyReservedInstancesRequest): any => ({ - ...obj, - }); -} + NextToken?: string; -/** - *Contains the output of ModifyReservedInstances.
- */ -export interface ModifyReservedInstancesResult { /** - *The ID for the modification.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
Describes a route table propagation.
*/ -export interface SecurityGroupRuleRequest { +export interface TransitGatewayRouteTablePropagation { /** - *The IP protocol name (tcp
, udp
, icmp
,
- * icmpv6
) or number (see Protocol Numbers).
Use -1
to specify all protocols.
The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.
+ *The ID of the attachment.
*/ - FromPort?: number; + TransitGatewayAttachmentId?: string; /** - *The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1
indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
The ID of the resource.
*/ - ToPort?: number; + ResourceId?: string; /** - *The IPv4 CIDR range. To specify a single IPv4 address, use the /32 prefix length.
+ *The type of resource. Note that the tgw-peering
resource type has been deprecated.
The IPv6 CIDR range. To specify a single IPv6 address, use the /128 prefix length.
+ *The state of the resource.
*/ - CidrIpv6?: string; + State?: TransitGatewayPropagationState | string; +} +export namespace TransitGatewayRouteTablePropagation { /** - *The ID of the prefix list.
+ * @internal */ - PrefixListId?: string; + export const filterSensitiveLog = (obj: TransitGatewayRouteTablePropagation): any => ({ + ...obj, + }); +} +export interface GetTransitGatewayRouteTablePropagationsResult { /** - *The ID of the security group that is referenced in the security group rule.
+ *Information about the route table propagations.
*/ - ReferencedGroupId?: string; + TransitGatewayRouteTablePropagations?: TransitGatewayRouteTablePropagation[]; /** - *The description of the security group rule.
+ *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Describes an update to a security group rule.
- */ -export interface SecurityGroupRuleUpdate { +export interface GetVpnConnectionDeviceSampleConfigurationRequest { /** - *The ID of the security group rule.
+ *The VpnConnectionId
specifies the Site-to-Site VPN connection used for the sample
+ * configuration.
Information about the security group rule.
+ *Device identifier provided by the GetVpnConnectionDeviceTypes
API.
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
.
The ID of the security group.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
Information about the security group properties to update.
+ * @internal */ - SecurityGroupRules: SecurityGroupRuleUpdate[] | undefined; + export const filterSensitiveLog = (obj: GetVpnConnectionDeviceSampleConfigurationRequest): any => ({ + ...obj, + }); +} +export interface GetVpnConnectionDeviceSampleConfigurationResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Sample configuration file for the specified customer gateway device.
*/ - DryRun?: boolean; + VpnConnectionDeviceSampleConfiguration?: string; } -export namespace ModifySecurityGroupRulesRequest { +export namespace GetVpnConnectionDeviceSampleConfigurationResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifySecurityGroupRulesRequest): any => ({ + export const filterSensitiveLog = (obj: GetVpnConnectionDeviceSampleConfigurationResult): any => ({ ...obj, + ...(obj.VpnConnectionDeviceSampleConfiguration && { VpnConnectionDeviceSampleConfiguration: SENSITIVE_STRING }), }); } -export interface ModifySecurityGroupRulesResult { +export interface GetVpnConnectionDeviceTypesRequest { /** - *Returns true
if the request succeeds; otherwise, returns an error.
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.
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.
Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
Describes modifications to the list of create volume permissions for a volume.
+ *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.
*/ -export interface CreateVolumePermissionModifications { +export interface VpnConnectionDeviceType { /** - *Adds the specified Amazon Web Services account ID or group to the list.
+ *Customer gateway device identifier.
*/ - Add?: CreateVolumePermission[]; + VpnConnectionDeviceTypeId?: string; /** - *Removes the specified Amazon Web Services account ID or group from the list.
+ *Customer gateway device vendor.
*/ - Remove?: CreateVolumePermission[]; + Vendor?: string; + + /** + *Customer gateway device platform.
+ */ + Platform?: string; + + /** + *Customer gateway device software version.
+ */ + Software?: string; } -export namespace CreateVolumePermissionModifications { +export namespace VpnConnectionDeviceType { /** * @internal */ - export const filterSensitiveLog = (obj: CreateVolumePermissionModifications): any => ({ + export const filterSensitiveLog = (obj: VpnConnectionDeviceType): any => ({ ...obj, }); } -export interface ModifySnapshotAttributeRequest { +export interface GetVpnConnectionDeviceTypesResult { /** - *The snapshot attribute to modify. Only volume creation permissions can be modified.
+ *List of customer gateway devices that have a sample configuration file available for + * use.
*/ - Attribute?: SnapshotAttributeName | string; + VpnConnectionDeviceTypes?: VpnConnectionDeviceType[]; /** - *A JSON representation of the snapshot attribute modification.
+ *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.
The group to modify for the snapshot.
+ * @internal */ - GroupNames?: string[]; + export const filterSensitiveLog = (obj: GetVpnConnectionDeviceTypesResult): any => ({ + ...obj, + }); +} +export interface ImportClientVpnClientCertificateRevocationListRequest { /** - *The type of operation to perform to the attribute.
+ *The ID of the Client VPN endpoint to which the client certificate revocation list applies.
*/ - OperationType?: OperationType | string; + ClientVpnEndpointId: string | undefined; /** - *The ID of the snapshot.
+ *The client certificate revocation list file. For more information, see Generate a Client Certificate Revocation List in the + * Client VPN Administrator Guide.
*/ - SnapshotId: string | undefined; + CertificateRevocationList: string | undefined; /** - *The account ID to modify for the snapshot.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Returns true
if the request succeeds; otherwise, it returns an error.
Describes the client-specific data.
+ */ +export interface ClientData { + /** + *A user-defined comment about the disk upload.
+ */ + Comment?: string; -export interface ModifySnapshotTierRequest { /** - *The ID of the snapshot.
+ *The time that the disk upload ends.
*/ - SnapshotId: string | undefined; + UploadEnd?: Date; /** - *The name of the storage tier. You must specify archive
.
The size of the uploaded disk image, in GiB.
*/ - StorageTier?: TargetStorageTier | string; + UploadSize?: number; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The time that the disk upload starts.
*/ - DryRun?: boolean; + UploadStart?: Date; } -export namespace ModifySnapshotTierRequest { +export namespace ClientData { /** * @internal */ - export const filterSensitiveLog = (obj: ModifySnapshotTierRequest): any => ({ + export const filterSensitiveLog = (obj: ClientData): any => ({ ...obj, }); } -export interface ModifySnapshotTierResult { +/** + *Describes the Amazon S3 bucket for the disk image.
+ */ +export interface UserBucket { /** - *The ID of the snapshot.
+ *The name of the Amazon S3 bucket where the disk image is located.
*/ - SnapshotId?: string; + S3Bucket?: string; /** - *The date and time when the archive process was started.
+ *The file name of the disk image.
*/ - TieringStartTime?: Date; + S3Key?: string; } -export namespace ModifySnapshotTierResult { +export namespace UserBucket { /** * @internal */ - export const filterSensitiveLog = (obj: ModifySnapshotTierResult): any => ({ + export const filterSensitiveLog = (obj: UserBucket): any => ({ ...obj, }); } /** - *Contains the parameters for ModifySpotFleetRequest.
+ *Describes the disk container object for an import image task.
*/ -export interface ModifySpotFleetRequestRequest { +export interface ImageDiskContainer { /** - *Indicates whether running Spot Instances should be terminated if the target capacity - * of the Spot Fleet request is decreased below the current size of the Spot Fleet.
+ *The description of the disk image.
*/ - ExcessCapacityTerminationPolicy?: ExcessCapacityTerminationPolicy | string; + Description?: string; /** - *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.
The block device mapping for the disk.
*/ - LaunchTemplateConfigs?: LaunchTemplateConfig[]; + DeviceName?: string; /** - *The ID of the Spot Fleet request.
+ *The format of the disk image being imported.
+ *Valid values: OVA
| VHD
| VHDX
| VMDK
| RAW
+ *
The size of the fleet.
+ *The ID of the EBS snapshot to be used for importing the snapshot.
*/ - TargetCapacity?: number; + SnapshotId?: string; /** - *The number of On-Demand Instances in the fleet.
+ *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://..)
*/ - OnDemandTargetCapacity?: number; + Url?: string; /** - *Reserved.
+ *The S3 bucket for the disk image.
*/ - Context?: string; + UserBucket?: UserBucket; } -export namespace ModifySpotFleetRequestRequest { +export namespace ImageDiskContainer { /** * @internal */ - export const filterSensitiveLog = (obj: ModifySpotFleetRequestRequest): any => ({ + export const filterSensitiveLog = (obj: ImageDiskContainer): any => ({ ...obj, }); } /** - *Contains the output of ModifySpotFleetRequest.
+ *The request information of license configurations.
*/ -export interface ModifySpotFleetRequestResponse { +export interface ImportImageLicenseConfigurationRequest { /** - *Is true
if the request succeeds, and an error otherwise.
The ARN of a license configuration.
*/ - Return?: boolean; + LicenseConfigurationArn?: string; } -export namespace ModifySpotFleetRequestResponse { +export namespace ImportImageLicenseConfigurationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifySpotFleetRequestResponse): any => ({ + export const filterSensitiveLog = (obj: ImportImageLicenseConfigurationRequest): any => ({ ...obj, }); } -export interface ModifySubnetAttributeRequest { +export interface ImportImageRequest { /** - *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.
The architecture of the virtual machine.
+ *Valid values: i386
| x86_64
| arm64
+ *
Specify true
to indicate that network interfaces attached to instances created in the
- * specified subnet should be assigned a public IPv4 address.
The client-specific data.
*/ - MapPublicIpOnLaunch?: AttributeBooleanValue; + ClientData?: ClientData; /** - *The ID of the subnet.
+ *The token to enable idempotency for VM import requests.
*/ - SubnetId: string | undefined; + ClientToken?: string; /** - *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
.
A description string for the import image task.
*/ - MapCustomerOwnedIpOnLaunch?: AttributeBooleanValue; + Description?: string; /** - *The customer-owned IPv4 address pool associated with the subnet.
- *You must set this value when you specify true
for MapCustomerOwnedIpOnLaunch
.
Information about the disk containers.
*/ - CustomerOwnedIpv4Pool?: string; + DiskContainers?: ImageDiskContainer[]; /** - *Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet - * should return synthetic IPv6 addresses for IPv4-only destinations.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The type of hostnames to assign to instances in the subnet at launch. 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.
+ *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.
Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
+ *The target hypervisor platform.
+ *Valid values: xen
+ *
Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
+ *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. 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.
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.
*/ - EnableResourceNameDnsAAAARecordOnLaunch?: AttributeBooleanValue; + KmsKeyId?: string; /** - *
- * 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).
- *
The license type to be used for the Amazon Machine Image (AMI) after importing.
+ *By default, we detect the source-system operating system (OS) and apply the appropriate license. Specify
+ * AWS
to replace the source-system license with an Amazon Web Services license, if appropriate. Specify BYOL
+ * to retain the source-system license, if appropriate.
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.
- * Specify true
to indicate that local network interfaces at the current
- * position should be disabled.
- *
The operating system of the virtual machine.
+ *Valid values: Windows
| Linux
+ *
The name of the role to use when not using the default role, 'vmimport'.
*/ - export const filterSensitiveLog = (obj: ModifySubnetAttributeRequest): any => ({ - ...obj, - }); -} + RoleName?: string; -export interface ModifyTrafficMirrorFilterNetworkServicesRequest { /** - *The ID of the Traffic Mirror filter.
+ *The ARNs of the license configurations.
*/ - TrafficMirrorFilterId: string | undefined; + LicenseSpecifications?: ImportImageLicenseConfigurationRequest[]; /** - *The network service, for example Amazon DNS, that you want to mirror.
+ *The tags to apply to the import image task during creation.
*/ - AddNetworkServices?: (TrafficMirrorNetworkService | string)[]; + TagSpecifications?: TagSpecification[]; /** - *The network service, for example Amazon DNS, that you no longer want to mirror.
+ *The usage operation value. For more information, see Licensing options in the VM Import/Export User Guide.
*/ - RemoveNetworkServices?: (TrafficMirrorNetworkService | string)[]; + UsageOperation?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The boot mode of the virtual machine.
*/ - DryRun?: boolean; + BootMode?: BootModeValues | string; } -export namespace ModifyTrafficMirrorFilterNetworkServicesRequest { +export namespace ImportImageRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyTrafficMirrorFilterNetworkServicesRequest): any => ({ + export const filterSensitiveLog = (obj: ImportImageRequest): any => ({ ...obj, }); } -export interface ModifyTrafficMirrorFilterNetworkServicesResult { +export interface ImportImageResult { /** - *The Traffic Mirror filter that the network service is associated with.
+ *The architecture of the virtual machine.
*/ - TrafficMirrorFilter?: TrafficMirrorFilter; -} + Architecture?: string; -export namespace ModifyTrafficMirrorFilterNetworkServicesResult { /** - * @internal + *A description of the import task.
*/ - export const filterSensitiveLog = (obj: ModifyTrafficMirrorFilterNetworkServicesResult): any => ({ - ...obj, - }); -} - -export type TrafficMirrorFilterRuleField = "description" | "destination-port-range" | "protocol" | "source-port-range"; + Description?: string; -export interface ModifyTrafficMirrorFilterRuleRequest { /** - *The ID of the Traffic Mirror rule.
+ *Indicates whether the AMI is encrypted.
*/ - TrafficMirrorFilterRuleId: string | undefined; + Encrypted?: boolean; /** - *The type of traffic to assign to the rule.
+ *The target hypervisor of the import task.
*/ - TrafficDirection?: TrafficDirection | string; + Hypervisor?: string; /** - *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.
+ *The ID of the Amazon Machine Image (AMI) created by the import task.
*/ - RuleNumber?: number; + ImageId?: string; /** - *The action to assign to the rule.
+ *The task ID of the import image task.
*/ - RuleAction?: TrafficMirrorRuleAction | string; + ImportTaskId?: string; /** - *The destination ports that are associated with the Traffic Mirror rule.
+ *The identifier for the symmetric KMS key that was used to create the encrypted AMI.
*/ - DestinationPortRange?: TrafficMirrorPortRangeRequest; + KmsKeyId?: string; /** - *The port range to assign to the Traffic Mirror rule.
+ *The license type of the virtual machine.
*/ - SourcePortRange?: TrafficMirrorPortRangeRequest; + LicenseType?: string; /** - *The protocol, for example TCP, to assign to the Traffic Mirror rule.
+ *The operating system of the virtual machine.
*/ - Protocol?: number; + Platform?: string; /** - *The destination CIDR block to assign to the Traffic Mirror rule.
+ *The progress of the task.
*/ - DestinationCidrBlock?: string; + Progress?: string; /** - *The source CIDR block to assign to the Traffic Mirror rule.
+ *Information about the snapshots.
*/ - SourceCidrBlock?: string; + SnapshotDetails?: SnapshotDetail[]; /** - *The description to assign to the Traffic Mirror rule.
+ *A brief status of the task.
*/ - Description?: string; + Status?: string; /** - *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.
+ *A detailed status message of the import task.
*/ - RemoveFields?: (TrafficMirrorFilterRuleField | string)[]; + StatusMessage?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ARNs of the license configurations.
*/ - DryRun?: boolean; -} + LicenseSpecifications?: ImportImageLicenseConfigurationResponse[]; -export namespace ModifyTrafficMirrorFilterRuleRequest { /** - * @internal + *Any tags assigned to the import image task.
*/ - export const filterSensitiveLog = (obj: ModifyTrafficMirrorFilterRuleRequest): any => ({ - ...obj, - }); -} + Tags?: Tag[]; -export interface ModifyTrafficMirrorFilterRuleResult { /** - *Modifies a Traffic Mirror rule.
+ *The usage operation value.
*/ - TrafficMirrorFilterRule?: TrafficMirrorFilterRule; + UsageOperation?: string; } -export namespace ModifyTrafficMirrorFilterRuleResult { +export namespace ImportImageResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyTrafficMirrorFilterRuleResult): any => ({ + export const filterSensitiveLog = (obj: ImportImageResult): any => ({ ...obj, }); } -export type TrafficMirrorSessionField = "description" | "packet-length" | "virtual-network-id"; - -export interface ModifyTrafficMirrorSessionRequest { +/** + *Describes a disk image.
+ */ +export interface DiskImageDetail { /** - *The ID of the Traffic Mirror session.
+ *The size of the disk image, in GiB.
*/ - TrafficMirrorSessionId: string | undefined; + Bytes: number | undefined; /** - *The Traffic Mirror target. The target must be in the same VPC as the source, or have a VPC peering connection with the source.
+ *The disk image format.
*/ - TrafficMirrorTargetId?: string; + Format: DiskImageFormat | string | undefined; /** - *The ID of the Traffic Mirror filter.
+ *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.
*/ - TrafficMirrorFilterId?: string; + ImportManifestUrl: string | undefined; +} +export namespace DiskImageDetail { /** - *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.
+ * @internal */ - PacketLength?: number; + export const filterSensitiveLog = (obj: DiskImageDetail): any => ({ + ...obj, + }); +} +/** + *Describes an EBS volume.
+ */ +export interface VolumeDetail { /** - *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.
+ *The size of the volume, in GiB.
*/ - SessionNumber?: number; + Size: number | undefined; +} +export namespace VolumeDetail { /** - *The virtual network ID of the Traffic Mirror session.
+ * @internal */ - VirtualNetworkId?: number; + export const filterSensitiveLog = (obj: VolumeDetail): any => ({ + ...obj, + }); +} +/** + *Describes a disk image.
+ */ +export interface DiskImage { /** - *The description to assign to the Traffic Mirror session.
+ *A description of the disk image.
*/ Description?: string; /** - *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.
+ *Information about the disk image.
*/ - RemoveFields?: (TrafficMirrorSessionField | string)[]; + Image?: DiskImageDetail; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the volume.
*/ - DryRun?: boolean; + Volume?: VolumeDetail; } -export namespace ModifyTrafficMirrorSessionRequest { +export namespace DiskImage { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyTrafficMirrorSessionRequest): any => ({ + export const filterSensitiveLog = (obj: DiskImage): any => ({ ...obj, }); } -export interface ModifyTrafficMirrorSessionResult { +/** + *Describes the user data for an instance.
+ */ +export interface UserData { /** - *Information about the Traffic Mirror session.
+ *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.
*/ - TrafficMirrorSession?: TrafficMirrorSession; + Data?: string; } -export namespace ModifyTrafficMirrorSessionResult { +export namespace UserData { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyTrafficMirrorSessionResult): any => ({ + export const filterSensitiveLog = (obj: UserData): any => ({ ...obj, }); } /** - *The transit gateway options.
+ *Describes the launch specification for VM import.
*/ -export interface ModifyTransitGatewayOptions { +export interface ImportInstanceLaunchSpecification { /** - *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.
+ *Reserved.
*/ - AddTransitGatewayCidrBlocks?: string[]; + AdditionalInfo?: string; /** - *Removes CIDR blocks for the transit gateway.
+ *The architecture of the instance.
*/ - RemoveTransitGatewayCidrBlocks?: string[]; + Architecture?: ArchitectureValues | string; /** - *Enable or disable Equal Cost Multipath Protocol support.
+ *The security group IDs.
*/ - VpnEcmpSupport?: VpnEcmpSupportValue | string; + GroupIds?: string[]; /** - *Enable or disable DNS support.
+ *The security group names.
*/ - DnsSupport?: DnsSupportValue | string; + GroupNames?: string[]; /** - *Enable or disable automatic acceptance of attachment requests.
+ *Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the + * operating system command for system shutdown).
*/ - AutoAcceptSharedAttachments?: AutoAcceptSharedAttachmentsValue | string; + InstanceInitiatedShutdownBehavior?: ShutdownBehavior | string; /** - *Enable or disable automatic association with the default association route table.
+ *The instance type. For more information about the instance types that you can import, see Instance Types in the + * VM Import/Export User Guide.
*/ - DefaultRouteTableAssociation?: DefaultRouteTableAssociationValue | string; + InstanceType?: _InstanceType | string; /** - *The ID of the default association route table.
+ *Indicates whether monitoring is enabled.
*/ - AssociationDefaultRouteTableId?: string; + Monitoring?: boolean; /** - *Enable or disable automatic propagation of routes to the default propagation route table.
+ *The placement information for the instance.
*/ - DefaultRouteTablePropagation?: DefaultRouteTablePropagationValue | string; + Placement?: Placement; /** - *The ID of the default propagation route table.
+ *[EC2-VPC] An available IP address from the IP address range of the subnet.
*/ - PropagationDefaultRouteTableId?: string; + PrivateIpAddress?: string; + + /** + *[EC2-VPC] The ID of the subnet in which to launch the instance.
+ */ + SubnetId?: string; + + /** + *The Base64-encoded user data to make available to the instance.
+ */ + UserData?: UserData; } -export namespace ModifyTransitGatewayOptions { +export namespace ImportInstanceLaunchSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyTransitGatewayOptions): any => ({ + export const filterSensitiveLog = (obj: ImportInstanceLaunchSpecification): any => ({ ...obj, + ...(obj.UserData && { UserData: SENSITIVE_STRING }), }); } -export interface ModifyTransitGatewayRequest { - /** - *The ID of the transit gateway.
- */ - TransitGatewayId: string | undefined; - +export interface ImportInstanceRequest { /** - *The description for the transit gateway.
+ *A description for the instance being imported.
*/ Description?: string; /** - *The options to modify.
+ *The disk image.
*/ - Options?: ModifyTransitGatewayOptions; + DiskImages?: DiskImage[]; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -2083,171 +2225,168 @@ export interface ModifyTransitGatewayRequest {
* Otherwise, it is UnauthorizedOperation
.
The launch specification.
+ */ + LaunchSpecification?: ImportInstanceLaunchSpecification; + + /** + *The instance operating system.
+ */ + Platform: PlatformValues | string | undefined; } -export namespace ModifyTransitGatewayRequest { +export namespace ImportInstanceRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyTransitGatewayRequest): any => ({ + export const filterSensitiveLog = (obj: ImportInstanceRequest): any => ({ ...obj, + ...(obj.LaunchSpecification && { + LaunchSpecification: ImportInstanceLaunchSpecification.filterSensitiveLog(obj.LaunchSpecification), + }), }); } -export interface ModifyTransitGatewayResult { +export interface ImportInstanceResult { /** - *Describes a transit gateway.
+ *Information about the conversion task.
*/ - TransitGateway?: TransitGateway; + ConversionTask?: ConversionTask; } -export namespace ModifyTransitGatewayResult { +export namespace ImportInstanceResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyTransitGatewayResult): any => ({ + export const filterSensitiveLog = (obj: ImportInstanceResult): any => ({ ...obj, }); } -export interface ModifyTransitGatewayPrefixListReferenceRequest { +export interface ImportKeyPairRequest { /** - *The ID of the transit gateway route table.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the prefix list.
+ *A unique name for the key pair.
*/ - PrefixListId: string | undefined; + KeyName: string | undefined; /** - *The ID of the attachment to which traffic is routed.
+ *The public key. For API calls, the text must be base64-encoded. For command line tools, base64 encoding is performed for you.
*/ - TransitGatewayAttachmentId?: string; + PublicKeyMaterial: Uint8Array | undefined; /** - *Indicates whether to drop traffic that matches this route.
+ *The tags to apply to the imported key pair.
*/ - Blackhole?: boolean; + TagSpecifications?: TagSpecification[]; +} +export namespace ImportKeyPairRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Information about the prefix list reference.
- */ - TransitGatewayPrefixListReference?: TransitGatewayPrefixListReference; -} - -export namespace ModifyTransitGatewayPrefixListReferenceResult { +export interface ImportKeyPairResult { /** - * @internal + *The MD5 public key fingerprint as specified in section 4 of RFC 4716.
*/ - export const filterSensitiveLog = (obj: ModifyTransitGatewayPrefixListReferenceResult): any => ({ - ...obj, - }); -} + KeyFingerprint?: string; -/** - *Describes the options for a VPC attachment.
- */ -export interface ModifyTransitGatewayVpcAttachmentRequestOptions { /** - *Enable or disable DNS support. The default is enable
.
The key pair name that you provided.
*/ - DnsSupport?: DnsSupportValue | string; + KeyName?: string; /** - *Enable or disable IPv6 support. The default is enable
.
The ID of the resulting key pair.
*/ - Ipv6Support?: Ipv6SupportValue | string; + KeyPairId?: string; /** - *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
.
The tags applied to the imported key pair.
*/ - ApplianceModeSupport?: ApplianceModeSupportValue | string; + Tags?: Tag[]; } -export namespace ModifyTransitGatewayVpcAttachmentRequestOptions { +export namespace ImportKeyPairResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyTransitGatewayVpcAttachmentRequestOptions): any => ({ + export const filterSensitiveLog = (obj: ImportKeyPairResult): any => ({ ...obj, }); } -export interface ModifyTransitGatewayVpcAttachmentRequest { - /** - *The ID of the attachment.
- */ - TransitGatewayAttachmentId: string | undefined; - +/** + *The disk container object for the import snapshot request.
+ */ +export interface SnapshotDiskContainer { /** - *The IDs of one or more subnets to add. You can specify at most one subnet per Availability Zone.
+ *The description of the disk image being imported.
*/ - AddSubnetIds?: string[]; + Description?: string; /** - *The IDs of one or more subnets to remove.
+ *The format of the disk image being imported.
+ *Valid values: VHD
| VMDK
| RAW
+ *
The new VPC attachment options.
+ *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://..).
*/ - Options?: ModifyTransitGatewayVpcAttachmentRequestOptions; + Url?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The Amazon S3 bucket for the disk image.
*/ - DryRun?: boolean; + UserBucket?: UserBucket; } -export namespace ModifyTransitGatewayVpcAttachmentRequest { +export namespace SnapshotDiskContainer { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyTransitGatewayVpcAttachmentRequest): any => ({ + export const filterSensitiveLog = (obj: SnapshotDiskContainer): any => ({ ...obj, }); } -export interface ModifyTransitGatewayVpcAttachmentResult { +export interface ImportSnapshotRequest { /** - *Information about the modified attachment.
+ *The client-specific data.
*/ - TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment; -} + ClientData?: ClientData; -export namespace ModifyTransitGatewayVpcAttachmentResult { /** - * @internal + *Token to enable idempotency for VM import requests.
*/ - export const filterSensitiveLog = (obj: ModifyTransitGatewayVpcAttachmentResult): any => ({ - ...obj, - }); -} + ClientToken?: string; + + /** + *The description string for the import snapshot task.
+ */ + Description?: string; + + /** + *Information about the disk container.
+ */ + DiskContainer?: SnapshotDiskContainer; -export interface ModifyVolumeRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -2256,119 +2395,100 @@ export interface ModifyVolumeRequest {
DryRun?: boolean;
/**
- *
The ID of the volume.
+ *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.
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:
+ *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:
*
- * gp2
and gp3
: 1-16,384
Key ID
*
- * io1
and io2
: 4-16,384
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.
- * st1
and sc1
: 125-16,384
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.
- * standard
: 1-1,024
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.
Default: The existing size is retained.
+ *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.
*/ - Size?: number; + KmsKeyId?: string; /** - *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.
+ *The name of the role to use when not using the default role, 'vmimport'.
*/ - VolumeType?: VolumeType | string; + RoleName?: string; /** - *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.
The tags to apply to the import snapshot task during creation.
*/ - Iops?: number; + TagSpecifications?: TagSpecification[]; +} +export namespace ImportSnapshotRequest { /** - *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.
+ * @internal */ - Throughput?: number; + export const filterSensitiveLog = (obj: ImportSnapshotRequest): any => ({ + ...obj, + }); +} +export interface ImportSnapshotResult { /** - *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.
A description of the import snapshot task.
*/ - MultiAttachEnabled?: boolean; -} + Description?: string; -export namespace ModifyVolumeRequest { /** - * @internal + *The ID of the import snapshot task.
*/ - export const filterSensitiveLog = (obj: ModifyVolumeRequest): any => ({ - ...obj, - }); -} + ImportTaskId?: string; -export interface ModifyVolumeResult { /** - *Information about the volume modification.
+ *Information about the import snapshot task.
*/ - VolumeModification?: VolumeModification; + SnapshotTaskDetail?: SnapshotTaskDetail; + + /** + *Any tags assigned to the import snapshot task.
+ */ + Tags?: Tag[]; } -export namespace ModifyVolumeResult { +export namespace ImportSnapshotResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVolumeResult): any => ({ + export const filterSensitiveLog = (obj: ImportSnapshotResult): any => ({ ...obj, }); } -export interface ModifyVolumeAttributeRequest { +export interface ImportVolumeRequest { /** - *Indicates whether the volume should be auto-enabled for I/O operations.
+ *The Availability Zone for the resulting EBS volume.
*/ - AutoEnableIO?: AttributeBooleanValue; + AvailabilityZone: string | undefined; /** - *The ID of the volume.
+ *A description of the volume.
*/ - VolumeId: string | undefined; + Description?: string; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -2376,1327 +2496,1379 @@ export interface ModifyVolumeAttributeRequest {
* Otherwise, it is UnauthorizedOperation
.
The disk image.
*/ - export const filterSensitiveLog = (obj: ModifyVolumeAttributeRequest): any => ({ - ...obj, - }); -} + Image: DiskImageDetail | undefined; -export interface ModifyVpcAttributeRequest { /** - *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.
+ *The volume size.
*/ - EnableDnsHostnames?: AttributeBooleanValue; + Volume: VolumeDetail | undefined; +} +export namespace ImportVolumeRequest { /** - *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.
+ * @internal */ - EnableDnsSupport?: AttributeBooleanValue; + export const filterSensitiveLog = (obj: ImportVolumeRequest): any => ({ + ...obj, + }); +} +export interface ImportVolumeResult { /** - *The ID of the VPC.
+ *Information about the conversion task.
*/ - VpcId: string | undefined; + ConversionTask?: ConversionTask; } -export namespace ModifyVpcAttributeRequest { +export namespace ImportVolumeResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpcAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: ImportVolumeResult): any => ({ ...obj, }); } -/** - *Contains the parameters for ModifyVpcEndpoint.
- */ -export interface ModifyVpcEndpointRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the endpoint.
+ *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
(Gateway endpoint) Specify true
to reset the policy document to the
- * default policy. The default policy allows full access to the service.
The token for the next page of results.
*/ - ResetPolicy?: boolean; + NextToken?: string; /** - *(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.
+ *The IDs of the snapshots to list. Omit this parameter to list all of the + * snapshots that are in the Recycle Bin.
*/ - PolicyDocument?: string; + SnapshotIds?: string[]; /** - *(Gateway endpoint) One or more route tables IDs to associate with the endpoint.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
(Gateway endpoint) One or more route table IDs to disassociate from the endpoint.
+ * @internal */ - RemoveRouteTableIds?: string[]; + export const filterSensitiveLog = (obj: ListSnapshotsInRecycleBinRequest): any => ({ + ...obj, + }); +} +/** + *Information about a snapshot that is currently in the Recycle Bin.
+ */ +export interface SnapshotRecycleBinInfo { /** - *(Interface and Gateway Load Balancer endpoints) One or more subnet IDs in which to serve the endpoint. For a Gateway Load Balancer endpoint, you can specify only one subnet.
+ *The ID of the snapshot.
*/ - AddSubnetIds?: string[]; + SnapshotId?: string; /** - *(Interface endpoint) One or more subnets IDs in which to remove the endpoint.
+ *The date and time when the snaphsot entered the Recycle Bin.
*/ - RemoveSubnetIds?: string[]; + RecycleBinEnterTime?: Date; /** - *(Interface endpoint) One or more security group IDs to associate with the network interface.
+ *The date and time when the snapshot is to be permanently deleted from the Recycle Bin.
*/ - AddSecurityGroupIds?: string[]; + RecycleBinExitTime?: Date; /** - *(Interface endpoint) One or more security group IDs to disassociate from the network interface.
+ *The description for the snapshot.
*/ - RemoveSecurityGroupIds?: string[]; + Description?: string; /** - *(Interface endpoint) Indicates whether a private hosted zone is associated with the - * VPC.
+ *The ID of the volume from which the snapshot was created.
*/ - PrivateDnsEnabled?: boolean; + VolumeId?: string; } -export namespace ModifyVpcEndpointRequest { +export namespace SnapshotRecycleBinInfo { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpcEndpointRequest): any => ({ + export const filterSensitiveLog = (obj: SnapshotRecycleBinInfo): any => ({ ...obj, }); } -export interface ModifyVpcEndpointResult { +export interface ListSnapshotsInRecycleBinResult { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
Information about the snapshots.
*/ - Return?: boolean; + Snapshots?: SnapshotRecycleBinInfo[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
[EC2-VPC] The allocation ID.
*/ - DryRun?: boolean; + AllocationId: string | undefined; /** - *The ID of the notification.
+ *The domain name to modify for the IP address.
*/ - ConnectionNotificationId: string | undefined; + DomainName?: string; /** - *The ARN for the SNS topic for the notification.
- */ - ConnectionNotificationArn?: string; - - /** - *One or more events for the endpoint. Valid values are Accept
,
- * Connect
, Delete
, and Reject
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Returns true
if the request succeeds; otherwise, it returns an error.
Information about the Elastic IP address.
*/ - ReturnValue?: boolean; + Address?: AddressAttribute; } -export namespace ModifyVpcEndpointConnectionNotificationResult { +export namespace ModifyAddressAttributeResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpcEndpointConnectionNotificationResult): any => ({ + export const filterSensitiveLog = (obj: ModifyAddressAttributeResult): any => ({ ...obj, }); } -export interface ModifyVpcEndpointServiceConfigurationRequest { +export type ModifyAvailabilityZoneOptInStatus = "not-opted-in" | "opted-in"; + +export interface ModifyAvailabilityZoneGroupRequest { + /** + *The name of the Availability Zone group, Local Zone group, or Wavelength Zone + * group.
+ */ + GroupName: string | undefined; + + /** + *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.
Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
The ID of the service.
+ * @internal */ - ServiceId: string | undefined; + export const filterSensitiveLog = (obj: ModifyAvailabilityZoneGroupRequest): any => ({ + ...obj, + }); +} +export interface ModifyAvailabilityZoneGroupResult { /** - *(Interface endpoint configuration) The private DNS name to assign to the endpoint service.
+ *Is true
if the request succeeds, and an error otherwise.
(Interface endpoint configuration) Removes the private DNS name of the endpoint service.
+ * @internal */ - RemovePrivateDnsName?: boolean; + export const filterSensitiveLog = (obj: ModifyAvailabilityZoneGroupResult): any => ({ + ...obj, + }); +} +export interface ModifyCapacityReservationRequest { /** - *Indicates whether requests to create an endpoint to your service must be accepted.
+ *The ID of the Capacity Reservation.
*/ - AcceptanceRequired?: boolean; + CapacityReservationId: string | undefined; /** - *The Amazon Resource Names (ARNs) of Network Load Balancers to add to your service - * configuration.
+ *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.
The Amazon Resource Names (ARNs) of Network Load Balancers to remove from your service - * configuration.
+ *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
.
The Amazon Resource Names (ARNs) of Gateway Load Balancers to add to your service - * configuration.
+ *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
.
The Amazon Resource Names (ARNs) of Gateway Load Balancers to remove from your service - * configuration.
+ *Reserved. Capacity Reservations you have created are accepted by default.
*/ - RemoveGatewayLoadBalancerArns?: string[]; + Accept?: boolean; + + /** + *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Reserved for future use.
+ */ + AdditionalInfo?: string; } -export namespace ModifyVpcEndpointServiceConfigurationRequest { +export namespace ModifyCapacityReservationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpcEndpointServiceConfigurationRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyCapacityReservationRequest): any => ({ ...obj, }); } -export interface ModifyVpcEndpointServiceConfigurationResult { +export interface ModifyCapacityReservationResult { /** *Returns true
if the request succeeds; otherwise, it returns an error.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the Capacity Reservation Fleet to modify.
*/ - DryRun?: boolean; + CapacityReservationFleetId: string | undefined; /** - *The ID of the service.
+ *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.
*/ - ServiceId: string | undefined; + TotalTargetCapacity?: number; /** - *The Amazon Resource Names (ARN) of one or more principals. - * Permissions are granted to the principals in this list. - * To grant permissions to all principals, specify an asterisk (*).
+ *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.
*/ - AddAllowedPrincipals?: string[]; + EndDate?: Date; /** - *The Amazon Resource Names (ARN) of one or more principals. - * Permissions are revoked for principals in this list.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
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.
+ */ + RemoveEndDate?: boolean; } -export namespace ModifyVpcEndpointServicePermissionsRequest { +export namespace ModifyCapacityReservationFleetRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpcEndpointServicePermissionsRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyCapacityReservationFleetRequest): any => ({ ...obj, }); } -export interface ModifyVpcEndpointServicePermissionsResult { +export interface ModifyCapacityReservationFleetResult { /** *Returns true
if the request succeeds; otherwise, it returns an error.
The VPC peering connection options.
+ *Information about the DNS server to be used.
*/ -export interface PeeringConnectionOptionsRequest { - /** - *If true, enables a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.
- */ - AllowDnsResolutionFromRemoteVpc?: boolean; - +export interface DnsServersOptionsModifyStructure { /** - *If true, enables outbound communication from an EC2-Classic instance that's linked to - * a local VPC using ClassicLink to instances in a peer VPC.
+ *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.
*/ - AllowEgressFromLocalClassicLinkToRemoteVpc?: boolean; + CustomDnsServers?: string[]; /** - *If true, enables outbound communication from instances in a local VPC to an - * EC2-Classic instance that's linked to a peer VPC using ClassicLink.
+ *Indicates whether DNS servers should be used. Specify False
to delete the existing DNS
+ * servers.
The VPC peering connection options for the accepter VPC.
+ *The ID of the Client VPN endpoint to modify.
*/ - AccepterPeeringConnectionOptions?: PeeringConnectionOptionsRequest; + ClientVpnEndpointId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ARN of the server certificate to be used. The server certificate must be provisioned in + * Certificate Manager (ACM).
*/ - DryRun?: boolean; + ServerCertificateArn?: string; /** - *The VPC peering connection options for the requester VPC.
+ *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
+ *The ID of the VPC peering connection.
+ *Information about the DNS servers to be used by Client VPN connections. A Client VPN endpoint can have + * up to two DNS servers.
*/ - VpcPeeringConnectionId: string | undefined; -} + DnsServers?: DnsServersOptionsModifyStructure; -export namespace ModifyVpcPeeringConnectionOptionsRequest { /** - * @internal + *The port number to assign to the Client VPN endpoint for TCP and UDP traffic.
+ *Valid Values: 443
| 1194
+ *
Default Value: 443
+ *
Describes the VPC peering connection options.
- */ -export interface PeeringConnectionOptions { /** - *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.
+ *A brief description of the Client VPN endpoint.
*/ - AllowDnsResolutionFromRemoteVpc?: boolean; + Description?: string; /** - *If true, enables outbound communication from an EC2-Classic instance that's linked to - * a local VPC using ClassicLink to instances in a peer VPC.
+ *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.
*/ - AllowEgressFromLocalClassicLinkToRemoteVpc?: boolean; + SplitTunnel?: boolean; /** - *If true, enables outbound communication from instances in a local VPC to an - * EC2-Classic instance that's linked to a peer VPC using ClassicLink.
+ *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The IDs of one or more security groups to apply to the target network.
*/ - export const filterSensitiveLog = (obj: PeeringConnectionOptions): any => ({ - ...obj, - }); -} + SecurityGroupIds?: string[]; -export interface ModifyVpcPeeringConnectionOptionsResult { /** - *Information about the VPC peering connection options for the accepter VPC.
+ *The ID of the VPC to associate with the Client VPN endpoint.
*/ - AccepterPeeringConnectionOptions?: PeeringConnectionOptions; + VpcId?: string; /** - *Information about the VPC peering connection options for the requester VPC.
+ *Specify whether to enable the self-service portal for the Client VPN endpoint.
*/ - RequesterPeeringConnectionOptions?: PeeringConnectionOptions; + SelfServicePortal?: SelfServicePortal | string; + + /** + *The options for managing connection authorization for new client connections.
+ */ + ClientConnectOptions?: ClientConnectOptions; } -export namespace ModifyVpcPeeringConnectionOptionsResult { +export namespace ModifyClientVpnEndpointRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpcPeeringConnectionOptionsResult): any => ({ + export const filterSensitiveLog = (obj: ModifyClientVpnEndpointRequest): any => ({ ...obj, }); } -export type VpcTenancy = "default"; - -export interface ModifyVpcTenancyRequest { +export interface ModifyClientVpnEndpointResult { /** - *The ID of the VPC.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
The instance tenancy attribute for the VPC.
+ * @internal */ - InstanceTenancy: VpcTenancy | string | undefined; + export const filterSensitiveLog = (obj: ModifyClientVpnEndpointResult): any => ({ + ...obj, + }); +} +export interface ModifyDefaultCreditSpecificationRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
The instance family.
*/ - export const filterSensitiveLog = (obj: ModifyVpcTenancyRequest): any => ({ - ...obj, - }); -} + InstanceFamily: UnlimitedSupportedInstanceFamily | string | undefined; -export interface ModifyVpcTenancyResult { /** - *Returns true
if the request succeeds; otherwise, returns an
- * error.
The credit option for CPU usage of the instance family.
+ *Valid Values: standard
| unlimited
+ *
The ID of the VPN connection.
- */ - VpnConnectionId: string | undefined; - +export interface ModifyDefaultCreditSpecificationResult { /** - *The ID of the transit gateway.
+ *The default credit option for CPU usage of the instance family.
*/ - TransitGatewayId?: string; + InstanceFamilyCreditSpecification?: InstanceFamilyCreditSpecification; +} +export namespace ModifyDefaultCreditSpecificationResult { /** - *The ID of the customer gateway at your end of the VPN connection.
+ * @internal */ - CustomerGatewayId?: string; + export const filterSensitiveLog = (obj: ModifyDefaultCreditSpecificationResult): any => ({ + ...obj, + }); +} +export interface ModifyEbsDefaultKmsKeyIdRequest { /** - *The ID of the virtual private gateway at the Amazon Web Services side of the VPN - * connection.
+ *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.
*/ - VpnGatewayId?: string; + KmsKeyId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a VPN connection.
+ *The Amazon Resource Name (ARN) of the default KMS key for encryption by default.
*/ - VpnConnection?: VpnConnection; + KmsKeyId?: string; } -export namespace ModifyVpnConnectionResult { +export namespace ModifyEbsDefaultKmsKeyIdResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpnConnectionResult): any => ({ + export const filterSensitiveLog = (obj: ModifyEbsDefaultKmsKeyIdResult): any => ({ ...obj, }); } -export interface ModifyVpnConnectionOptionsRequest { +export interface ModifyFleetRequest { /** - *The ID of the Site-to-Site VPN connection.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
- *Default: 0.0.0.0/0
- *
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.
*/ - LocalIpv4NetworkCidr?: string; + ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy | string; /** - *The IPv4 CIDR on the Amazon Web Services side of the VPN connection.
- *Default: 0.0.0.0/0
- *
The launch template and overrides.
*/ - RemoteIpv4NetworkCidr?: string; + LaunchTemplateConfigs?: FleetLaunchTemplateConfigRequest[]; /** - *The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
- *Default: ::/0
- *
The ID of the EC2 Fleet.
*/ - LocalIpv6NetworkCidr?: string; + FleetId: string | undefined; /** - *The IPv6 CIDR on the Amazon Web Services side of the VPN connection.
- *Default: ::/0
- *
The size of the EC2 Fleet.
*/ - RemoteIpv6NetworkCidr?: string; + TargetCapacitySpecification?: TargetCapacitySpecificationRequest; /** - *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Reserved.
*/ - DryRun?: boolean; + Context?: string; } -export namespace ModifyVpnConnectionOptionsRequest { +export namespace ModifyFleetRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpnConnectionOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyFleetRequest): any => ({ ...obj, }); } -export interface ModifyVpnConnectionOptionsResult { +export interface ModifyFleetResult { /** - *Describes a VPN connection.
+ *Is true
if the request succeeds, and an error otherwise.
The ID of the Amazon Web Services Site-to-Site VPN connection.
- */ - VpnConnectionId: string | undefined; - +/** + *Describes a load permission.
+ */ +export interface LoadPermissionRequest { /** - *The external IP address of the VPN tunnel.
+ *The name of the group.
*/ - VpnTunnelOutsideIpAddress: string | undefined; + Group?: PermissionGroup | string; /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The Amazon Web Services account ID.
*/ - DryRun?: boolean; + UserId?: string; } -export namespace ModifyVpnTunnelCertificateRequest { +export namespace LoadPermissionRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpnTunnelCertificateRequest): any => ({ + export const filterSensitiveLog = (obj: LoadPermissionRequest): any => ({ ...obj, }); } -export interface ModifyVpnTunnelCertificateResult { +/** + *Describes modifications to the load permissions of an Amazon FPGA image (AFI).
+ */ +export interface LoadPermissionModifications { /** - *Describes a VPN connection.
+ *The load permissions to add.
*/ - VpnConnection?: VpnConnection; + Add?: LoadPermissionRequest[]; + + /** + *The load permissions to remove.
+ */ + Remove?: LoadPermissionRequest[]; } -export namespace ModifyVpnTunnelCertificateResult { +export namespace LoadPermissionModifications { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpnTunnelCertificateResult): any => ({ + export const filterSensitiveLog = (obj: LoadPermissionModifications): any => ({ ...obj, }); } -/** - *The Amazon Web Services Site-to-Site VPN tunnel options to modify.
- */ -export interface ModifyVpnTunnelOptionsSpecification { +export type OperationType = "add" | "remove"; + +export interface ModifyFpgaImageAttributeRequest { /** - *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
- *
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
The ID of the AFI.
*/ - TunnelInsideIpv6Cidr?: string; + FpgaImageId: string | undefined; /** - *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).
+ *The name of the attribute.
*/ - PreSharedKey?: string; + Attribute?: FpgaImageAttributeName | string; /** - *The lifetime for phase 1 of the IKE negotiation, in seconds.
- *Constraints: A value between 900 and 28,800.
- *Default: 28800
- *
The operation type.
*/ - Phase1LifetimeSeconds?: number; + OperationType?: OperationType | string; /** - *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
- *
The Amazon Web Services account IDs. This parameter is valid only when modifying the loadPermission
attribute.
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
- *
The user groups. This parameter is valid only when modifying the loadPermission
attribute.
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
- *
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.
The number of packets in an IKE replay window.
- *Constraints: A value between 64 and 2048.
- *Default: 1024
- *
The load permission for the AFI.
*/ - ReplayWindowSize?: number; + LoadPermission?: LoadPermissionModifications; /** - *The number of seconds after which a DPD timeout occurs.
- *Constraints: A value between 0 and 30.
- *Default: 30
- *
A description for the AFI.
*/ - DPDTimeoutSeconds?: number; + Description?: string; /** - *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
- *
A name for the AFI.
*/ - DPDTimeoutAction?: string; + Name?: string; +} +export namespace ModifyFpgaImageAttributeRequest { /** - *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
- *
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
- *
Information about the attribute.
*/ - Phase2EncryptionAlgorithms?: Phase2EncryptionAlgorithmsRequestListValue[]; + FpgaImageAttribute?: FpgaImageAttribute; +} +export namespace ModifyFpgaImageAttributeResult { /** - *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
- *
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
- *
Specify whether to enable or disable auto-placement.
*/ - Phase2IntegrityAlgorithms?: Phase2IntegrityAlgorithmsRequestListValue[]; + AutoPlacement?: AutoPlacement | string; /** - *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
- *
The IDs of the Dedicated Hosts to modify.
*/ - Phase1DHGroupNumbers?: Phase1DHGroupNumbersRequestListValue[]; + HostIds: string[] | undefined; /** - *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
- *
Indicates whether to enable or disable host recovery for the Dedicated Host. For more information, + * see + * Host recovery in the Amazon EC2 User Guide.
*/ - Phase2DHGroupNumbers?: Phase2DHGroupNumbersRequestListValue[]; + HostRecovery?: HostRecovery | string; /** - *The IKE versions that are permitted for the VPN tunnel.
- *Valid values: ikev1
| ikev2
- *
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.
*/ - IKEVersions?: IKEVersionsRequestListValue[]; + InstanceType?: string; /** - *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
- *
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.
*/ - StartupAction?: string; + InstanceFamily?: string; } -export namespace ModifyVpnTunnelOptionsSpecification { +export namespace ModifyHostsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpnTunnelOptionsSpecification): any => ({ + export const filterSensitiveLog = (obj: ModifyHostsRequest): any => ({ ...obj, }); } -export interface ModifyVpnTunnelOptionsRequest { +export interface ModifyHostsResult { /** - *The ID of the Amazon Web Services Site-to-Site VPN connection.
+ *The IDs of the Dedicated Hosts that were successfully modified.
*/ - VpnConnectionId: string | undefined; + Successful?: string[]; /** - *The external IP address of the VPN tunnel.
- */ - VpnTunnelOutsideIpAddress: string | undefined; - - /** - *The tunnel options to modify.
- */ - TunnelOptions: ModifyVpnTunnelOptionsSpecification | undefined; - - /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The IDs of the Dedicated Hosts that could not be modified. Check whether the + * setting you requested can be used.
*/ - DryRun?: boolean; + Unsuccessful?: UnsuccessfulItem[]; } -export namespace ModifyVpnTunnelOptionsRequest { +export namespace ModifyHostsResult { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpnTunnelOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyHostsResult): any => ({ ...obj, }); } -export interface ModifyVpnTunnelOptionsResult { +export interface ModifyIdentityIdFormatRequest { /** - *Describes a VPN connection.
+ *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.
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.
Indicates whether the resource should use longer IDs (17-character IDs)
+ */ + UseLongIds: boolean | undefined; } -export namespace ModifyVpnTunnelOptionsResult { +export namespace ModifyIdentityIdFormatRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ModifyVpnTunnelOptionsResult): any => ({ + export const filterSensitiveLog = (obj: ModifyIdentityIdFormatRequest): any => ({ ...obj, }); } -export interface MonitorInstancesRequest { +export interface ModifyIdFormatRequest { /** - *The IDs of the instances.
+ *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.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Indicate whether the resource should use longer IDs (17-character IDs).
*/ - DryRun?: boolean; + UseLongIds: boolean | undefined; } -export namespace MonitorInstancesRequest { +export namespace ModifyIdFormatRequest { /** * @internal */ - export const filterSensitiveLog = (obj: MonitorInstancesRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyIdFormatRequest): any => ({ ...obj, }); } /** - *Describes the monitoring of an instance.
+ *Describes a launch permission modification.
*/ -export interface InstanceMonitoring { +export interface LaunchPermissionModifications { /** - *The ID of the instance.
+ *The Amazon Web Services account ID to add to the list of launch permissions for the AMI.
*/ - InstanceId?: string; + Add?: LaunchPermission[]; /** - *The monitoring for the instance.
+ *The Amazon Web Services account ID to remove from the list of launch permissions for the AMI.
*/ - Monitoring?: Monitoring; + Remove?: LaunchPermission[]; } -export namespace InstanceMonitoring { +export namespace LaunchPermissionModifications { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceMonitoring): any => ({ + export const filterSensitiveLog = (obj: LaunchPermissionModifications): any => ({ ...obj, }); } -export interface MonitorInstancesResult { +/** + *Contains the parameters for ModifyImageAttribute.
+ */ +export interface ModifyImageAttributeRequest { /** - *The monitoring information.
+ *The name of the attribute to modify.
+ *Valid values: description
| launchPermission
+ *
A new description for the AMI.
*/ - export const filterSensitiveLog = (obj: MonitorInstancesResult): any => ({ - ...obj, - }); -} + Description?: AttributeValue; -export interface MoveAddressToVpcRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the AMI.
*/ - DryRun?: boolean; + ImageId: string | undefined; /** - *The Elastic IP address.
+ *A new launch permission for the AMI.
*/ - PublicIp: string | undefined; -} + LaunchPermission?: LaunchPermissionModifications; -export namespace MoveAddressToVpcRequest { /** - * @internal + *The operation type.
+ * This parameter can be used only when the Attribute
parameter is launchPermission
.
Not supported.
+ */ + ProductCodes?: string[]; -export interface MoveAddressToVpcResult { /** - *The allocation ID for the Elastic IP address.
+ *The user groups.
+ * This parameter can be used only when the Attribute
parameter is launchPermission
.
The status of the move of the IP address.
+ *The Amazon Web Services account IDs.
+ * This parameter can be used only when the Attribute
parameter is launchPermission
.
The value of the attribute being modified.
+ * This parameter can be used only when the Attribute
parameter is description
.
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.
- */ -export interface CidrAuthorizationContext { /** - *The plain-text authorization message for the prefix and account.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The signed authorization message for the prefix and account.
+ *The Amazon Resource Name (ARN) of an organization. This parameter can be used only when the Attribute
parameter is launchPermission
.
The Amazon Resource Name (ARN) of an organizational unit (OU). This parameter can be used only when the Attribute
parameter is launchPermission
.
Describes information used to set up an EBS volume specified in a block device + * mapping.
+ */ +export interface EbsInstanceBlockDeviceSpecification { /** - *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.
+ *Indicates whether the volume is deleted on instance termination.
*/ - Cidr: string | undefined; + DeleteOnTermination?: boolean; /** - *A signed document that proves that you are authorized to bring the specified IP address - * range to Amazon using BYOIP.
+ *The ID of the EBS volume.
*/ - CidrAuthorizationContext?: CidrAuthorizationContext; + VolumeId?: string; +} +export namespace EbsInstanceBlockDeviceSpecification { /** - *(IPv6 only) Indicate whether the address range will be publicly advertised to the - * internet.
- *Default: true
+ * @internal */ - PubliclyAdvertisable?: boolean; + export const filterSensitiveLog = (obj: EbsInstanceBlockDeviceSpecification): any => ({ + ...obj, + }); +} +/** + *Describes a block device mapping entry.
+ */ +export interface InstanceBlockDeviceMappingSpecification { /** - *A description for the address range and the address pool.
+ *The device name (for example, /dev/sdh
or xvdh
).
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Parameters used to automatically set up EBS volumes when the instance is + * launched.
*/ - DryRun?: boolean; + Ebs?: EbsInstanceBlockDeviceSpecification; /** - *The tags to apply to the address pool.
+ *suppress the specified device included in the block device mapping.
*/ - PoolTagSpecifications?: TagSpecification[]; + NoDevice?: string; /** - *Reserved.
+ *The virtual device name.
*/ - MultiRegion?: boolean; + VirtualName?: string; } -export namespace ProvisionByoipCidrRequest { +export namespace InstanceBlockDeviceMappingSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: ProvisionByoipCidrRequest): any => ({ + export const filterSensitiveLog = (obj: InstanceBlockDeviceMappingSpecification): any => ({ ...obj, }); } -export interface ProvisionByoipCidrResult { - /** - *Information about the address range.
- */ - ByoipCidr?: ByoipCidr; +export interface BlobAttributeValue { + Value?: Uint8Array; } -export namespace ProvisionByoipCidrResult { +export namespace BlobAttributeValue { /** * @internal */ - export const filterSensitiveLog = (obj: ProvisionByoipCidrResult): any => ({ + export const filterSensitiveLog = (obj: BlobAttributeValue): any => ({ ...obj, }); } -export interface PurchaseHostReservationRequest { +export interface ModifyInstanceAttributeRequest { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
+ *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.
The currency in which the totalUpfrontPrice
, LimitPrice
,
- * and totalHourlyPrice
amounts are specified. At this time, the only
- * supported currency is USD
.
The name of the attribute.
*/ - CurrencyCode?: CurrencyCodeValues | string; + Attribute?: InstanceAttributeName | string; /** - *The IDs of the Dedicated Hosts with which the reservation will be associated.
+ *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.
*/ - HostIdSet: string[] | undefined; + BlockDeviceMappings?: InstanceBlockDeviceMappingSpecification[]; /** - *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.
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.
The ID of the offering.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The tags to apply to the Dedicated Host Reservation during purchase.
+ *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.
*/ - TagSpecifications?: TagSpecification[]; -} + EbsOptimized?: AttributeBooleanValue; -export namespace PurchaseHostReservationRequest { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: PurchaseHostReservationRequest): any => ({ - ...obj, - }); -} + EnaSupport?: AttributeBooleanValue; -export interface PurchaseHostReservationResult { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
+ *[EC2-VPC] Replaces the security groups of the instance with the specified security groups. + * You must specify at least one security group, even if it's just the default security group for the VPC. You must + * specify the security group ID, not the security group name.
*/ - ClientToken?: string; + Groups?: string[]; /** - *The currency in which the totalUpfrontPrice
and
- * totalHourlyPrice
amounts are specified. At this time, the only
- * supported currency is USD
.
The ID of the instance.
*/ - CurrencyCode?: CurrencyCodeValues | string; + InstanceId: string | undefined; /** - *Describes the details of the purchase.
+ *Specifies whether an instance stops or terminates when you initiate shutdown from the + * instance (using the operating system command for system shutdown).
*/ - Purchase?: Purchase[]; + InstanceInitiatedShutdownBehavior?: AttributeValue; /** - *The total hourly price of the reservation calculated per hour.
+ *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
.
The total amount charged to your account when you purchase the reservation.
+ *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.
*/ - TotalUpfrontPrice?: string; -} + Kernel?: AttributeValue; -export namespace PurchaseHostReservationResult { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: PurchaseHostReservationResult): any => ({ - ...obj, - }); -} + Ramdisk?: AttributeValue; -/** - *Describes the limit price of a Reserved Instance offering.
- */ -export interface ReservedInstanceLimitPrice { /** - *Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).
+ *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.
*/ - Amount?: number; + SriovNetSupport?: AttributeValue; /** - *The currency in which the limitPrice
amount is specified.
- * At this time, the only supported currency is USD
.
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.
*/ - CurrencyCode?: CurrencyCodeValues | string; + UserData?: BlobAttributeValue; + + /** + *A new value for the attribute. Use only with the kernel
,
+ * ramdisk
, userData
, disableApiTermination
, or
+ * instanceInitiatedShutdownBehavior
attribute.
Contains the parameters for PurchaseReservedInstancesOffering.
+ *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.
The number of Reserved Instances to purchase.
+ *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.
The ID of the Reserved Instance offering to purchase.
+ *Information about the target Capacity Reservation or Capacity Reservation group.
*/ - ReservedInstancesOfferingId: string | undefined; + CapacityReservationTarget?: CapacityReservationTarget; +} +export namespace 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
.
Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.
+ *The ID of the instance to be modified.
*/ - LimitPrice?: ReservedInstanceLimitPrice; + InstanceId: string | undefined; /** - *The time at which to purchase the Reserved Instance, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
+ *Information about the Capacity Reservation targeting option.
*/ - PurchaseTime?: Date; + CapacityReservationSpecification: CapacityReservationSpecification | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Contains the output of PurchaseReservedInstancesOffering.
- */ -export interface PurchaseReservedInstancesOfferingResult { +export interface ModifyInstanceCapacityReservationAttributesResult { /** - *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.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
Describes a request to purchase Scheduled Instances.
+ *Describes the credit option for CPU usage of a burstable performance instance.
*/ -export interface PurchaseRequest { +export interface InstanceCreditSpecificationRequest { /** - *The number of instances.
+ *The ID of the instance.
*/ - InstanceCount: number | undefined; + InstanceId?: string; /** - *The purchase token.
+ *The credit option for CPU usage of the instance. Valid values are
+ * standard
and unlimited
.
T3 instances with host
tenancy do not support the unlimited
+ * CPU credit option.
Contains the parameters for PurchaseScheduledInstances.
- */ -export interface PurchaseScheduledInstancesRequest { - /** - *Unique, case-sensitive identifier that ensures the idempotency of the request. - * For more information, see Ensuring Idempotency.
- */ - ClientToken?: string; - +export interface ModifyInstanceCreditSpecificationRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -3705,1334 +3877,2908 @@ export interface PurchaseScheduledInstancesRequest {
DryRun?: boolean;
/**
- *
The purchase requests.
+ *A unique, case-sensitive token that you provide to ensure idempotency of your + * modification request. For more information, see Ensuring + * Idempotency.
*/ - PurchaseRequests: PurchaseRequest[] | undefined; + ClientToken?: string; + + /** + *Information about the credit option for CPU usage.
+ */ + InstanceCreditSpecifications: InstanceCreditSpecificationRequest[] | undefined; } -export namespace PurchaseScheduledInstancesRequest { +export namespace ModifyInstanceCreditSpecificationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: PurchaseScheduledInstancesRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyInstanceCreditSpecificationRequest): any => ({ ...obj, }); } /** - *Contains the output of PurchaseScheduledInstances.
- */ -export interface PurchaseScheduledInstancesResult { + *Describes the burstable performance instance whose credit option for CPU usage was + * successfully modified.
+ */ +export interface SuccessfulInstanceCreditSpecificationItem { /** - *Information about the Scheduled Instances.
+ *The ID of the instance.
*/ - ScheduledInstanceSet?: ScheduledInstance[]; + InstanceId?: string; } -export namespace PurchaseScheduledInstancesResult { +export namespace SuccessfulInstanceCreditSpecificationItem { /** * @internal */ - export const filterSensitiveLog = (obj: PurchaseScheduledInstancesResult): any => ({ + export const filterSensitiveLog = (obj: SuccessfulInstanceCreditSpecificationItem): any => ({ ...obj, }); } -export interface RebootInstancesRequest { +export enum UnsuccessfulInstanceCreditSpecificationErrorCode { + INCORRECT_INSTANCE_STATE = "IncorrectInstanceState", + INSTANCE_CREDIT_SPECIFICATION_NOT_SUPPORTED = "InstanceCreditSpecification.NotSupported", + INSTANCE_NOT_FOUND = "InvalidInstanceID.NotFound", + INVALID_INSTANCE_ID = "InvalidInstanceID.Malformed", +} + +/** + *Information about the error for the burstable performance instance whose credit option + * for CPU usage was not modified.
+ */ +export interface UnsuccessfulInstanceCreditSpecificationItemError { /** - *The instance IDs.
+ *The error code.
*/ - InstanceIds: string[] | undefined; + Code?: UnsuccessfulInstanceCreditSpecificationErrorCode | string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The applicable error message.
*/ - DryRun?: boolean; + Message?: string; } -export namespace RebootInstancesRequest { +export namespace UnsuccessfulInstanceCreditSpecificationItemError { /** * @internal */ - export const filterSensitiveLog = (obj: RebootInstancesRequest): any => ({ + export const filterSensitiveLog = (obj: UnsuccessfulInstanceCreditSpecificationItemError): any => ({ ...obj, }); } /** - *Contains the parameters for RegisterImage.
+ *Describes the burstable performance instance whose credit option for CPU usage was not + * modified.
*/ -export interface RegisterImageRequest { - /** - *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.
The architecture of the AMI.
- *Default: For Amazon EBS-backed AMIs, i386
.
- * For instance store-backed AMIs, the architecture specified in the manifest file.
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 Elastic Compute Cloud User Guide.
- */ - BlockDeviceMappings?: BlockDeviceMapping[]; - - /** - *A description for your AMI.
- */ - Description?: string; - +export interface UnsuccessfulInstanceCreditSpecificationItem { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the instance.
*/ - DryRun?: boolean; + InstanceId?: string; /** - *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.
+ *The applicable error for the burstable performance instance whose credit option for + * CPU usage was not modified.
*/ - EnaSupport?: boolean; + Error?: UnsuccessfulInstanceCreditSpecificationItemError; +} +export namespace UnsuccessfulInstanceCreditSpecificationItem { /** - *The ID of the kernel.
+ * @internal */ - KernelId?: string; + export const filterSensitiveLog = (obj: UnsuccessfulInstanceCreditSpecificationItem): any => ({ + ...obj, + }); +} +export interface ModifyInstanceCreditSpecificationResult { /** - *A name for your AMI.
- *Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)
+ *Information about the instances whose credit option for CPU usage was successfully + * modified.
*/ - Name: string | undefined; + SuccessfulInstanceCreditSpecifications?: SuccessfulInstanceCreditSpecificationItem[]; /** - *The billing product codes. Your account must be authorized to specify billing product codes. Otherwise, - * you can use the Amazon Web Services Marketplace to bill for the use of an AMI.
+ *Information about the instances whose credit option for CPU usage was not + * modified.
*/ - BillingProducts?: string[]; + UnsuccessfulInstanceCreditSpecifications?: UnsuccessfulInstanceCreditSpecificationItem[]; +} +export namespace ModifyInstanceCreditSpecificationResult { /** - *The ID of the RAM disk.
+ * @internal */ - RamdiskId?: string; + export const filterSensitiveLog = (obj: ModifyInstanceCreditSpecificationResult): any => ({ + ...obj, + }); +} +export interface ModifyInstanceEventStartTimeRequest { /** - *The device name of the root device volume (for example, /dev/sda1
).
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
+ *The ID of the instance with the scheduled event.
*/ - SriovNetSupport?: string; + InstanceId: string | undefined; /** - *The type of virtualization (hvm
| paravirtual
).
Default: paravirtual
- *
The ID of the event whose date and time you are modifying.
*/ - VirtualizationType?: string; + InstanceEventId: string | undefined; /** - *The boot mode of the AMI. For more information, see Boot modes in the - * Amazon Elastic Compute Cloud User Guide.
+ *The new date and time when the event will take place.
*/ - BootMode?: BootModeValues | string; + NotBefore: Date | undefined; } -export namespace RegisterImageRequest { +export namespace ModifyInstanceEventStartTimeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RegisterImageRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyInstanceEventStartTimeRequest): any => ({ ...obj, }); } -/** - *Contains the output of RegisterImage.
- */ -export interface RegisterImageResult { +export interface ModifyInstanceEventStartTimeResult { /** - *The ID of the newly registered AMI.
+ *Describes a scheduled event for an instance.
*/ - ImageId?: string; + Event?: InstanceStatusEvent; } -export namespace RegisterImageResult { +export namespace ModifyInstanceEventStartTimeResult { /** * @internal */ - export const filterSensitiveLog = (obj: RegisterImageResult): any => ({ + export const filterSensitiveLog = (obj: ModifyInstanceEventStartTimeResult): any => ({ ...obj, }); } -/** - *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
Indicates whether to register all tag keys in the current Region. Specify true
- * to register all tag keys.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The tag keys to register.
+ *The name of the event window.
*/ - InstanceTagKeys?: string[]; -} + Name?: string; -export namespace RegisterInstanceTagAttributeRequest { /** - * @internal + *The ID of the event window.
*/ - export const filterSensitiveLog = (obj: RegisterInstanceTagAttributeRequest): any => ({ - ...obj, - }); -} + InstanceEventWindowId: string | undefined; -export interface RegisterInstanceEventNotificationAttributesRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The time ranges of the event window.
*/ - DryRun?: boolean; + TimeRanges?: InstanceEventWindowTimeRangeRequest[]; /** - *Information about the tag keys to register.
+ *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.
*/ - InstanceTagAttribute?: RegisterInstanceTagAttributeRequest; + CronExpression?: string; } -export namespace RegisterInstanceEventNotificationAttributesRequest { +export namespace ModifyInstanceEventWindowRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RegisterInstanceEventNotificationAttributesRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyInstanceEventWindowRequest): any => ({ ...obj, }); } -export interface RegisterInstanceEventNotificationAttributesResult { +export interface ModifyInstanceEventWindowResult { /** - *The resulting set of tag keys.
+ *Information about the event window.
*/ - InstanceTagAttribute?: InstanceTagNotificationAttribute; + InstanceEventWindow?: InstanceEventWindow; } -export namespace RegisterInstanceEventNotificationAttributesResult { +export namespace ModifyInstanceEventWindowResult { /** * @internal */ - export const filterSensitiveLog = (obj: RegisterInstanceEventNotificationAttributesResult): any => ({ + export const filterSensitiveLog = (obj: ModifyInstanceEventWindowResult): any => ({ ...obj, }); } -export interface RegisterTransitGatewayMulticastGroupMembersRequest { - /** - *The ID of the transit gateway multicast domain.
- */ - TransitGatewayMulticastDomainId?: string; - - /** - *The IP address assigned to the transit gateway multicast group.
- */ - GroupIpAddress?: string; - +export interface ModifyInstanceMetadataOptionsRequest { /** - *The group members' network interface IDs to register with the transit gateway multicast group.
+ *The ID of the instance.
*/ - NetworkInterfaceIds?: string[]; + InstanceId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The state of token usage for your instance metadata requests. If the parameter is not
+ * specified in the request, the default state is optional
.
If the state is optional
, you can choose to retrieve instance metadata
+ * with or without a signed token header on your request. If you retrieve the IAM role
+ * credentials without a token, the version 1.0 role credentials are returned. If you
+ * retrieve the IAM role credentials using a valid signed token, the version 2.0 role
+ * credentials are returned.
If the state is required
, you must send a signed token header with any
+ * instance metadata retrieval requests. In this state, retrieving the IAM role credential
+ * always returns the version 2.0 credentials; the version 1.0 credentials are not
+ * available.
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
*/ - export const filterSensitiveLog = (obj: RegisterTransitGatewayMulticastGroupMembersRequest): any => ({ - ...obj, - }); -} + HttpPutResponseHopLimit?: number; -/** - *Describes the registered transit gateway multicast group members.
- */ -export interface TransitGatewayMulticastRegisteredGroupMembers { /** - *The ID of the transit gateway multicast domain.
+ *Enables or disables the HTTP metadata endpoint on your instances. If + * the parameter is not specified, the existing state is maintained.
+ *If you specify a value of disabled
, you cannot access your
+ * instance metadata.
The ID of the registered network interfaces.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is
+ * DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The IP address assigned to the transit gateway multicast group.
+ *Enables or disables the IPv6 endpoint for the instance metadata service. This setting + * applies only if you have enabled the HTTP metadata endpoint.
*/ - GroupIpAddress?: string; + HttpProtocolIpv6?: InstanceMetadataProtocolState | string; } -export namespace TransitGatewayMulticastRegisteredGroupMembers { +export namespace ModifyInstanceMetadataOptionsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: TransitGatewayMulticastRegisteredGroupMembers): any => ({ + export const filterSensitiveLog = (obj: ModifyInstanceMetadataOptionsRequest): any => ({ ...obj, }); } -export interface RegisterTransitGatewayMulticastGroupMembersResult { +export interface ModifyInstanceMetadataOptionsResult { /** - *Information about the registered transit gateway multicast group members.
+ *The ID of the instance.
*/ - RegisteredMulticastGroupMembers?: TransitGatewayMulticastRegisteredGroupMembers; + InstanceId?: string; + + /** + *The metadata options for the instance.
+ */ + InstanceMetadataOptions?: InstanceMetadataOptionsResponse; } -export namespace RegisterTransitGatewayMulticastGroupMembersResult { +export namespace ModifyInstanceMetadataOptionsResult { /** * @internal */ - export const filterSensitiveLog = (obj: RegisterTransitGatewayMulticastGroupMembersResult): any => ({ + export const filterSensitiveLog = (obj: ModifyInstanceMetadataOptionsResult): any => ({ ...obj, }); } -export interface RegisterTransitGatewayMulticastGroupSourcesRequest { +export type HostTenancy = "dedicated" | "host"; + +export interface ModifyInstancePlacementRequest { /** - *The ID of the transit gateway multicast domain.
+ *The affinity setting for the instance.
*/ - TransitGatewayMulticastDomainId?: string; + Affinity?: Affinity | string; /** - *The IP address assigned to the transit gateway multicast group.
+ *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 + * ("").
*/ - GroupIpAddress?: string; + GroupName?: string; /** - *The group sources' network interface IDs to register with the transit gateway multicast group.
+ *The ID of the Dedicated Host with which to associate the instance.
*/ - NetworkInterfaceIds?: string[]; + HostId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the instance that you are modifying.
*/ - DryRun?: boolean; -} + InstanceId: string | undefined; -export namespace RegisterTransitGatewayMulticastGroupSourcesRequest { /** - * @internal + *The tenancy for the instance.
+ * + *For T3 instances, you can't change the tenancy from dedicated
+ * to host
, or from host
to dedicated
.
+ * Attempting to make one of these unsupported tenancy changes results in the
+ * InvalidTenancy
error code.
Describes the members registered with the transit gateway multicast group.
- */ -export interface TransitGatewayMulticastRegisteredGroupSources { /** - *The ID of the transit gateway multicast domain.
+ *The number of the partition in which to place the instance. Valid only if the
+ * placement group strategy is set to partition
.
The IDs of the network interfaces members registered with the transit gateway multicast group.
+ *The ARN of the host resource group in which to place the instance.
*/ - RegisteredNetworkInterfaceIds?: string[]; + HostResourceGroupArn?: string; +} +export namespace ModifyInstancePlacementRequest { /** - *The IP address assigned to the transit gateway multicast group.
+ * @internal */ - GroupIpAddress?: string; + export const filterSensitiveLog = (obj: ModifyInstancePlacementRequest): any => ({ + ...obj, + }); } -export namespace TransitGatewayMulticastRegisteredGroupSources { +export interface ModifyInstancePlacementResult { + /** + *Is true
if the request succeeds, and an error otherwise.
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 + *
+ */ +export interface RemoveIpamOperatingRegion { /** - *Information about the transit gateway multicast group sources.
+ *The name of the operating Region you want to remove.
*/ - RegisteredMulticastGroupSources?: TransitGatewayMulticastRegisteredGroupSources; + RegionName?: string; } -export namespace RegisterTransitGatewayMulticastGroupSourcesResult { +export namespace RemoveIpamOperatingRegion { /** * @internal */ - export const filterSensitiveLog = (obj: RegisterTransitGatewayMulticastGroupSourcesResult): any => ({ + export const filterSensitiveLog = (obj: RemoveIpamOperatingRegion): any => ({ ...obj, }); } -export interface RejectTransitGatewayMulticastDomainAssociationsRequest { +export interface ModifyIpamRequest { /** - *The ID of the transit gateway multicast domain.
+ *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
.
The ID of the transit gateway attachment.
+ *The ID of the IPAM you want to modify.
*/ - TransitGatewayAttachmentId?: string; + IpamId: string | undefined; /** - *The IDs of the subnets to associate with the transit gateway multicast domain.
+ *The description of the IPAM you want to modify.
*/ - SubnetIds?: string[]; + Description?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
*/ - DryRun?: boolean; + AddOperatingRegions?: AddIpamOperatingRegion[]; + + /** + *The operating Regions to remove.
+ */ + RemoveOperatingRegions?: RemoveIpamOperatingRegion[]; } -export namespace RejectTransitGatewayMulticastDomainAssociationsRequest { +export namespace ModifyIpamRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RejectTransitGatewayMulticastDomainAssociationsRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyIpamRequest): any => ({ ...obj, }); } -export interface RejectTransitGatewayMulticastDomainAssociationsResult { +export interface ModifyIpamResult { /** - *Describes the multicast domain associations.
+ *The results of the modification.
*/ - Associations?: TransitGatewayMulticastDomainAssociations; + Ipam?: Ipam; } -export namespace RejectTransitGatewayMulticastDomainAssociationsResult { +export namespace ModifyIpamResult { /** * @internal */ - export const filterSensitiveLog = (obj: RejectTransitGatewayMulticastDomainAssociationsResult): any => ({ + export const filterSensitiveLog = (obj: ModifyIpamResult): any => ({ ...obj, }); } -export interface RejectTransitGatewayPeeringAttachmentRequest { - /** - *The ID of the transit gateway peering attachment.
- */ - TransitGatewayAttachmentId: string | undefined; - +export interface ModifyIpamPoolRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request, + *
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
.
The ID of the IPAM pool you want to modify.
*/ - export const filterSensitiveLog = (obj: RejectTransitGatewayPeeringAttachmentRequest): any => ({ - ...obj, - }); -} + IpamPoolId: string | undefined; -export interface RejectTransitGatewayPeeringAttachmentResult { /** - *The transit gateway peering attachment.
+ *The description of the IPAM pool you want to modify.
*/ - TransitGatewayPeeringAttachment?: TransitGatewayPeeringAttachment; -} + Description?: string; -export namespace RejectTransitGatewayPeeringAttachmentResult { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: RejectTransitGatewayPeeringAttachmentResult): any => ({ - ...obj, - }); -} + AutoImport?: boolean; -export interface RejectTransitGatewayVpcAttachmentRequest { /** - *The ID of the attachment.
+ *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.
*/ - TransitGatewayAttachmentId: string | undefined; + AllocationMinNetmaskLength?: number; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
*/ - DryRun?: boolean; + AllocationMaxNetmaskLength?: number; + + /** + *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.
+ */ + AllocationDefaultNetmaskLength?: number; + + /** + *Clear the default netmask length allocation rule for this pool.
+ */ + ClearAllocationDefaultNetmaskLength?: boolean; + + /** + *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.
+ */ + AddAllocationResourceTags?: RequestIpamResourceTag[]; + + /** + *Remove tag allocation rules from a pool.
+ */ + RemoveAllocationResourceTags?: RequestIpamResourceTag[]; } -export namespace RejectTransitGatewayVpcAttachmentRequest { +export namespace ModifyIpamPoolRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RejectTransitGatewayVpcAttachmentRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyIpamPoolRequest): any => ({ ...obj, }); } -export interface RejectTransitGatewayVpcAttachmentResult { +export interface ModifyIpamPoolResult { /** - *Information about the attachment.
+ *The results of the modification.
*/ - TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment; + IpamPool?: IpamPool; } -export namespace RejectTransitGatewayVpcAttachmentResult { +export namespace ModifyIpamPoolResult { /** * @internal */ - export const filterSensitiveLog = (obj: RejectTransitGatewayVpcAttachmentResult): any => ({ + export const filterSensitiveLog = (obj: ModifyIpamPoolResult): any => ({ ...obj, }); } -export interface RejectVpcEndpointConnectionsRequest { +export interface ModifyIpamResourceCidrRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request, + *
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
.
The ID of the service.
+ *The ID of the resource you want to modify.
*/ - ServiceId: string | undefined; + ResourceId: string | undefined; /** - *The IDs of one or more VPC endpoints.
+ *The CIDR of the resource you want to modify.
*/ - VpcEndpointIds: string[] | undefined; + ResourceCidr: string | undefined; + + /** + *The Amazon Web Services Region of the resource you want to modify.
+ */ + ResourceRegion: string | undefined; + + /** + *The ID of the current scope that the resource CIDR is in.
+ */ + CurrentIpamScopeId: string | undefined; + + /** + *The ID of the scope you want to transfer the resource CIDR to.
+ */ + DestinationIpamScopeId?: string; + + /** + *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.
+ */ + Monitored: boolean | undefined; } -export namespace RejectVpcEndpointConnectionsRequest { +export namespace ModifyIpamResourceCidrRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RejectVpcEndpointConnectionsRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyIpamResourceCidrRequest): any => ({ ...obj, }); } -export interface RejectVpcEndpointConnectionsResult { +export interface ModifyIpamResourceCidrResult { /** - *Information about the endpoints that were not rejected, if applicable.
+ *The CIDR for an IPAM resource.
*/ - Unsuccessful?: UnsuccessfulItem[]; + IpamResourceCidr?: IpamResourceCidr; } -export namespace RejectVpcEndpointConnectionsResult { +export namespace ModifyIpamResourceCidrResult { /** * @internal */ - export const filterSensitiveLog = (obj: RejectVpcEndpointConnectionsResult): any => ({ + export const filterSensitiveLog = (obj: ModifyIpamResourceCidrResult): any => ({ ...obj, }); } -export interface RejectVpcPeeringConnectionRequest { +export interface ModifyIpamScopeRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request, + *
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
.
The ID of the VPC peering connection.
+ *The ID of the scope you want to modify.
*/ - VpcPeeringConnectionId: string | undefined; -} + IpamScopeId: string | undefined; -export namespace RejectVpcPeeringConnectionRequest { + /** + *The description of the scope you want to modify.
+ */ + Description?: string; +} + +export namespace ModifyIpamScopeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RejectVpcPeeringConnectionRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyIpamScopeRequest): any => ({ ...obj, }); } -export interface RejectVpcPeeringConnectionResult { +export interface ModifyIpamScopeResult { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
The results of the modification.
*/ - Return?: boolean; + IpamScope?: IpamScope; } -export namespace RejectVpcPeeringConnectionResult { +export namespace ModifyIpamScopeResult { /** * @internal */ - export const filterSensitiveLog = (obj: RejectVpcPeeringConnectionResult): any => ({ + export const filterSensitiveLog = (obj: ModifyIpamScopeResult): any => ({ ...obj, }); } -export interface ReleaseAddressRequest { +export interface ModifyLaunchTemplateRequest { /** - *[EC2-VPC] The allocation ID. Required for EC2-VPC.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
[EC2-Classic] The Elastic IP address. Required for EC2-Classic.
+ *Unique, case-sensitive identifier you provide to ensure the idempotency of the + * request. For more information, see Ensuring + * Idempotency.
+ *Constraint: Maximum 128 ASCII characters.
*/ - PublicIp?: string; + ClientToken?: string; /** - *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.
The ID of the launch template. You must specify either the launch template ID or + * launch template name in the request.
*/ - NetworkBorderGroup?: string; + LaunchTemplateId?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The name of the launch template. You must specify either the launch template ID or + * launch template name in the request.
*/ - DryRun?: boolean; + LaunchTemplateName?: string; + + /** + *The version number of the launch template to set as the default version.
+ */ + DefaultVersion?: string; } -export namespace ReleaseAddressRequest { +export namespace ModifyLaunchTemplateRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ReleaseAddressRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyLaunchTemplateRequest): any => ({ ...obj, }); } -export interface ReleaseHostsRequest { +export interface ModifyLaunchTemplateResult { /** - *The IDs of the Dedicated Hosts to release.
+ *Information about the launch template.
*/ - HostIds: string[] | undefined; + LaunchTemplate?: LaunchTemplate; } -export namespace ReleaseHostsRequest { +export namespace ModifyLaunchTemplateResult { /** * @internal */ - export const filterSensitiveLog = (obj: ReleaseHostsRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyLaunchTemplateResult): any => ({ ...obj, }); } -export interface ReleaseHostsResult { - /** - *The IDs of the Dedicated Hosts that were successfully released.
- */ - Successful?: string[]; - +/** + *An entry for a prefix list.
+ */ +export interface RemovePrefixListEntry { /** - *The IDs of the Dedicated Hosts that could not be released, including an error - * message.
+ *The CIDR block.
*/ - Unsuccessful?: UnsuccessfulItem[]; + Cidr: string | undefined; } -export namespace ReleaseHostsResult { +export namespace RemovePrefixListEntry { /** * @internal */ - export const filterSensitiveLog = (obj: ReleaseHostsResult): any => ({ + export const filterSensitiveLog = (obj: RemovePrefixListEntry): any => ({ ...obj, }); } -export interface ReplaceIamInstanceProfileAssociationRequest { - /** - *The IAM instance profile.
- */ - IamInstanceProfile: IamInstanceProfileSpecification | undefined; - +export interface ModifyManagedPrefixListRequest { /** - *The ID of the existing IAM instance profile association.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the prefix list.
*/ - export const filterSensitiveLog = (obj: ReplaceIamInstanceProfileAssociationRequest): any => ({ - ...obj, - }); -} + PrefixListId: string | undefined; -export interface ReplaceIamInstanceProfileAssociationResult { /** - *Information about the IAM instance profile association.
+ *The current version of the prefix list.
*/ - IamInstanceProfileAssociation?: IamInstanceProfileAssociation; -} + CurrentVersion?: number; -export namespace ReplaceIamInstanceProfileAssociationResult { /** - * @internal + *A name for the prefix list.
*/ - export const filterSensitiveLog = (obj: ReplaceIamInstanceProfileAssociationResult): any => ({ - ...obj, - }); -} + PrefixListName?: string; -export interface ReplaceNetworkAclAssociationRequest { /** - *The ID of the current association between the original network ACL and the subnet.
+ *One or more entries to add to the prefix list.
*/ - AssociationId: string | undefined; + AddEntries?: AddPrefixListEntry[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
One or more entries to remove from the prefix list.
*/ - DryRun?: boolean; + RemoveEntries?: RemovePrefixListEntry[]; /** - *The ID of the new network ACL to associate with the subnet.
+ *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.
*/ - NetworkAclId: string | undefined; + MaxEntries?: number; } -export namespace ReplaceNetworkAclAssociationRequest { +export namespace ModifyManagedPrefixListRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ReplaceNetworkAclAssociationRequest): any => ({ + export const filterSensitiveLog = (obj: ModifyManagedPrefixListRequest): any => ({ ...obj, }); } -export interface ReplaceNetworkAclAssociationResult { +export interface ModifyManagedPrefixListResult { /** - *The ID of the new association.
+ *Information about the prefix list.
*/ - NewAssociationId?: string; + PrefixList?: ManagedPrefixList; } -export namespace ReplaceNetworkAclAssociationResult { +export namespace ModifyManagedPrefixListResult { /** * @internal */ - export const filterSensitiveLog = (obj: ReplaceNetworkAclAssociationResult): any => ({ + export const filterSensitiveLog = (obj: ModifyManagedPrefixListResult): any => ({ ...obj, }); } -export interface ReplaceNetworkAclEntryRequest { - /** - *The IPv4 network range to allow or deny, in CIDR notation (for example
- * 172.16.0.0/24
).
Describes an attachment change.
+ */ +export interface NetworkInterfaceAttachmentChanges { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the network interface attachment.
*/ - DryRun?: boolean; + AttachmentId?: string; /** - *Indicates whether to replace the egress rule.
- *Default: If no value is specified, we replace the ingress rule.
+ *Indicates whether the network interface is deleted when the instance is terminated.
*/ - Egress: boolean | undefined; + DeleteOnTermination?: boolean; +} +export namespace NetworkInterfaceAttachmentChanges { /** - *ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol - * 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.
+ * @internal */ - IcmpTypeCode?: IcmpTypeCode; + export const filterSensitiveLog = (obj: NetworkInterfaceAttachmentChanges): any => ({ + ...obj, + }); +} +/** + *Contains the parameters for ModifyNetworkInterfaceAttribute.
+ */ +export interface ModifyNetworkInterfaceAttributeRequest { /** - *The IPv6 network range to allow or deny, in CIDR notation (for example
- * 2001:bd8:1234:1a00::/64
).
Information about the interface attachment. If modifying the 'delete on termination' attribute, you must specify the ID of the interface attachment.
*/ - Ipv6CidrBlock?: string; + Attachment?: NetworkInterfaceAttachmentChanges; /** - *The ID of the ACL.
+ *A description for the network interface.
*/ - NetworkAclId: string | undefined; + Description?: AttributeValue; /** - *TCP or UDP protocols: The range of ports the rule applies to. - * Required if specifying protocol 6 (TCP) or 17 (UDP).
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
+ *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.
*/ - Protocol: string | undefined; + Groups?: string[]; /** - *Indicates whether to allow or deny the traffic that matches the rule.
+ *The ID of the network interface.
*/ - RuleAction: RuleAction | string | undefined; + NetworkInterfaceId: string | undefined; /** - *The rule number of the entry to replace.
+ *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.
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.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
+ *The ID of the instance.
*/ - DestinationIpv6CidrBlock?: string; + InstanceId?: string; /** - *The ID of the prefix list for the route.
+ *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.
*/ - DestinationPrefixListId?: string; + PrivateDnsHostnameType?: HostnameType | string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
*/ - DryRun?: boolean; + EnableResourceNameDnsARecord?: boolean; /** - *The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.
+ *Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
*/ - VpcEndpointId?: string; + EnableResourceNameDnsAAAARecord?: boolean; +} +export namespace ModifyPrivateDnsNameOptionsRequest { /** - *[IPv6 traffic only] The ID of an egress-only internet gateway.
+ * @internal */ - EgressOnlyInternetGatewayId?: string; + export const filterSensitiveLog = (obj: ModifyPrivateDnsNameOptionsRequest): any => ({ + ...obj, + }); +} +export interface ModifyPrivateDnsNameOptionsResult { /** - *The ID of an internet gateway or virtual private gateway.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
The ID of a NAT instance in your VPC.
+ * @internal */ - InstanceId?: string; + export const filterSensitiveLog = (obj: ModifyPrivateDnsNameOptionsResult): any => ({ + ...obj, + }); +} +/** + *Contains the parameters for ModifyReservedInstances.
+ */ +export interface ModifyReservedInstancesRequest { /** - *Specifies whether to reset the local route to its default target (local
).
The IDs of the Reserved Instances to modify.
*/ - LocalTarget?: boolean; + ReservedInstancesIds: string[] | undefined; /** - *[IPv4 traffic only] The ID of a NAT gateway.
+ *A unique, case-sensitive token you provide to ensure idempotency of your modification request. For more information, see + * Ensuring Idempotency.
*/ - NatGatewayId?: string; + ClientToken?: string; /** - *The ID of a transit gateway.
+ *The configuration settings for the Reserved Instances to modify.
*/ - TransitGatewayId?: string; + TargetConfigurations: ReservedInstancesConfiguration[] | undefined; +} +export namespace ModifyReservedInstancesRequest { /** - *The ID of the local gateway.
+ * @internal */ - LocalGatewayId?: string; + export const filterSensitiveLog = (obj: ModifyReservedInstancesRequest): any => ({ + ...obj, + }); +} +/** + *Contains the output of ModifyReservedInstances.
+ */ +export interface ModifyReservedInstancesResult { /** - *[IPv4 traffic only] The ID of a carrier gateway.
+ *The ID for the modification.
*/ - CarrierGatewayId?: string; + ReservedInstancesModificationId?: string; +} +export namespace ModifyReservedInstancesResult { /** - *The ID of a network interface.
+ * @internal */ - NetworkInterfaceId?: string; + export const filterSensitiveLog = (obj: ModifyReservedInstancesResult): any => ({ + ...obj, + }); +} +/** + *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.
The ID of the route table.
+ *The IP protocol name (tcp
, udp
, icmp
,
+ * icmpv6
) or number (see Protocol Numbers).
Use -1
to specify all protocols.
The ID of a VPC peering connection.
+ *The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.
*/ - VpcPeeringConnectionId?: string; + FromPort?: number; /** - *The Amazon Resource Name (ARN) of the core network.
+ *The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1
indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
The IPv4 CIDR range. To specify a single IPv4 address, use the /32 prefix length.
*/ - export const filterSensitiveLog = (obj: ReplaceRouteRequest): any => ({ - ...obj, - }); -} + CidrIpv4?: string; -export interface ReplaceRouteTableAssociationRequest { /** - *The association ID.
+ *The IPv6 CIDR range. To specify a single IPv6 address, use the /128 prefix length.
*/ - AssociationId: string | undefined; + CidrIpv6?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the prefix list.
*/ - DryRun?: boolean; + PrefixListId?: string; /** - *The ID of the new route table to associate with the subnet.
+ *The ID of the security group that is referenced in the security group rule.
*/ - RouteTableId: string | undefined; + ReferencedGroupId?: string; + + /** + *The description of the security group rule.
+ */ + Description?: string; } -export namespace ReplaceRouteTableAssociationRequest { +export namespace SecurityGroupRuleRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ReplaceRouteTableAssociationRequest): any => ({ + export const filterSensitiveLog = (obj: SecurityGroupRuleRequest): any => ({ ...obj, }); } -export interface ReplaceRouteTableAssociationResult { +/** + *Describes an update to a security group rule.
+ */ +export interface SecurityGroupRuleUpdate { /** - *The ID of the new association.
+ *The ID of the security group rule.
*/ - NewAssociationId?: string; + SecurityGroupRuleId?: string; /** - *The state of the association.
+ *Information about the security group rule.
*/ - AssociationState?: RouteTableAssociationState; + SecurityGroupRule?: SecurityGroupRuleRequest; } -export namespace ReplaceRouteTableAssociationResult { +export namespace SecurityGroupRuleUpdate { /** * @internal */ - export const filterSensitiveLog = (obj: ReplaceRouteTableAssociationResult): any => ({ + export const filterSensitiveLog = (obj: SecurityGroupRuleUpdate): any => ({ ...obj, }); } -export interface ReplaceTransitGatewayRouteRequest { +export interface ModifySecurityGroupRulesRequest { /** - *The CIDR range used for the destination match. Routing decisions are based on the most specific match.
+ *The ID of the security group.
*/ - DestinationCidrBlock: string | undefined; + GroupId: string | undefined; /** - *The ID of the route table.
+ *Information about the security group properties to update.
*/ - TransitGatewayRouteTableId: string | undefined; + SecurityGroupRules: SecurityGroupRuleUpdate[] | undefined; /** - *The ID of the attachment.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Indicates whether traffic matching this route is to be dropped.
+ * @internal */ - Blackhole?: boolean; + export const filterSensitiveLog = (obj: ModifySecurityGroupRulesRequest): any => ({ + ...obj, + }); +} +export interface ModifySecurityGroupRulesResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Returns true
if the request succeeds; otherwise, returns an error.
Describes modifications to the list of create volume permissions for a volume.
+ */ +export interface CreateVolumePermissionModifications { /** - *Information about the modified route.
+ *Adds the specified Amazon Web Services account ID or group to the list.
*/ - Route?: TransitGatewayRoute; + Add?: CreateVolumePermission[]; + + /** + *Removes the specified Amazon Web Services account ID or group from the list.
+ */ + Remove?: CreateVolumePermission[]; } -export namespace ReplaceTransitGatewayRouteResult { +export namespace CreateVolumePermissionModifications { /** * @internal */ - export const filterSensitiveLog = (obj: ReplaceTransitGatewayRouteResult): any => ({ + export const filterSensitiveLog = (obj: CreateVolumePermissionModifications): any => ({ ...obj, }); } -export type ReportInstanceReasonCodes = - | "instance-stuck-in-state" - | "not-accepting-credentials" - | "other" - | "password-not-available" - | "performance-ebs-volume" - | "performance-instance-store" - | "performance-network" - | "performance-other" - | "unresponsive"; +export interface ModifySnapshotAttributeRequest { + /** + *The snapshot attribute to modify. Only volume creation permissions can be modified.
+ */ + Attribute?: SnapshotAttributeName | string; -export type ReportStatusType = "impaired" | "ok"; + /** + *A JSON representation of the snapshot attribute modification.
+ */ + CreateVolumePermission?: CreateVolumePermissionModifications; -export interface ReportInstanceStatusRequest { /** - *Descriptive text about the health state of your instance.
+ *The group to modify for the snapshot.
*/ - Description?: string; + GroupNames?: string[]; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The type of operation to perform to the attribute.
*/ - DryRun?: boolean; + OperationType?: OperationType | string; /** - *The time at which the reported instance health state ended.
+ *The ID of the snapshot.
*/ - EndTime?: Date; + SnapshotId: string | undefined; /** - *The instances.
+ *The account ID to modify for the snapshot.
*/ - Instances: string[] | undefined; + UserIds?: string[]; /** - *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]
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The time at which the reported instance health state began.
+ * @internal */ - StartTime?: Date; + export const filterSensitiveLog = (obj: ModifySnapshotAttributeRequest): any => ({ + ...obj, + }); +} + +export enum TargetStorageTier { + archive = "archive", +} + +export interface ModifySnapshotTierRequest { + /** + *The ID of the snapshot.
+ */ + SnapshotId: string | undefined; /** - *The status of all instances listed.
+ *The name of the storage tier. You must specify archive
.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Contains the parameters for RequestSpotFleet.
- */ -export interface RequestSpotFleetRequest { +export interface ModifySnapshotTierResult { /** - *Checks whether you have the required permissions for the action, without actually
- * making the request, and provides an error response. If you have the required
- * permissions, the error response is DryRunOperation
. Otherwise, it is
- * UnauthorizedOperation
.
The ID of the snapshot.
*/ - DryRun?: boolean; + SnapshotId?: string; /** - *The configuration for the Spot Fleet request.
+ *The date and time when the archive process was started.
*/ - SpotFleetRequestConfig: SpotFleetRequestConfigData | undefined; + TieringStartTime?: Date; } -export namespace RequestSpotFleetRequest { +export namespace ModifySnapshotTierResult { /** * @internal */ - export const filterSensitiveLog = (obj: RequestSpotFleetRequest): any => ({ + export const filterSensitiveLog = (obj: ModifySnapshotTierResult): any => ({ ...obj, }); } /** - *Contains the output of RequestSpotFleet.
+ *Contains the parameters for ModifySpotFleetRequest.
*/ -export interface RequestSpotFleetResponse { +export interface ModifySpotFleetRequestRequest { + /** + *Indicates whether running Spot Instances should be terminated if the target capacity + * of the Spot Fleet request is decreased below the current size of the Spot Fleet.
+ */ + ExcessCapacityTerminationPolicy?: ExcessCapacityTerminationPolicy | string; + + /** + *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.
The ID of the Spot Fleet request.
*/ - SpotFleetRequestId?: string; + SpotFleetRequestId: string | undefined; + + /** + *The size of the fleet.
+ */ + TargetCapacity?: number; + + /** + *The number of On-Demand Instances in the fleet.
+ */ + OnDemandTargetCapacity?: number; + + /** + *Reserved.
+ */ + Context?: string; } -export namespace RequestSpotFleetResponse { +export namespace ModifySpotFleetRequestRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RequestSpotFleetResponse): any => ({ + export const filterSensitiveLog = (obj: ModifySpotFleetRequestRequest): any => ({ ...obj, }); } /** - *Describes the launch specification for an instance.
+ *Contains the output of ModifySpotFleetRequest.
*/ -export interface RequestSpotLaunchSpecification { +export interface ModifySpotFleetRequestResponse { /** - *One or more security group IDs.
+ *Is true
if the request succeeds, and an error otherwise.
One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
+ * @internal */ - SecurityGroups?: string[]; + export const filterSensitiveLog = (obj: ModifySpotFleetRequestResponse): any => ({ + ...obj, + }); +} +export interface ModifySubnetAttributeRequest { /** - *Deprecated.
+ *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.
One or more 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.
+ *Specify true
to indicate that network interfaces attached to instances created in the
+ * specified subnet should be assigned a public IPv4 address.
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
- *
The ID of the subnet.
*/ - EbsOptimized?: boolean; + SubnetId: string | undefined; /** - *The IAM instance profile.
+ *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
.
The ID of the AMI.
+ *The customer-owned IPv4 address pool associated with the subnet.
+ *You must set this value when you specify true
for MapCustomerOwnedIpOnLaunch
.
The instance type.
+ *Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this subnet + * should return synthetic IPv6 addresses for IPv4-only destinations.
*/ - InstanceType?: _InstanceType | string; + EnableDns64?: AttributeBooleanValue; /** - *The ID of the kernel.
+ *The type of hostnames to assign to instances in the subnet at launch. 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.
*/ - KernelId?: string; + PrivateDnsHostnameTypeOnLaunch?: HostnameType | string; /** - *The name of the key pair.
+ *Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
*/ - KeyName?: string; + EnableResourceNameDnsARecordOnLaunch?: AttributeBooleanValue; /** - *Indicates whether basic or detailed monitoring is enabled for the instance.
- *Default: Disabled
+ *Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
*/ - Monitoring?: RunInstancesMonitoringEnabled; + EnableResourceNameDnsAAAARecordOnLaunch?: AttributeBooleanValue; /** - *One or more network interfaces. If you specify a network interface, you must specify - * subnet IDs and security group IDs using the network interface.
+ *
+ * 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).
+ *
The placement information for the instance.
+ *
+ * Specify true
to indicate that local network interfaces at the current
+ * position should be disabled.
+ *
The ID of the RAM disk.
+ * @internal */ - RamdiskId?: string; + export const filterSensitiveLog = (obj: ModifySubnetAttributeRequest): any => ({ + ...obj, + }); +} +export interface ModifyTrafficMirrorFilterNetworkServicesRequest { /** - *The ID of the subnet in which to launch the instance.
+ *The ID of the Traffic Mirror filter.
*/ - SubnetId?: string; + TrafficMirrorFilterId: string | undefined; /** - *The Base64-encoded user data for the instance. User data is limited to 16 KB.
+ *The network service, for example Amazon DNS, that you want to mirror.
*/ - UserData?: string; -} + AddNetworkServices?: (TrafficMirrorNetworkService | string)[]; -export namespace RequestSpotLaunchSpecification { /** - * @internal + *The network service, for example Amazon DNS, that you no longer want to mirror.
*/ - export const filterSensitiveLog = (obj: RequestSpotLaunchSpecification): any => ({ - ...obj, - }); -} + RemoveNetworkServices?: (TrafficMirrorNetworkService | string)[]; -/** - *Contains the parameters for RequestSpotInstances.
- */ -export interface RequestSpotInstancesRequest { /** - *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.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The Traffic Mirror filter that the network service is associated with.
+ */ + TrafficMirrorFilter?: TrafficMirrorFilter; +} + +export namespace ModifyTrafficMirrorFilterNetworkServicesResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyTrafficMirrorFilterNetworkServicesResult): any => ({ + ...obj, + }); +} + +export type TrafficMirrorFilterRuleField = "description" | "destination-port-range" | "protocol" | "source-port-range"; + +export interface ModifyTrafficMirrorFilterRuleRequest { + /** + *The ID of the Traffic Mirror rule.
+ */ + TrafficMirrorFilterRuleId: string | undefined; + + /** + *The type of traffic to assign to the rule.
+ */ + TrafficDirection?: TrafficDirection | string; + + /** + *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.
+ */ + RuleNumber?: number; + + /** + *The action to assign to the rule.
+ */ + RuleAction?: TrafficMirrorRuleAction | string; + + /** + *The destination ports that are associated with the Traffic Mirror rule.
+ */ + DestinationPortRange?: TrafficMirrorPortRangeRequest; + + /** + *The port range to assign to the Traffic Mirror rule.
+ */ + SourcePortRange?: TrafficMirrorPortRangeRequest; + + /** + *The protocol, for example TCP, to assign to the Traffic Mirror rule.
+ */ + Protocol?: number; + + /** + *The destination CIDR block to assign to the Traffic Mirror rule.
+ */ + DestinationCidrBlock?: string; + + /** + *The source CIDR block to assign to the Traffic Mirror rule.
+ */ + SourceCidrBlock?: string; + + /** + *The description to assign to the Traffic Mirror rule.
+ */ + Description?: string; + + /** + *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.
+ */ + RemoveFields?: (TrafficMirrorFilterRuleField | string)[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Modifies a Traffic Mirror rule.
+ */ + TrafficMirrorFilterRule?: TrafficMirrorFilterRule; +} + +export namespace ModifyTrafficMirrorFilterRuleResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyTrafficMirrorFilterRuleResult): any => ({ + ...obj, + }); +} + +export type TrafficMirrorSessionField = "description" | "packet-length" | "virtual-network-id"; + +export interface ModifyTrafficMirrorSessionRequest { + /** + *The ID of the Traffic Mirror session.
+ */ + TrafficMirrorSessionId: string | undefined; + + /** + *The Traffic Mirror target. The target must be in the same VPC as the source, or have a VPC peering connection with the source.
+ */ + TrafficMirrorTargetId?: string; + + /** + *The ID of the Traffic Mirror filter.
+ */ + TrafficMirrorFilterId?: string; + + /** + *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.
+ */ + PacketLength?: number; + + /** + *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.
+ */ + SessionNumber?: number; + + /** + *The virtual network ID of the Traffic Mirror session.
+ */ + VirtualNetworkId?: number; + + /** + *The description to assign to the Traffic Mirror session.
+ */ + Description?: string; + + /** + *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.
+ */ + RemoveFields?: (TrafficMirrorSessionField | string)[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the Traffic Mirror session.
+ */ + TrafficMirrorSession?: TrafficMirrorSession; +} + +export namespace ModifyTrafficMirrorSessionResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyTrafficMirrorSessionResult): any => ({ + ...obj, + }); +} + +/** + *The transit gateway options.
+ */ +export interface ModifyTransitGatewayOptions { + /** + *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.
+ */ + AddTransitGatewayCidrBlocks?: string[]; + + /** + *Removes CIDR blocks for the transit gateway.
+ */ + RemoveTransitGatewayCidrBlocks?: string[]; + + /** + *Enable or disable Equal Cost Multipath Protocol support.
+ */ + VpnEcmpSupport?: VpnEcmpSupportValue | string; + + /** + *Enable or disable DNS support.
+ */ + DnsSupport?: DnsSupportValue | string; + + /** + *Enable or disable automatic acceptance of attachment requests.
+ */ + AutoAcceptSharedAttachments?: AutoAcceptSharedAttachmentsValue | string; + + /** + *Enable or disable automatic association with the default association route table.
+ */ + DefaultRouteTableAssociation?: DefaultRouteTableAssociationValue | string; + + /** + *The ID of the default association route table.
+ */ + AssociationDefaultRouteTableId?: string; + + /** + *Enable or disable automatic propagation of routes to the default propagation route table.
+ */ + DefaultRouteTablePropagation?: DefaultRouteTablePropagationValue | string; + + /** + *The ID of the default propagation route table.
+ */ + PropagationDefaultRouteTableId?: string; +} + +export namespace ModifyTransitGatewayOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyTransitGatewayOptions): any => ({ + ...obj, + }); +} + +export interface ModifyTransitGatewayRequest { + /** + *The ID of the transit gateway.
+ */ + TransitGatewayId: string | undefined; + + /** + *The description for the transit gateway.
+ */ + Description?: string; + + /** + *The options to modify.
+ */ + Options?: ModifyTransitGatewayOptions; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes a transit gateway.
+ */ + TransitGateway?: TransitGateway; +} + +export namespace ModifyTransitGatewayResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyTransitGatewayResult): any => ({ + ...obj, + }); +} + +export interface ModifyTransitGatewayPrefixListReferenceRequest { + /** + *The ID of the transit gateway route table.
+ */ + TransitGatewayRouteTableId: string | undefined; + + /** + *The ID of the prefix list.
+ */ + PrefixListId: string | undefined; + + /** + *The ID of the attachment to which traffic is routed.
+ */ + TransitGatewayAttachmentId?: string; + + /** + *Indicates whether to drop traffic that matches this route.
+ */ + Blackhole?: boolean; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the prefix list reference.
+ */ + TransitGatewayPrefixListReference?: TransitGatewayPrefixListReference; +} + +export namespace ModifyTransitGatewayPrefixListReferenceResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyTransitGatewayPrefixListReferenceResult): any => ({ + ...obj, + }); +} + +/** + *Describes the options for a VPC attachment.
+ */ +export interface ModifyTransitGatewayVpcAttachmentRequestOptions { + /** + *Enable or disable DNS support. The default is enable
.
Enable or disable IPv6 support. The default is enable
.
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
.
The ID of the attachment.
+ */ + TransitGatewayAttachmentId: string | undefined; + + /** + *The IDs of one or more subnets to add. You can specify at most one subnet per Availability Zone.
+ */ + AddSubnetIds?: string[]; + + /** + *The IDs of one or more subnets to remove.
+ */ + RemoveSubnetIds?: string[]; + + /** + *The new VPC attachment options.
+ */ + Options?: ModifyTransitGatewayVpcAttachmentRequestOptions; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the modified attachment.
+ */ + TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment; +} + +export namespace ModifyTransitGatewayVpcAttachmentResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyTransitGatewayVpcAttachmentResult): any => ({ + ...obj, + }); +} + +export interface ModifyVolumeRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the volume.
+ */ + VolumeId: string | undefined; + + /** + *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.
+ */ + Size?: number; + + /** + *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.
+ */ + VolumeType?: VolumeType | string; + + /** + *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.
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.
+ */ + Throughput?: number; + + /** + *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.
Information about the volume modification.
+ */ + VolumeModification?: VolumeModification; +} + +export namespace ModifyVolumeResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyVolumeResult): any => ({ + ...obj, + }); +} + +export interface ModifyVolumeAttributeRequest { + /** + *Indicates whether the volume should be auto-enabled for I/O operations.
+ */ + AutoEnableIO?: AttributeBooleanValue; + + /** + *The ID of the volume.
+ */ + VolumeId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
+ */ + EnableDnsHostnames?: AttributeBooleanValue; + + /** + *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.
+ */ + EnableDnsSupport?: AttributeBooleanValue; + + /** + *The ID of the VPC.
+ */ + VpcId: string | undefined; +} + +export namespace ModifyVpcAttributeRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyVpcAttributeRequest): any => ({ + ...obj, + }); +} + +/** + *Contains the parameters for ModifyVpcEndpoint.
+ */ +export interface ModifyVpcEndpointRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the endpoint.
+ */ + VpcEndpointId: string | undefined; + + /** + *(Gateway endpoint) Specify true
to reset the policy document to the
+ * default policy. The default policy allows full access to the service.
(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.
+ */ + PolicyDocument?: string; + + /** + *(Gateway endpoint) One or more route tables IDs to associate with the endpoint.
+ */ + AddRouteTableIds?: string[]; + + /** + *(Gateway endpoint) One or more route table IDs to disassociate from the endpoint.
+ */ + RemoveRouteTableIds?: string[]; + + /** + *(Interface and Gateway Load Balancer endpoints) One or more subnet IDs in which to serve the endpoint. For a Gateway Load Balancer endpoint, you can specify only one subnet.
+ */ + AddSubnetIds?: string[]; + + /** + *(Interface endpoint) One or more subnets IDs in which to remove the endpoint.
+ */ + RemoveSubnetIds?: string[]; + + /** + *(Interface endpoint) One or more security group IDs to associate with the network interface.
+ */ + AddSecurityGroupIds?: string[]; + + /** + *(Interface endpoint) One or more security group IDs to disassociate from the network interface.
+ */ + RemoveSecurityGroupIds?: string[]; + + /** + *(Interface endpoint) Indicates whether a private hosted zone is associated with the + * VPC.
+ */ + PrivateDnsEnabled?: boolean; +} + +export namespace ModifyVpcEndpointRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyVpcEndpointRequest): any => ({ + ...obj, + }); +} + +export interface ModifyVpcEndpointResult { + /** + *Returns true
if the request succeeds; otherwise, it returns an error.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the notification.
+ */ + ConnectionNotificationId: string | undefined; + + /** + *The ARN for the SNS topic for the notification.
+ */ + ConnectionNotificationArn?: string; + + /** + *One or more events for the endpoint. Valid values are Accept
,
+ * Connect
, Delete
, and Reject
.
Returns true
if the request succeeds; otherwise, it returns an error.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the service.
+ */ + ServiceId: string | undefined; + + /** + *(Interface endpoint configuration) The private DNS name to assign to the endpoint service.
+ */ + PrivateDnsName?: string; + + /** + *(Interface endpoint configuration) Removes the private DNS name of the endpoint service.
+ */ + RemovePrivateDnsName?: boolean; + + /** + *Indicates whether requests to create an endpoint to your service must be accepted.
+ */ + AcceptanceRequired?: boolean; + + /** + *The Amazon Resource Names (ARNs) of Network Load Balancers to add to your service + * configuration.
+ */ + AddNetworkLoadBalancerArns?: string[]; + + /** + *The Amazon Resource Names (ARNs) of Network Load Balancers to remove from your service + * configuration.
+ */ + RemoveNetworkLoadBalancerArns?: string[]; + + /** + *The Amazon Resource Names (ARNs) of Gateway Load Balancers to add to your service + * configuration.
+ */ + AddGatewayLoadBalancerArns?: string[]; + + /** + *The Amazon Resource Names (ARNs) of Gateway Load Balancers to remove from your service + * configuration.
+ */ + RemoveGatewayLoadBalancerArns?: string[]; +} + +export namespace ModifyVpcEndpointServiceConfigurationRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyVpcEndpointServiceConfigurationRequest): any => ({ + ...obj, + }); +} + +export interface ModifyVpcEndpointServiceConfigurationResult { + /** + *Returns true
if the request succeeds; otherwise, it returns an error.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the service.
+ */ + ServiceId: string | undefined; + + /** + *The Amazon Resource Names (ARN) of one or more principals. + * Permissions are granted to the principals in this list. + * To grant permissions to all principals, specify an asterisk (*).
+ */ + AddAllowedPrincipals?: string[]; + + /** + *The Amazon Resource Names (ARN) of one or more principals. + * Permissions are revoked for principals in this list.
+ */ + RemoveAllowedPrincipals?: string[]; +} + +export namespace ModifyVpcEndpointServicePermissionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyVpcEndpointServicePermissionsRequest): any => ({ + ...obj, + }); +} + +export interface ModifyVpcEndpointServicePermissionsResult { + /** + *Returns true
if the request succeeds; otherwise, it returns an error.
The VPC peering connection options.
+ */ +export interface PeeringConnectionOptionsRequest { + /** + *If true, enables a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.
+ */ + AllowDnsResolutionFromRemoteVpc?: boolean; + + /** + *If true, enables outbound communication from an EC2-Classic instance that's linked to + * a local VPC using ClassicLink to instances in a peer VPC.
+ */ + AllowEgressFromLocalClassicLinkToRemoteVpc?: boolean; + + /** + *If true, enables outbound communication from instances in a local VPC to an + * EC2-Classic instance that's linked to a peer VPC using ClassicLink.
+ */ + AllowEgressFromLocalVpcToRemoteClassicLink?: boolean; +} + +export namespace PeeringConnectionOptionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PeeringConnectionOptionsRequest): any => ({ + ...obj, + }); +} + +export interface ModifyVpcPeeringConnectionOptionsRequest { + /** + *The VPC peering connection options for the accepter VPC.
+ */ + AccepterPeeringConnectionOptions?: PeeringConnectionOptionsRequest; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The VPC peering connection options for the requester VPC.
+ */ + RequesterPeeringConnectionOptions?: PeeringConnectionOptionsRequest; + + /** + *The ID of the VPC peering connection.
+ */ + VpcPeeringConnectionId: string | undefined; +} + +export namespace ModifyVpcPeeringConnectionOptionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyVpcPeeringConnectionOptionsRequest): any => ({ + ...obj, + }); +} + +/** + *Describes the VPC peering connection options.
+ */ +export interface PeeringConnectionOptions { + /** + *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.
+ */ + AllowDnsResolutionFromRemoteVpc?: boolean; + + /** + *If true, enables outbound communication from an EC2-Classic instance that's linked to + * a local VPC using ClassicLink to instances in a peer VPC.
+ */ + AllowEgressFromLocalClassicLinkToRemoteVpc?: boolean; + + /** + *If true, enables outbound communication from instances in a local VPC to an + * EC2-Classic instance that's linked to a peer VPC using ClassicLink.
+ */ + AllowEgressFromLocalVpcToRemoteClassicLink?: boolean; +} + +export namespace PeeringConnectionOptions { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PeeringConnectionOptions): any => ({ + ...obj, + }); +} + +export interface ModifyVpcPeeringConnectionOptionsResult { + /** + *Information about the VPC peering connection options for the accepter VPC.
+ */ + AccepterPeeringConnectionOptions?: PeeringConnectionOptions; + + /** + *Information about the VPC peering connection options for the requester VPC.
+ */ + RequesterPeeringConnectionOptions?: PeeringConnectionOptions; +} + +export namespace ModifyVpcPeeringConnectionOptionsResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyVpcPeeringConnectionOptionsResult): any => ({ + ...obj, + }); +} + +export type VpcTenancy = "default"; + +export interface ModifyVpcTenancyRequest { + /** + *The ID of the VPC.
+ */ + VpcId: string | undefined; + + /** + *The instance tenancy attribute for the VPC.
+ */ + InstanceTenancy: VpcTenancy | string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Returns true
if the request succeeds; otherwise, returns an
+ * error.
The ID of the VPN connection.
+ */ + VpnConnectionId: string | undefined; + + /** + *The ID of the transit gateway.
+ */ + TransitGatewayId?: string; + + /** + *The ID of the customer gateway at your end of the VPN connection.
+ */ + CustomerGatewayId?: string; + + /** + *The ID of the virtual private gateway at the Amazon Web Services side of the VPN + * connection.
+ */ + VpnGatewayId?: string; + + /** + *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
Describes a VPN connection.
+ */ + VpnConnection?: VpnConnection; +} + +export namespace ModifyVpnConnectionResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyVpnConnectionResult): any => ({ + ...obj, + }); +} + +export interface ModifyVpnConnectionOptionsRequest { + /** + *The ID of the Site-to-Site VPN connection.
+ */ + VpnConnectionId: string | undefined; + + /** + *The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
+ *Default: 0.0.0.0/0
+ *
The IPv4 CIDR on the Amazon Web Services side of the VPN connection.
+ *Default: 0.0.0.0/0
+ *
The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
+ *Default: ::/0
+ *
The IPv6 CIDR on the Amazon Web Services side of the VPN connection.
+ *Default: ::/0
+ *
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Describes a VPN connection.
+ */ + VpnConnection?: VpnConnection; +} + +export namespace ModifyVpnConnectionOptionsResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyVpnConnectionOptionsResult): any => ({ + ...obj, + }); +} + +export interface ModifyVpnTunnelCertificateRequest { + /** + *The ID of the Amazon Web Services Site-to-Site VPN connection.
+ */ + VpnConnectionId: string | undefined; + + /** + *The external IP address of the VPN tunnel.
+ */ + VpnTunnelOutsideIpAddress: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
Describes a VPN connection.
+ */ + VpnConnection?: VpnConnection; +} + +export namespace ModifyVpnTunnelCertificateResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ModifyVpnTunnelCertificateResult): any => ({ + ...obj, + }); +} + +/** + *The Amazon Web Services Site-to-Site VPN tunnel options to modify.
+ */ +export interface ModifyVpnTunnelOptionsSpecification { + /** + *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
+ *
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.
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).
+ */ + PreSharedKey?: string; + + /** + *The lifetime for phase 1 of the IKE negotiation, in seconds.
+ *Constraints: A value between 900 and 28,800.
+ *Default: 28800
+ *
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
+ *
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
+ *
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
+ *
The number of packets in an IKE replay window.
+ *Constraints: A value between 64 and 2048.
+ *Default: 1024
+ *
The number of seconds after which a DPD timeout occurs.
+ *Constraints: A value between 0 and 30.
+ *Default: 30
+ *
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
+ *
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
+ *
Deprecated.
+ *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
+ *
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.
+ *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
+ *
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
+ *
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
+ *
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
+ *
The IKE versions that are permitted for the VPN tunnel.
+ *Valid values: ikev1
| ikev2
+ *
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
+ *
The ID of the Amazon Web Services Site-to-Site VPN connection.
+ */ + VpnConnectionId: string | undefined; + + /** + *The external IP address of the VPN tunnel.
+ */ + VpnTunnelOutsideIpAddress: string | undefined; + + /** + *The tunnel options to modify.
+ */ + TunnelOptions: ModifyVpnTunnelOptionsSpecification | undefined; /** *Checks whether you have the required permissions for the action, without actually
@@ -5041,119 +6787,246 @@ export interface RequestSpotInstancesRequest {
* UnauthorizedOperation
.
The maximum number of Spot Instances to launch.
- *Default: 1
+ * @internal */ - InstanceCount?: number; + export const filterSensitiveLog = (obj: ModifyVpnTunnelOptionsRequest): any => ({ + ...obj, + }); +} +export interface ModifyVpnTunnelOptionsResult { /** - *The instance launch group. Launch groups are Spot Instances that launch together and - * terminate together.
- *Default: Instances are launched and terminated individually
+ *Describes a VPN connection.
*/ - LaunchGroup?: string; + VpnConnection?: VpnConnection; +} +export namespace ModifyVpnTunnelOptionsResult { /** - *The launch specification.
+ * @internal */ - LaunchSpecification?: RequestSpotLaunchSpecification; + export const filterSensitiveLog = (obj: ModifyVpnTunnelOptionsResult): any => ({ + ...obj, + }); +} +export interface MonitorInstancesRequest { /** - *The maximum price per hour that you are willing to pay for a Spot Instance. The - * default is the On-Demand price.
+ *The IDs of the instances.
*/ - SpotPrice?: string; + InstanceIds: string[] | undefined; /** - *The Spot Instance request type.
- *Default: one-time
- *
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
+ * @internal */ - ValidFrom?: Date; + export const filterSensitiveLog = (obj: MonitorInstancesRequest): any => ({ + ...obj, + }); +} +/** + *Describes the monitoring of an instance.
+ */ +export interface InstanceMonitoring { /** - *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.
The ID of the instance.
+ */ + InstanceId?: string; + + /** + *The monitoring for the instance.
+ */ + Monitoring?: Monitoring; +} + +export namespace InstanceMonitoring { + /** + * @internal + */ + export const filterSensitiveLog = (obj: InstanceMonitoring): any => ({ + ...obj, + }); +} + +export interface MonitorInstancesResult { + /** + *The monitoring information.
+ */ + InstanceMonitorings?: InstanceMonitoring[]; +} + +export namespace MonitorInstancesResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: MonitorInstancesResult): any => ({ + ...obj, + }); +} + +export interface MoveAddressToVpcRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The Elastic IP address.
+ */ + PublicIp: string | undefined; +} + +export namespace MoveAddressToVpcRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: MoveAddressToVpcRequest): any => ({ + ...obj, + }); +} + +export enum Status { + inClassic = "InClassic", + inVpc = "InVpc", + moveInProgress = "MoveInProgress", +} + +export interface MoveAddressToVpcResult { + /** + *The allocation ID for the Elastic IP address.
+ */ + AllocationId?: string; + + /** + *The status of the move of the IP address.
+ */ + Status?: Status | string; +} + +export namespace MoveAddressToVpcResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: MoveAddressToVpcResult): any => ({ + ...obj, + }); +} + +export interface MoveByoipCidrToIpamRequest { + /** + *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
.
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.
The BYOIP CIDR.
*/ - TagSpecifications?: TagSpecification[]; + Cidr?: string; /** - *The behavior when a Spot Instance is interrupted. The default is terminate
.
The IPAM pool ID.
*/ - InstanceInterruptionBehavior?: InstanceInterruptionBehavior | string; + IpamPoolId?: string; + + /** + *The Amazon Web Services account ID of the owner of the IPAM pool.
+ */ + IpamPoolOwner?: string; } -export namespace RequestSpotInstancesRequest { +export namespace MoveByoipCidrToIpamRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RequestSpotInstancesRequest): any => ({ + export const filterSensitiveLog = (obj: MoveByoipCidrToIpamRequest): any => ({ + ...obj, + }); +} + +export interface MoveByoipCidrToIpamResult { + /** + *Information about an address range that is provisioned for use with your Amazon Web Services resources + * through bring your own IP addresses (BYOIP).
+ */ + ByoipCidr?: ByoipCidr; +} + +export namespace MoveByoipCidrToIpamResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: MoveByoipCidrToIpamResult): any => ({ ...obj, }); } /** - *Contains the output of RequestSpotInstances.
+ *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.
*/ -export interface RequestSpotInstancesResult { +export interface CidrAuthorizationContext { /** - *One or more Spot Instance requests.
+ *The plain-text authorization message for the prefix and account.
*/ - SpotInstanceRequests?: SpotInstanceRequest[]; + Message: string | undefined; + + /** + *The signed authorization message for the prefix and account.
+ */ + Signature: string | undefined; } -export namespace RequestSpotInstancesResult { +export namespace CidrAuthorizationContext { /** * @internal */ - export const filterSensitiveLog = (obj: RequestSpotInstancesResult): any => ({ + export const filterSensitiveLog = (obj: CidrAuthorizationContext): any => ({ ...obj, }); } -export interface ResetAddressAttributeRequest { +export interface ProvisionByoipCidrRequest { /** - *[EC2-VPC] The allocation ID.
+ *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.
*/ - AllocationId: string | undefined; + Cidr: string | undefined; /** - *The attribute of the IP address.
+ *A signed document that proves that you are authorized to bring the specified IP address + * range to Amazon using BYOIP.
*/ - Attribute: AddressAttributeName | string | undefined; + CidrAuthorizationContext?: CidrAuthorizationContext; + + /** + *(IPv6 only) Indicate whether the address range will be publicly advertised to the + * internet.
+ *Default: true
+ */ + PubliclyAdvertisable?: boolean; + + /** + *A description for the address range and the address pool.
+ */ + Description?: string; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -5161,284 +7034,377 @@ export interface ResetAddressAttributeRequest {
* Otherwise, it is UnauthorizedOperation
.
The tags to apply to the address pool.
+ */ + PoolTagSpecifications?: TagSpecification[]; + + /** + *Reserved.
+ */ + MultiRegion?: boolean; } -export namespace ResetAddressAttributeRequest { +export namespace ProvisionByoipCidrRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ResetAddressAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: ProvisionByoipCidrRequest): any => ({ ...obj, }); } -export interface ResetAddressAttributeResult { +export interface ProvisionByoipCidrResult { /** - *Information about the IP address.
+ *Information about the address range.
*/ - Address?: AddressAttribute; + ByoipCidr?: ByoipCidr; } -export namespace ResetAddressAttributeResult { +export namespace ProvisionByoipCidrResult { /** * @internal */ - export const filterSensitiveLog = (obj: ResetAddressAttributeResult): any => ({ + export const filterSensitiveLog = (obj: ProvisionByoipCidrResult): any => ({ ...obj, }); } -export interface ResetEbsDefaultKmsKeyIdRequest { +/** + *A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP.
+ */ +export interface IpamCidrAuthorizationContext { /** - *Checks whether you have the required permissions for the action, without actually making the request, + *
The plain-text authorization message for the prefix and account.
+ */ + Message?: string; + + /** + *The signed authorization message for the prefix and account.
+ */ + Signature?: string; +} + +export namespace IpamCidrAuthorizationContext { + /** + * @internal + */ + export const filterSensitiveLog = (obj: IpamCidrAuthorizationContext): any => ({ + ...obj, + }); +} + +export interface ProvisionIpamPoolCidrRequest { + /** + *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
.
The ID of the IPAM pool to which you want to assign a CIDR.
+ */ + IpamPoolId: string | undefined; + + /** + *The CIDR you want to assign to the IPAM pool.
+ */ + Cidr?: string; + + /** + *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.
+ */ + CidrAuthorizationContext?: IpamCidrAuthorizationContext; } -export namespace ResetEbsDefaultKmsKeyIdRequest { +export namespace ProvisionIpamPoolCidrRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ResetEbsDefaultKmsKeyIdRequest): any => ({ + export const filterSensitiveLog = (obj: ProvisionIpamPoolCidrRequest): any => ({ ...obj, }); } -export interface ResetEbsDefaultKmsKeyIdResult { +export interface ProvisionIpamPoolCidrResult { /** - *The Amazon Resource Name (ARN) of the default KMS key for EBS encryption by default.
+ *Information about the provisioned CIDR.
*/ - KmsKeyId?: string; + IpamPoolCidr?: IpamPoolCidr; } -export namespace ResetEbsDefaultKmsKeyIdResult { +export namespace ProvisionIpamPoolCidrResult { /** * @internal */ - export const filterSensitiveLog = (obj: ResetEbsDefaultKmsKeyIdResult): any => ({ + export const filterSensitiveLog = (obj: ProvisionIpamPoolCidrResult): any => ({ ...obj, }); } -export type ResetFpgaImageAttributeName = "loadPermission"; - -export interface ResetFpgaImageAttributeRequest { +export interface ProvisionPublicIpv4PoolCidrRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request, + *
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
.
The ID of the AFI.
+ *The ID of the IPAM pool you would like to use to allocate this CIDR.
*/ - FpgaImageId: string | undefined; + IpamPoolId: string | undefined; /** - *The attribute.
+ *The ID of the public IPv4 pool you would like to use for this CIDR.
*/ - Attribute?: ResetFpgaImageAttributeName | string; + PoolId: string | undefined; + + /** + *The netmask length of the CIDR you would like to allocate to the public IPv4 pool.
+ */ + NetmaskLength: number | undefined; } -export namespace ResetFpgaImageAttributeRequest { +export namespace ProvisionPublicIpv4PoolCidrRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ResetFpgaImageAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: ProvisionPublicIpv4PoolCidrRequest): any => ({ ...obj, }); } -export interface ResetFpgaImageAttributeResult { +export interface ProvisionPublicIpv4PoolCidrResult { /** - *Is true
if the request succeeds, and an error otherwise.
The ID of the pool that you want to provision the CIDR to.
*/ - Return?: boolean; + PoolId?: string; + + /** + *Describes an address range of an IPv4 address pool.
+ */ + PoolAddressRange?: PublicIpv4PoolRange; } -export namespace ResetFpgaImageAttributeResult { +export namespace ProvisionPublicIpv4PoolCidrResult { /** * @internal */ - export const filterSensitiveLog = (obj: ResetFpgaImageAttributeResult): any => ({ + export const filterSensitiveLog = (obj: ProvisionPublicIpv4PoolCidrResult): any => ({ ...obj, }); } -export type ResetImageAttributeName = "launchPermission"; +export interface PurchaseHostReservationRequest { + /** + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
+ */ + ClientToken?: string; -/** - *Contains the parameters for ResetImageAttribute.
- */ -export interface ResetImageAttributeRequest { /** - *The attribute to reset (currently you can only reset the launch permission attribute).
+ *The currency in which the totalUpfrontPrice
, LimitPrice
,
+ * and totalHourlyPrice
amounts are specified. At this time, the only
+ * supported currency is USD
.
The ID of the AMI.
+ *The IDs of the Dedicated Hosts with which the reservation will be associated.
*/ - ImageId: string | undefined; + HostIdSet: string[] | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
The ID of the offering.
+ */ + OfferingId: string | undefined; + + /** + *The tags to apply to the Dedicated Host Reservation during purchase.
+ */ + TagSpecifications?: TagSpecification[]; } -export namespace ResetImageAttributeRequest { +export namespace PurchaseHostReservationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ResetImageAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: PurchaseHostReservationRequest): any => ({ ...obj, }); } -export interface ResetInstanceAttributeRequest { +export interface PurchaseHostReservationResult { /** - *The attribute to reset.
- *You can only reset the following attributes: kernel
|
- * ramdisk
| sourceDestCheck
. To change an instance
- * attribute, use ModifyInstanceAttribute.
Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
*/ - Attribute: InstanceAttributeName | string | undefined; + ClientToken?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The currency in which the totalUpfrontPrice
and
+ * totalHourlyPrice
amounts are specified. At this time, the only
+ * supported currency is USD
.
The ID of the instance.
+ *Describes the details of the purchase.
*/ - InstanceId: string | undefined; + Purchase?: Purchase[]; + + /** + *The total hourly price of the reservation calculated per hour.
+ */ + TotalHourlyPrice?: string; + + /** + *The total amount charged to your account when you purchase the reservation.
+ */ + TotalUpfrontPrice?: string; } -export namespace ResetInstanceAttributeRequest { +export namespace PurchaseHostReservationResult { /** * @internal */ - export const filterSensitiveLog = (obj: ResetInstanceAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: PurchaseHostReservationResult): any => ({ ...obj, }); } /** - *Contains the parameters for ResetNetworkInterfaceAttribute.
+ *Describes the limit price of a Reserved Instance offering.
*/ -export interface ResetNetworkInterfaceAttributeRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the network interface.
+ *Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).
*/ - NetworkInterfaceId: string | undefined; + Amount?: number; /** - *The source/destination checking attribute. Resets the value to true
.
The currency in which the limitPrice
amount is specified.
+ * At this time, the only supported currency is USD
.
Contains the parameters for PurchaseReservedInstancesOffering.
+ */ +export interface PurchaseReservedInstancesOfferingRequest { /** - *The attribute to reset. Currently, only the attribute for permission to create volumes can - * be reset.
+ *The number of Reserved Instances to purchase.
*/ - Attribute: SnapshotAttributeName | string | undefined; + InstanceCount: number | undefined; /** - *The ID of the snapshot.
+ *The ID of the Reserved Instance offering to purchase.
*/ - SnapshotId: string | undefined; + ReservedInstancesOfferingId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
*/
DryRun?: boolean;
+
+ /**
+ * Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.
+ */ + LimitPrice?: ReservedInstanceLimitPrice; + + /** + *The time at which to purchase the Reserved Instance, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
+ */ + PurchaseTime?: Date; } -export namespace ResetSnapshotAttributeRequest { +export namespace PurchaseReservedInstancesOfferingRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ResetSnapshotAttributeRequest): any => ({ + export const filterSensitiveLog = (obj: PurchaseReservedInstancesOfferingRequest): any => ({ ...obj, }); } -export interface RestoreAddressToClassicRequest { - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Contains the output of PurchaseReservedInstancesOffering.
+ */ +export interface PurchaseReservedInstancesOfferingResult { /** - *The Elastic IP address.
+ *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.
*/ - PublicIp: string | undefined; + ReservedInstancesId?: string; } -export namespace RestoreAddressToClassicRequest { +export namespace PurchaseReservedInstancesOfferingResult { /** * @internal */ - export const filterSensitiveLog = (obj: RestoreAddressToClassicRequest): any => ({ + export const filterSensitiveLog = (obj: PurchaseReservedInstancesOfferingResult): any => ({ ...obj, }); } -export interface RestoreAddressToClassicResult { +/** + *Describes a request to purchase Scheduled Instances.
+ */ +export interface PurchaseRequest { /** - *The Elastic IP address.
+ *The number of instances.
*/ - PublicIp?: string; + InstanceCount: number | undefined; /** - *The move status for the IP address.
+ *The purchase token.
*/ - Status?: Status | string; + PurchaseToken: string | undefined; } -export namespace RestoreAddressToClassicResult { +export namespace PurchaseRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RestoreAddressToClassicResult): any => ({ + export const filterSensitiveLog = (obj: PurchaseRequest): any => ({ ...obj, }); } -export interface RestoreManagedPrefixListVersionRequest { +/** + *Contains the parameters for PurchaseScheduledInstances.
+ */ +export interface PurchaseScheduledInstancesRequest { + /** + *Unique, case-sensitive identifier that ensures the idempotency of the request. + * For more information, see Ensuring Idempotency.
+ */ + ClientToken?: string; + /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -5447,51 +7413,44 @@ export interface RestoreManagedPrefixListVersionRequest {
DryRun?: boolean;
/**
- *
The ID of the prefix list.
- */ - PrefixListId: string | undefined; - - /** - *The version to restore.
- */ - PreviousVersion: number | undefined; - - /** - *The current version number for the prefix list.
+ *The purchase requests.
*/ - CurrentVersion: number | undefined; + PurchaseRequests: PurchaseRequest[] | undefined; } -export namespace RestoreManagedPrefixListVersionRequest { +export namespace PurchaseScheduledInstancesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RestoreManagedPrefixListVersionRequest): any => ({ + export const filterSensitiveLog = (obj: PurchaseScheduledInstancesRequest): any => ({ ...obj, }); } -export interface RestoreManagedPrefixListVersionResult { +/** + *Contains the output of PurchaseScheduledInstances.
+ */ +export interface PurchaseScheduledInstancesResult { /** - *Information about the prefix list.
+ *Information about the Scheduled Instances.
*/ - PrefixList?: ManagedPrefixList; + ScheduledInstanceSet?: ScheduledInstance[]; } -export namespace RestoreManagedPrefixListVersionResult { +export namespace PurchaseScheduledInstancesResult { /** * @internal */ - export const filterSensitiveLog = (obj: RestoreManagedPrefixListVersionResult): any => ({ + export const filterSensitiveLog = (obj: PurchaseScheduledInstancesResult): any => ({ ...obj, }); } -export interface RestoreSnapshotFromRecycleBinRequest { +export interface RebootInstancesRequest { /** - *The ID of the snapshot to restore.
+ *The instance IDs.
*/ - SnapshotId: string | undefined; + InstanceIds: string[] | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -5501,871 +7460,781 @@ export interface RestoreSnapshotFromRecycleBinRequest { DryRun?: boolean; } -export namespace RestoreSnapshotFromRecycleBinRequest { +export namespace RebootInstancesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RestoreSnapshotFromRecycleBinRequest): any => ({ + export const filterSensitiveLog = (obj: RebootInstancesRequest): any => ({ ...obj, }); } -export interface RestoreSnapshotFromRecycleBinResult { - /** - *
The ID of the snapshot.
- */ - SnapshotId?: string; - - /** - *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.
- */ - OutpostArn?: string; - - /** - *The description for the snapshot.
- */ - Description?: string; - - /** - *Indicates whether the snapshot is encrypted.
- */ - Encrypted?: boolean; - - /** - *The ID of the Amazon Web Services account that owns the EBS snapshot.
- */ - OwnerId?: string; - - /** - *The progress of the snapshot, as a percentage.
- */ - Progress?: string; - +/** + *Contains the parameters for RegisterImage.
+ */ +export interface RegisterImageRequest { /** - *The time stamp when the snapshot was initiated.
+ *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.
The state of the snapshot.
+ *The architecture of the AMI.
+ *Default: For Amazon EBS-backed AMIs, i386
.
+ * For instance store-backed AMIs, the architecture specified in the manifest file.
The ID of the volume that was used to create the snapshot.
+ *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 Elastic Compute Cloud User Guide.
*/ - VolumeId?: string; + BlockDeviceMappings?: BlockDeviceMapping[]; /** - *The size of the volume, in GiB.
+ *A description for your AMI.
*/ - VolumeSize?: number; -} + Description?: string; -export namespace RestoreSnapshotFromRecycleBinResult { /** - * @internal + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the snapshot to restore.
+ *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.
*/ - SnapshotId: string | undefined; + EnaSupport?: boolean; /** - *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
.
The ID of the kernel.
*/ - TemporaryRestoreDays?: number; + KernelId?: string; /** - *Indicates whether to permanently restore an archived snapshot. To permanently restore
- * an archived snapshot, specify true
and omit the
- * RestoreSnapshotTierRequest$TemporaryRestoreDays parameter.
A name for your AMI.
+ *Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)
*/ - PermanentRestore?: boolean; + Name: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The billing product codes. Your account must be authorized to specify billing product codes. Otherwise, + * you can use the Amazon Web Services Marketplace to bill for the use of an AMI.
*/ - DryRun?: boolean; -} + BillingProducts?: string[]; -export namespace RestoreSnapshotTierRequest { /** - * @internal + *The ID of the RAM disk.
*/ - export const filterSensitiveLog = (obj: RestoreSnapshotTierRequest): any => ({ - ...obj, - }); -} + RamdiskId?: string; -export interface RestoreSnapshotTierResult { /** - *The ID of the snapshot.
+ *The device name of the root device volume (for example, /dev/sda1
).
The date and time when the snapshot restore process started.
+ *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.
*/ - RestoreStartTime?: Date; + SriovNetSupport?: string; /** - *For temporary restores only. The number of days for which the archived snapshot - * is temporarily restored.
+ *The type of virtualization (hvm
| paravirtual
).
Default: paravirtual
+ *
Indicates whether the snapshot is permanently restored. true
indicates a permanent
- * restore. false
indicates a temporary restore.
The boot mode of the AMI. For more information, see Boot modes in the + * Amazon Elastic Compute Cloud User Guide.
*/ - IsPermanentRestore?: boolean; + BootMode?: BootModeValues | string; } -export namespace RestoreSnapshotTierResult { +export namespace RegisterImageRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RestoreSnapshotTierResult): any => ({ + export const filterSensitiveLog = (obj: RegisterImageRequest): any => ({ ...obj, }); } -export interface RevokeClientVpnIngressRequest { - /** - *The ID of the Client VPN endpoint with which the authorization rule is associated.
- */ - ClientVpnEndpointId: string | undefined; - +/** + *Contains the output of RegisterImage.
+ */ +export interface RegisterImageResult { /** - *The IPv4 address range, in CIDR notation, of the network for which access is being removed.
+ *The ID of the newly registered AMI.
*/ - TargetNetworkCidr: string | undefined; + ImageId?: string; +} +export namespace RegisterImageResult { /** - *The ID of the Active Directory group for which to revoke access.
+ * @internal */ - AccessGroupId?: string; + export const filterSensitiveLog = (obj: RegisterImageResult): any => ({ + ...obj, + }); +} +/** + *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
Indicates whether access should be revoked for all clients.
+ *Indicates whether to register all tag keys in the current Region. Specify true
+ * to register all tag keys.
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
The tag keys to register.
*/ - DryRun?: boolean; + InstanceTagKeys?: string[]; } -export namespace RevokeClientVpnIngressRequest { +export namespace RegisterInstanceTagAttributeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RevokeClientVpnIngressRequest): any => ({ + export const filterSensitiveLog = (obj: RegisterInstanceTagAttributeRequest): any => ({ ...obj, }); } -export interface RevokeClientVpnIngressResult { +export interface RegisterInstanceEventNotificationAttributesRequest { /** - *The current state of the authorization rule.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the tag keys to register.
+ */ + InstanceTagAttribute?: RegisterInstanceTagAttributeRequest; } -export namespace RevokeClientVpnIngressResult { +export namespace RegisterInstanceEventNotificationAttributesRequest { /** * @internal */ - export const filterSensitiveLog = (obj: RevokeClientVpnIngressResult): any => ({ + export const filterSensitiveLog = (obj: RegisterInstanceEventNotificationAttributesRequest): any => ({ ...obj, }); } -export interface RevokeSecurityGroupEgressRequest { +export interface RegisterInstanceEventNotificationAttributesResult { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The resulting set of tag keys.
*/ - DryRun?: boolean; + InstanceTagAttribute?: InstanceTagNotificationAttribute; +} +export namespace RegisterInstanceEventNotificationAttributesResult { /** - *The ID of the security group.
+ * @internal */ - GroupId: string | undefined; + export const filterSensitiveLog = (obj: RegisterInstanceEventNotificationAttributesResult): any => ({ + ...obj, + }); +} +export interface RegisterTransitGatewayMulticastGroupMembersRequest { /** - *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.
+ *The ID of the transit gateway multicast domain.
*/ - IpPermissions?: IpPermission[]; + TransitGatewayMulticastDomainId?: string; /** - *The IDs of the security group rules.
+ *The IP address assigned to the transit gateway multicast group.
*/ - SecurityGroupRuleIds?: string[]; + GroupIpAddress?: string; /** - *Not supported. Use a set of IP permissions to specify the CIDR.
+ *The group members' network interface IDs to register with the transit gateway multicast group.
*/ - CidrIp?: string; + NetworkInterfaceIds?: string[]; /** - *Not supported. Use a set of IP permissions to specify the port.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Not supported. Use a set of IP permissions to specify the protocol name or - * number.
+ * @internal */ - IpProtocol?: string; + export const filterSensitiveLog = (obj: RegisterTransitGatewayMulticastGroupMembersRequest): any => ({ + ...obj, + }); +} +/** + *Describes the registered transit gateway multicast group members.
+ */ +export interface TransitGatewayMulticastRegisteredGroupMembers { /** - *Not supported. Use a set of IP permissions to specify the port.
+ *The ID of the transit gateway multicast domain.
*/ - ToPort?: number; + TransitGatewayMulticastDomainId?: string; /** - *Not supported. Use a set of IP permissions to specify a - * destination security group.
+ *The ID of the registered network interfaces.
*/ - SourceSecurityGroupName?: string; + RegisteredNetworkInterfaceIds?: string[]; /** - *Not supported. Use a set of IP permissions to specify a destination security - * group.
+ *The IP address assigned to the transit gateway multicast group.
*/ - SourceSecurityGroupOwnerId?: string; + GroupIpAddress?: string; } -export namespace RevokeSecurityGroupEgressRequest { +export namespace TransitGatewayMulticastRegisteredGroupMembers { /** * @internal */ - export const filterSensitiveLog = (obj: RevokeSecurityGroupEgressRequest): any => ({ + export const filterSensitiveLog = (obj: TransitGatewayMulticastRegisteredGroupMembers): any => ({ ...obj, }); } -export interface RevokeSecurityGroupEgressResult { - /** - *Returns true
if the request succeeds; otherwise, returns an error.
The outbound rules that were unknown to the service. In some cases,
- * unknownIpPermissionSet
might be in a different format from the request
- * parameter.
Information about the registered transit gateway multicast group members.
*/ - UnknownIpPermissions?: IpPermission[]; + RegisteredMulticastGroupMembers?: TransitGatewayMulticastRegisteredGroupMembers; } -export namespace RevokeSecurityGroupEgressResult { +export namespace RegisterTransitGatewayMulticastGroupMembersResult { /** * @internal */ - export const filterSensitiveLog = (obj: RevokeSecurityGroupEgressResult): any => ({ + export const filterSensitiveLog = (obj: RegisterTransitGatewayMulticastGroupMembersResult): any => ({ ...obj, }); } -export interface RevokeSecurityGroupIngressRequest { - /** - *The CIDR IP address range. You can't specify this parameter when specifying a source security group.
- */ - CidrIp?: string; - +export interface RegisterTransitGatewayMulticastGroupSourcesRequest { /** - *The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number,
- * use -1
to specify all ICMP types.
The ID of the transit gateway multicast domain.
*/ - FromPort?: number; + TransitGatewayMulticastDomainId?: string; /** - *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.
+ *The IP address assigned to the transit gateway multicast group.
*/ - GroupId?: string; + GroupIpAddress?: string; /** - *[EC2-Classic, default VPC] The name of the security group. You must specify either the - * security group ID or the security group name in the request.
+ *The group sources' network interface IDs to register with the transit gateway multicast group.
*/ - GroupName?: string; + NetworkInterfaceIds?: string[]; /** - *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.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The IP protocol name (tcp
, udp
, icmp
) or number
- * (see Protocol Numbers).
- * Use -1
to specify all.
Describes the members registered with the transit gateway multicast group.
+ */ +export interface TransitGatewayMulticastRegisteredGroupSources { /** - *[EC2-Classic, 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. For EC2-VPC, 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.
+ *The ID of the transit gateway multicast domain.
*/ - SourceSecurityGroupName?: string; + TransitGatewayMulticastDomainId?: string; /** - *[EC2-Classic] The Amazon Web Services account ID of 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. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.
+ *The IDs of the network interfaces members registered with the transit gateway multicast group.
*/ - SourceSecurityGroupOwnerId?: string; + RegisteredNetworkInterfaceIds?: string[]; /** - *The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number,
- * use -1
to specify all ICMP codes for the ICMP type.
The IP address assigned to the transit gateway multicast group.
*/ - ToPort?: number; + GroupIpAddress?: string; +} +export namespace TransitGatewayMulticastRegisteredGroupSources { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The IDs of the security group rules.
+ *Information about the transit gateway multicast group sources.
*/ - SecurityGroupRuleIds?: string[]; + RegisteredMulticastGroupSources?: TransitGatewayMulticastRegisteredGroupSources; } -export namespace RevokeSecurityGroupIngressRequest { +export namespace RegisterTransitGatewayMulticastGroupSourcesResult { /** * @internal */ - export const filterSensitiveLog = (obj: RevokeSecurityGroupIngressRequest): any => ({ + export const filterSensitiveLog = (obj: RegisterTransitGatewayMulticastGroupSourcesResult): any => ({ ...obj, }); } -export interface RevokeSecurityGroupIngressResult { +export interface RejectTransitGatewayMulticastDomainAssociationsRequest { /** - *Returns true
if the request succeeds; otherwise, returns an error.
The ID of the transit gateway multicast domain.
*/ - Return?: boolean; + TransitGatewayMulticastDomainId?: string; /** - *The inbound rules that were unknown to the service. In some cases,
- * unknownIpPermissionSet
might be in a different format from the request
- * parameter.
The ID of the transit gateway attachment.
*/ - UnknownIpPermissions?: IpPermission[]; + TransitGatewayAttachmentId?: string; + + /** + *The IDs of the subnets to associate with the transit gateway multicast domain.
+ */ + SubnetIds?: string[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The CPU options for the instance. Both the core count and threads per core must be - * specified in the request.
- */ -export interface CpuOptionsRequest { - /** - *The number of CPU cores for the instance.
- */ - CoreCount?: number; - +export interface RejectTransitGatewayMulticastDomainAssociationsResult { /** - *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
.
Describes the multicast domain associations.
*/ - ThreadsPerCore?: number; + Associations?: TransitGatewayMulticastDomainAssociations; } -export namespace CpuOptionsRequest { +export namespace RejectTransitGatewayMulticastDomainAssociationsResult { /** * @internal */ - export const filterSensitiveLog = (obj: CpuOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: RejectTransitGatewayMulticastDomainAssociationsResult): any => ({ ...obj, }); } -/** - *- * Describes an elastic inference accelerator. - *
- */ -export interface ElasticInferenceAccelerator { +export interface RejectTransitGatewayPeeringAttachmentRequest { /** - *
- * The type of elastic inference accelerator. The possible values are eia1.medium
, eia1.large
, eia1.xlarge
, eia2.medium
, eia2.large
, and eia2.xlarge
.
- *
The ID of the transit gateway peering attachment.
*/ - Type: string | undefined; + TransitGatewayAttachmentId: string | undefined; /** - *- * The number of elastic inference accelerators to attach to the instance. - *
- *Default: 1
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
- */ -export interface EnclaveOptionsRequest { +export interface RejectTransitGatewayPeeringAttachmentResult { /** - *To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to true
.
The transit gateway peering attachment.
*/ - Enabled?: boolean; + TransitGatewayPeeringAttachment?: TransitGatewayPeeringAttachment; } -export namespace EnclaveOptionsRequest { +export namespace RejectTransitGatewayPeeringAttachmentResult { /** * @internal */ - export const filterSensitiveLog = (obj: EnclaveOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: RejectTransitGatewayPeeringAttachmentResult): any => ({ ...obj, }); } -/** - *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.
- */ -export interface HibernationOptionsRequest { +export interface RejectTransitGatewayVpcAttachmentRequest { /** - *If you set this parameter to true
, your instance is enabled for
- * hibernation.
Default: false
- *
The ID of the attachment.
*/ - Configured?: boolean; + TransitGatewayAttachmentId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The options for Spot Instances.
- */ -export interface SpotMarketOptions { +export interface RejectTransitGatewayVpcAttachmentResult { /** - *The maximum hourly price you're willing to pay for the Spot Instances. The default is - * the On-Demand price.
+ *Information about the attachment.
*/ - MaxPrice?: string; + TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment; +} +export namespace RejectTransitGatewayVpcAttachmentResult { /** - *The Spot Instance request type. For RunInstances, persistent Spot
- * Instance requests are only supported when the instance interruption behavior is either hibernate
or
- * stop
.
Deprecated.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
The ID of the service.
*/ - ValidUntil?: Date; + ServiceId: string | undefined; /** - *The behavior when a Spot Instance is interrupted. The default is
- * terminate
.
The IDs of one or more VPC endpoints.
*/ - InstanceInterruptionBehavior?: InstanceInterruptionBehavior | string; + VpcEndpointIds: string[] | undefined; } -export namespace SpotMarketOptions { +export namespace RejectVpcEndpointConnectionsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: SpotMarketOptions): any => ({ + export const filterSensitiveLog = (obj: RejectVpcEndpointConnectionsRequest): any => ({ ...obj, }); } -/** - *Describes the market (purchasing) option for the instances.
- */ -export interface InstanceMarketOptionsRequest { - /** - *The market type.
- */ - MarketType?: MarketType | string; - +export interface RejectVpcEndpointConnectionsResult { /** - *The options for Spot Instances.
+ *Information about the endpoints that were not rejected, if applicable.
*/ - SpotOptions?: SpotMarketOptions; + Unsuccessful?: UnsuccessfulItem[]; } -export namespace InstanceMarketOptionsRequest { +export namespace RejectVpcEndpointConnectionsResult { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceMarketOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: RejectVpcEndpointConnectionsResult): any => ({ ...obj, }); } -/** - *The launch template to use. You must specify either the launch template ID or - * launch template name in the request, but not both.
- */ -export interface LaunchTemplateSpecification { - /** - *The ID of the launch template.
- */ - LaunchTemplateId?: string; - +export interface RejectVpcPeeringConnectionRequest { /** - *The name of the launch template.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The version number of the launch template.
- *Default: The default version for the launch template.
+ *The ID of the VPC peering connection.
*/ - Version?: string; + VpcPeeringConnectionId: string | undefined; } -export namespace LaunchTemplateSpecification { +export namespace RejectVpcPeeringConnectionRequest { /** * @internal */ - export const filterSensitiveLog = (obj: LaunchTemplateSpecification): any => ({ + export const filterSensitiveLog = (obj: RejectVpcPeeringConnectionRequest): any => ({ ...obj, }); } -/** - *Describes a license configuration.
- */ -export interface LicenseConfigurationRequest { +export interface RejectVpcPeeringConnectionResult { /** - *The Amazon Resource Name (ARN) of the license configuration.
+ *Returns true
if the request succeeds; otherwise, it returns an error.
The metadata options for the instance.
- */ -export interface InstanceMetadataOptionsRequest { +export interface ReleaseAddressRequest { /** - *The state of token usage for your instance metadata requests. If the parameter is not
- * specified in the request, the default state is optional
.
If the state is optional
, you can choose to retrieve instance metadata
- * with or without a signed token header on your request. If you retrieve the IAM role
- * credentials without a token, the version 1.0 role credentials are returned. If you
- * retrieve the IAM role credentials using a valid signed token, the version 2.0 role
- * credentials are returned.
If the state is required
, you must send a signed token header with any
- * instance metadata retrieval requests. In this state, retrieving the IAM role credentials
- * always returns the version 2.0 credentials; the version 1.0 credentials are not
- * available.
[EC2-VPC] The allocation ID. Required for EC2-VPC.
*/ - HttpTokens?: HttpTokensState | string; + AllocationId?: string; /** - *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
+ *[EC2-Classic] The Elastic IP address. Required for EC2-Classic.
*/ - HttpPutResponseHopLimit?: number; + PublicIp?: string; /** - *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.
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.
Enables or disables the IPv6 endpoint for the instance metadata service.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes the options for instance hostnames.
- */ -export interface PrivateDnsNameOptionsRequest { +export interface ReleaseHostsRequest { /** - *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.
+ *The IDs of the Dedicated Hosts to release.
*/ - HostnameType?: HostnameType | string; + HostIds: string[] | undefined; +} +export namespace ReleaseHostsRequest { /** - *Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
+ * @internal */ - EnableResourceNameDnsARecord?: boolean; + export const filterSensitiveLog = (obj: ReleaseHostsRequest): any => ({ + ...obj, + }); +} +export interface ReleaseHostsResult { /** - *Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
+ *The IDs of the Dedicated Hosts that were successfully released.
*/ - EnableResourceNameDnsAAAARecord?: boolean; + Successful?: string[]; + + /** + *The IDs of the Dedicated Hosts that could not be released, including an error + * message.
+ */ + Unsuccessful?: UnsuccessfulItem[]; } -export namespace PrivateDnsNameOptionsRequest { +export namespace ReleaseHostsResult { /** * @internal */ - export const filterSensitiveLog = (obj: PrivateDnsNameOptionsRequest): any => ({ + export const filterSensitiveLog = (obj: ReleaseHostsResult): any => ({ ...obj, }); } -export interface RunInstancesRequest { +export interface ReleaseIpamPoolAllocationRequest { /** - *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.
+ *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
.
The ID of the AMI. An AMI ID is required to launch an instance and must be - * specified here or in a launch template.
+ *The ID of the IPAM pool which contains the allocation you want to release.
*/ - ImageId?: string; + IpamPoolId: string | undefined; /** - *The instance type. For more information, see Instance types in the - * Amazon EC2 User Guide.
- *Default: m1.small
- *
The CIDR of the allocation you want to release.
*/ - InstanceType?: _InstanceType | string; + Cidr: string | undefined; /** - *[EC2-VPC] 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.
+ *The ID of the allocation.
*/ - Ipv6AddressCount?: number; + IpamPoolAllocationId?: string; +} +export namespace ReleaseIpamPoolAllocationRequest { /** - *[EC2-VPC] 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.
+ * @internal */ - Ipv6Addresses?: InstanceIpv6Address[]; + export const filterSensitiveLog = (obj: ReleaseIpamPoolAllocationRequest): any => ({ + ...obj, + }); +} +export interface ReleaseIpamPoolAllocationResult { /** - *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.
- *Indicates if the release was successful.
*/ - KernelId?: string; + Success?: boolean; +} +export namespace ReleaseIpamPoolAllocationResult { /** - *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.
- *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.
+ *The IAM instance profile.
*/ - MaxCount: number | undefined; + IamInstanceProfile: IamInstanceProfileSpecification | undefined; /** - *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.
+ *The ID of the existing IAM instance profile association.
*/ - MinCount: number | undefined; + AssociationId: string | undefined; +} +export namespace ReplaceIamInstanceProfileAssociationRequest { /** - *Specifies whether detailed monitoring is enabled for the instance.
+ * @internal */ - Monitoring?: RunInstancesMonitoringEnabled; + export const filterSensitiveLog = (obj: ReplaceIamInstanceProfileAssociationRequest): any => ({ + ...obj, + }); +} +export interface ReplaceIamInstanceProfileAssociationResult { /** - *The placement for the instance.
+ *Information about the IAM instance profile association.
*/ - Placement?: Placement; + IamInstanceProfileAssociation?: IamInstanceProfileAssociation; +} +export namespace ReplaceIamInstanceProfileAssociationResult { /** - *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.
- *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.
+ *The ID of the current association between the original network ACL and the subnet.
*/ - SecurityGroupIds?: string[]; + AssociationId: string | undefined; /** - *[EC2-Classic, default VPC] The names of the security groups. For a nondefault VPC, you - * must use security group IDs instead.
- *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.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
[EC2-VPC] 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.
+ *The ID of the new network ACL to associate with the subnet.
*/ - SubnetId?: string; + NetworkAclId: string | undefined; +} +export namespace ReplaceNetworkAclAssociationRequest { /** - *The user data 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.
+ * @internal */ - UserData?: string; + export const filterSensitiveLog = (obj: ReplaceNetworkAclAssociationRequest): any => ({ + ...obj, + }); +} +export interface ReplaceNetworkAclAssociationResult { /** - *Reserved.
+ *The ID of the new association.
*/ - AdditionalInfo?: string; + NewAssociationId?: string; +} +export namespace ReplaceNetworkAclAssociationResult { /** - *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
+ * @internal */ - ClientToken?: string; + export const filterSensitiveLog = (obj: ReplaceNetworkAclAssociationResult): any => ({ + ...obj, + }); +} +export interface ReplaceNetworkAclEntryRequest { /** - *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
- *
The IPv4 network range to allow or deny, in CIDR notation (for example
+ * 172.16.0.0/24
).
Checks whether you have the required permissions for the action, without actually making the request, @@ -6375,450 +8244,446 @@ export interface RunInstancesRequest { DryRun?: boolean; /** - *
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
- *
Indicates whether to replace the egress rule.
+ *Default: If no value is specified, we replace the ingress rule.
*/ - EbsOptimized?: boolean; + Egress: boolean | undefined; /** - *The name or Amazon Resource Name (ARN) of an IAM instance profile.
+ *ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol + * 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.
*/ - IamInstanceProfile?: IamInstanceProfileSpecification; + IcmpTypeCode?: IcmpTypeCode; /** - *Indicates whether an instance stops or terminates when you initiate shutdown from the - * instance (using the operating system command for system shutdown).
- *Default: stop
- *
The IPv6 network range to allow or deny, in CIDR notation (for example
+ * 2001:bd8:1234:1a00::/64
).
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.
+ *The ID of the ACL.
*/ - NetworkInterfaces?: InstanceNetworkInterfaceSpecification[]; + NetworkAclId: string | undefined; /** - *[EC2-VPC] 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.
+ *TCP or UDP protocols: The range of ports the rule applies to. + * Required if specifying protocol 6 (TCP) or 17 (UDP).
*/ - PrivateIpAddress?: string; + PortRange?: 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.
+ */ + Protocol: string | undefined; /** - *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.
+ *Indicates whether to allow or deny the traffic that matches the rule.
*/ - ElasticGpuSpecification?: ElasticGpuSpecification[]; + RuleAction: RuleAction | string | undefined; /** - *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.
+ *The rule number of the entry to replace.
*/ - ElasticInferenceAccelerators?: ElasticInferenceAccelerator[]; + RuleNumber: number | undefined; +} +export namespace ReplaceNetworkAclEntryRequest { /** - *The tags to apply to the resources during launch. You can only tag instances and - * volumes on launch. The specified tags are applied to all instances or volumes that are - * created during launch. To tag a resource after it has been created, see CreateTags.
+ * @internal */ - TagSpecifications?: TagSpecification[]; + export const filterSensitiveLog = (obj: ReplaceNetworkAclEntryRequest): any => ({ + ...obj, + }); +} +export interface ReplaceRouteRequest { /** - *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.
+ *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.
*/ - LaunchTemplate?: LaunchTemplateSpecification; + DestinationCidrBlock?: string; /** - *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
.
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.
*/ - InstanceMarketOptions?: InstanceMarketOptionsRequest; + DestinationIpv6CidrBlock?: string; /** - *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
- * instances)
For T3 instances with host
tenancy, only standard
is
- * supported.
The ID of the prefix list for the route.
*/ - CreditSpecification?: CreditSpecificationRequest; + DestinationPrefixListId?: string; /** - *The CPU options for the instance. For more information, see Optimize CPU options in the Amazon EC2 User Guide.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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).
The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.
*/ - CapacityReservationSpecification?: CapacityReservationSpecification; + VpcEndpointId?: string; /** - *Indicates whether an instance is enabled for hibernation. 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.
+ *[IPv6 traffic only] The ID of an egress-only internet gateway.
*/ - HibernationOptions?: HibernationOptionsRequest; + EgressOnlyInternetGatewayId?: string; /** - *The license configurations.
+ *The ID of an internet gateway or virtual private gateway.
*/ - LicenseSpecifications?: LicenseConfigurationRequest[]; + GatewayId?: string; /** - *The metadata options for the instance. For more information, see Instance metadata and user data.
+ *The ID of a NAT instance in your VPC.
*/ - MetadataOptions?: InstanceMetadataOptionsRequest; + InstanceId?: string; /** - *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.
+ *Specifies whether to reset the local route to its default target (local
).
The options for the instance hostname. The default values are inherited from the subnet.
+ *[IPv4 traffic only] The ID of a NAT gateway.
*/ - PrivateDnsNameOptions?: PrivateDnsNameOptionsRequest; -} + NatGatewayId?: string; -export namespace RunInstancesRequest { /** - * @internal + *The ID of a transit gateway.
*/ - export const filterSensitiveLog = (obj: RunInstancesRequest): any => ({ - ...obj, - }); -} + TransitGatewayId?: string; -/** - *Describes an EBS volume for a Scheduled Instance.
- */ -export interface ScheduledInstancesEbs { /** - *Indicates whether the volume is deleted on instance termination.
+ *The ID of the local gateway.
*/ - DeleteOnTermination?: boolean; + LocalGatewayId?: string; /** - *Indicates whether the volume is encrypted. You can attached encrypted volumes only to instances that support them.
+ *[IPv4 traffic only] The ID of a carrier gateway.
*/ - Encrypted?: boolean; + CarrierGatewayId?: string; /** - *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.
The ID of a network interface.
*/ - Iops?: number; + NetworkInterfaceId?: string; /** - *The ID of the snapshot.
+ *The ID of the route table.
*/ - SnapshotId?: string; + RouteTableId: string | undefined; /** - *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.
+ *The ID of a VPC peering connection.
*/ - VolumeSize?: number; + VpcPeeringConnectionId?: string; /** - *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
- *
The Amazon Resource Name (ARN) of the core network.
*/ - VolumeType?: string; + CoreNetworkArn?: string; } -export namespace ScheduledInstancesEbs { +export namespace ReplaceRouteRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ScheduledInstancesEbs): any => ({ + export const filterSensitiveLog = (obj: ReplaceRouteRequest): any => ({ ...obj, }); } -/** - *Describes a block device mapping for a Scheduled Instance.
- */ -export interface ScheduledInstancesBlockDeviceMapping { - /** - *The device name (for example, /dev/sdh
or xvdh
).
Parameters used to set up EBS volumes automatically when the instance is launched.
+ *The association ID.
*/ - Ebs?: ScheduledInstancesEbs; + AssociationId: string | undefined; /** - *To omit the device from the block device mapping, specify an empty string.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The virtual device name (ephemeral
N). 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.
+ *The ID of the new route table to associate with the subnet.
*/ - VirtualName?: string; + RouteTableId: string | undefined; } -export namespace ScheduledInstancesBlockDeviceMapping { +export namespace ReplaceRouteTableAssociationRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ScheduledInstancesBlockDeviceMapping): any => ({ + export const filterSensitiveLog = (obj: ReplaceRouteTableAssociationRequest): any => ({ ...obj, }); } -/** - *Describes an IAM instance profile for a Scheduled Instance.
- */ -export interface ScheduledInstancesIamInstanceProfile { +export interface ReplaceRouteTableAssociationResult { /** - *The Amazon Resource Name (ARN).
+ *The ID of the new association.
*/ - Arn?: string; + NewAssociationId?: string; /** - *The name.
+ *The state of the association.
*/ - Name?: string; + AssociationState?: RouteTableAssociationState; } -export namespace ScheduledInstancesIamInstanceProfile { +export namespace ReplaceRouteTableAssociationResult { /** * @internal */ - export const filterSensitiveLog = (obj: ScheduledInstancesIamInstanceProfile): any => ({ + export const filterSensitiveLog = (obj: ReplaceRouteTableAssociationResult): any => ({ ...obj, }); } -/** - *Describes whether monitoring is enabled for a Scheduled Instance.
- */ -export interface ScheduledInstancesMonitoring { +export interface ReplaceTransitGatewayRouteRequest { /** - *Indicates whether monitoring is enabled.
+ *The CIDR range used for the destination match. Routing decisions are based on the most specific match.
*/ - Enabled?: boolean; -} + DestinationCidrBlock: string | undefined; -export namespace ScheduledInstancesMonitoring { /** - * @internal + *The ID of the route table.
*/ - export const filterSensitiveLog = (obj: ScheduledInstancesMonitoring): any => ({ - ...obj, - }); -} + TransitGatewayRouteTableId: string | undefined; + + /** + *The ID of the attachment.
+ */ + TransitGatewayAttachmentId?: string; + + /** + *Indicates whether traffic matching this route is to be dropped.
+ */ + Blackhole?: boolean; -/** - *Describes an IPv6 address.
- */ -export interface ScheduledInstancesIpv6Address { /** - *The IPv6 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
.
Describes a private IPv4 address for a Scheduled Instance.
- */ -export interface ScheduledInstancesPrivateIpAddressConfig { - /** - *Indicates whether this is a primary IPv4 address. Otherwise, this is a secondary IPv4 address.
- */ - Primary?: boolean; - +export interface ReplaceTransitGatewayRouteResult { /** - *The IPv4 address.
+ *Information about the modified route.
*/ - PrivateIpAddress?: string; + Route?: TransitGatewayRoute; } -export namespace ScheduledInstancesPrivateIpAddressConfig { +export namespace ReplaceTransitGatewayRouteResult { /** * @internal */ - export const filterSensitiveLog = (obj: ScheduledInstancesPrivateIpAddressConfig): any => ({ + export const filterSensitiveLog = (obj: ReplaceTransitGatewayRouteResult): any => ({ ...obj, }); } -/** - *Describes a network interface for a Scheduled Instance.
- */ -export interface ScheduledInstancesNetworkInterface { - /** - *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
.
Indicates whether to delete the interface when the instance is terminated.
- */ - DeleteOnTermination?: boolean; +export type ReportStatusType = "impaired" | "ok"; +export interface ReportInstanceStatusRequest { /** - *The description.
+ *Descriptive text about the health state of your instance.
*/ Description?: string; /** - *The index of the device for the network interface attachment.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The IDs of the security groups.
+ *The time at which the reported instance health state ended.
*/ - Groups?: string[]; + EndTime?: Date; /** - *The number of IPv6 addresses to assign to the network interface. The IPv6 addresses are automatically selected from the subnet range.
+ *The instances.
*/ - Ipv6AddressCount?: number; + Instances: string[] | undefined; /** - *The specific IPv6 addresses from the subnet range.
+ *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]
The ID of the network interface.
+ *The time at which the reported instance health state began.
*/ - NetworkInterfaceId?: string; + StartTime?: Date; /** - *The IPv4 address of the network interface within the subnet.
+ *The status of all instances listed.
*/ - PrivateIpAddress?: string; + Status: ReportStatusType | string | undefined; +} +export namespace ReportInstanceStatusRequest { /** - *The private IPv4 addresses.
+ * @internal */ - PrivateIpAddressConfigs?: ScheduledInstancesPrivateIpAddressConfig[]; + export const filterSensitiveLog = (obj: ReportInstanceStatusRequest): any => ({ + ...obj, + }); +} +/** + *Contains the parameters for RequestSpotFleet.
+ */ +export interface RequestSpotFleetRequest { /** - *The number of secondary private IPv4 addresses.
+ *Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The ID of the subnet.
+ *The configuration for the Spot Fleet request.
*/ - SubnetId?: string; + SpotFleetRequestConfig: SpotFleetRequestConfigData | undefined; } -export namespace ScheduledInstancesNetworkInterface { +export namespace RequestSpotFleetRequest { /** * @internal */ - export const filterSensitiveLog = (obj: ScheduledInstancesNetworkInterface): any => ({ + export const filterSensitiveLog = (obj: RequestSpotFleetRequest): any => ({ ...obj, }); } /** - *Describes the placement for a Scheduled Instance.
+ *Contains the output of RequestSpotFleet.
*/ -export interface ScheduledInstancesPlacement { - /** - *The Availability Zone.
- */ - AvailabilityZone?: string; - +export interface RequestSpotFleetResponse { /** - *The name of the placement group.
+ *The ID of the Spot Fleet request.
*/ - GroupName?: string; + SpotFleetRequestId?: string; } -export namespace ScheduledInstancesPlacement { +export namespace RequestSpotFleetResponse { /** * @internal */ - export const filterSensitiveLog = (obj: ScheduledInstancesPlacement): any => ({ + export const filterSensitiveLog = (obj: RequestSpotFleetResponse): any => ({ ...obj, }); } /** - *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
.
Describes the launch specification for an instance.
*/ -export interface ScheduledInstancesLaunchSpecification { +export interface RequestSpotLaunchSpecification { /** - *The block device mapping entries.
+ *One or more security group IDs.
+ */ + SecurityGroupIds?: string[]; + + /** + *One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
+ */ + SecurityGroups?: string[]; + + /** + *Deprecated.
+ */ + AddressingType?: string; + + /** + *One or more 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.
*/ - BlockDeviceMappings?: ScheduledInstancesBlockDeviceMapping[]; + BlockDeviceMappings?: BlockDeviceMapping[]; /** - *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.
+ *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
*
The IAM instance profile.
*/ - IamInstanceProfile?: ScheduledInstancesIamInstanceProfile; + IamInstanceProfile?: IamInstanceProfileSpecification; /** - *The ID of the Amazon Machine Image (AMI).
+ *The ID of the AMI.
*/ - ImageId: string | undefined; + ImageId?: string; /** *The instance type.
*/ - InstanceType?: string; + InstanceType?: _InstanceType | string; /** *The ID of the kernel.
@@ -6850,19 +8715,21 @@ export interface ScheduledInstancesLaunchSpecification { KeyName?: string; /** - *Enable or disable monitoring for the instances.
+ *Indicates whether basic or detailed monitoring is enabled for the instance.
+ *Default: Disabled
*/ - Monitoring?: ScheduledInstancesMonitoring; + Monitoring?: RunInstancesMonitoringEnabled; /** - *The network interfaces.
+ *One or more network interfaces. If you specify a network interface, you must specify + * subnet IDs and security group IDs using the network interface.
*/ - NetworkInterfaces?: ScheduledInstancesNetworkInterface[]; + NetworkInterfaces?: InstanceNetworkInterfaceSpecification[]; /** - *The placement information.
+ *The placement information for the instance.
*/ - Placement?: ScheduledInstancesPlacement; + Placement?: SpotPlacement; /** *The ID of the RAM disk.
@@ -6870,114 +8737,180 @@ export interface ScheduledInstancesLaunchSpecification { RamdiskId?: string; /** - *The IDs of the security groups.
- */ - SecurityGroupIds?: string[]; - - /** - *The ID of the subnet in which to launch the instances.
+ *The ID of the subnet in which to launch the instance.
*/ SubnetId?: string; /** - *The base64-encoded MIME user data.
+ *The Base64-encoded user data for the instance. User data is limited to 16 KB.
*/ UserData?: string; } -export namespace ScheduledInstancesLaunchSpecification { +export namespace RequestSpotLaunchSpecification { /** * @internal */ - export const filterSensitiveLog = (obj: ScheduledInstancesLaunchSpecification): any => ({ + export const filterSensitiveLog = (obj: RequestSpotLaunchSpecification): any => ({ ...obj, }); } /** - *Contains the parameters for RunScheduledInstances.
+ *Contains the parameters for RequestSpotInstances.
*/ -export interface RunScheduledInstancesRequest { +export interface RequestSpotInstancesRequest { /** - *Unique, case-sensitive identifier that ensures the idempotency of the request. - * For more information, see Ensuring Idempotency.
+ *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.
+ */ + AvailabilityZoneGroup?: string; + + /** + *Deprecated.
+ */ + BlockDurationMinutes?: number; + + /** + *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.
*/ ClientToken?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Checks whether you have the required permissions for the action, without actually
+ * making the request, and provides an error response. If you have the required
+ * permissions, the error response is DryRunOperation
. Otherwise, it is
+ * UnauthorizedOperation
.
The maximum number of Spot Instances to launch.
+ *Default: 1
+ */ + InstanceCount?: number; + + /** + *The instance launch group. Launch groups are Spot Instances that launch together and + * terminate together.
+ *Default: Instances are launched and terminated individually
+ */ + LaunchGroup?: string; + + /** + *The launch specification.
+ */ + LaunchSpecification?: RequestSpotLaunchSpecification; + + /** + *The maximum price per hour that you are willing to pay for a Spot Instance. The + * default is the On-Demand price.
+ */ + SpotPrice?: string; + + /** + *The Spot Instance request type.
+ *Default: one-time
+ *
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.
*/ - DryRun?: boolean; + ValidFrom?: Date; /** - *The number of instances.
- *Default: 1
+ *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.
The launch specification. You must match the instance type, Availability Zone, - * network, and platform of the schedule that you purchased.
+ *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.
The Scheduled Instance ID.
+ *The behavior when a Spot Instance is interrupted. The default is terminate
.
Contains the output of RunScheduledInstances.
+ *Contains the output of RequestSpotInstances.
*/ -export interface RunScheduledInstancesResult { +export interface RequestSpotInstancesResult { /** - *The IDs of the newly launched instances.
+ *One or more Spot Instance requests.
*/ - InstanceIdSet?: string[]; + SpotInstanceRequests?: SpotInstanceRequest[]; } -export namespace RunScheduledInstancesResult { +export namespace RequestSpotInstancesResult { /** * @internal */ - export const filterSensitiveLog = (obj: RunScheduledInstancesResult): any => ({ + export const filterSensitiveLog = (obj: RequestSpotInstancesResult): any => ({ ...obj, }); } -export interface SearchLocalGatewayRoutesRequest { - /** - *The ID of the local gateway route table.
- */ - LocalGatewayRouteTableId: string | undefined; - - /** - *One or more filters.
- */ - Filters?: Filter[]; - +export interface ResetAddressAttributeRequest { /** - *The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
[EC2-VPC] The allocation ID.
*/ - MaxResults?: number; + AllocationId: string | undefined; /** - *The token for the next page of results.
+ *The attribute of the IP address.
*/ - NextToken?: string; + Attribute: AddressAttributeName | string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request, @@ -6987,96 +8920,32 @@ export interface SearchLocalGatewayRoutesRequest { DryRun?: boolean; } -export namespace SearchLocalGatewayRoutesRequest { +export namespace ResetAddressAttributeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: SearchLocalGatewayRoutesRequest): any => ({ + export const filterSensitiveLog = (obj: ResetAddressAttributeRequest): any => ({ ...obj, }); } -export interface SearchLocalGatewayRoutesResult { - /** - *
Information about the routes.
- */ - Routes?: LocalGatewayRoute[]; - +export interface ResetAddressAttributeResult { /** - *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Information about the IP address.
*/ - NextToken?: string; + Address?: AddressAttribute; } -export namespace SearchLocalGatewayRoutesResult { +export namespace ResetAddressAttributeResult { /** * @internal */ - export const filterSensitiveLog = (obj: SearchLocalGatewayRoutesResult): any => ({ + export const filterSensitiveLog = (obj: ResetAddressAttributeResult): any => ({ ...obj, }); } -export interface SearchTransitGatewayMulticastGroupsRequest { - /** - *The ID of the transit gateway multicast domain.
- */ - TransitGatewayMulticastDomainId?: string; - - /** - *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.
The maximum number of results to return with a single call.
- * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
- */ - NextToken?: string; - +export interface ResetEbsDefaultKmsKeyIdRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
@@ -7085,312 +8954,301 @@ export interface SearchTransitGatewayMulticastGroupsRequest {
DryRun?: boolean;
}
-export namespace SearchTransitGatewayMulticastGroupsRequest {
+export namespace ResetEbsDefaultKmsKeyIdRequest {
/**
* @internal
*/
- export const filterSensitiveLog = (obj: SearchTransitGatewayMulticastGroupsRequest): any => ({
+ export const filterSensitiveLog = (obj: ResetEbsDefaultKmsKeyIdRequest): any => ({
...obj,
});
}
-export type MembershipType = "igmp" | "static";
-
-/**
- *
Describes the transit gateway multicast group resources.
- */ -export interface TransitGatewayMulticastGroup { +export interface ResetEbsDefaultKmsKeyIdResult { /** - *The IP address assigned to the transit gateway multicast group.
+ *The Amazon Resource Name (ARN) of the default KMS key for EBS encryption by default.
*/ - GroupIpAddress?: string; + KmsKeyId?: string; +} +export namespace ResetEbsDefaultKmsKeyIdResult { /** - *The ID of the transit gateway attachment.
+ * @internal */ - TransitGatewayAttachmentId?: string; + export const filterSensitiveLog = (obj: ResetEbsDefaultKmsKeyIdResult): any => ({ + ...obj, + }); +} + +export type ResetFpgaImageAttributeName = "loadPermission"; +export interface ResetFpgaImageAttributeRequest { /** - *The ID of the subnet.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the resource.
+ *The ID of the AFI.
*/ - ResourceId?: string; + FpgaImageId: string | undefined; /** - *The type of resource, for example a VPC attachment.
+ *The attribute.
*/ - ResourceType?: TransitGatewayAttachmentResourceType | string; + Attribute?: ResetFpgaImageAttributeName | string; +} +export namespace ResetFpgaImageAttributeRequest { /** - *The ID of the Amazon Web Services account that owns the transit gateway multicast domain group resource.
+ * @internal */ - ResourceOwnerId?: string; + export const filterSensitiveLog = (obj: ResetFpgaImageAttributeRequest): any => ({ + ...obj, + }); +} +export interface ResetFpgaImageAttributeResult { /** - *The ID of the transit gateway attachment.
+ *Is true
if the request succeeds, and an error otherwise.
Indicates that the resource is a transit gateway multicast group member.
+ * @internal */ - GroupMember?: boolean; + export const filterSensitiveLog = (obj: ResetFpgaImageAttributeResult): any => ({ + ...obj, + }); +} +export type ResetImageAttributeName = "launchPermission"; + +/** + *Contains the parameters for ResetImageAttribute.
+ */ +export interface ResetImageAttributeRequest { /** - *Indicates that the resource is a transit gateway multicast group member.
+ *The attribute to reset (currently you can only reset the launch permission attribute).
*/ - GroupSource?: boolean; + Attribute: ResetImageAttributeName | string | undefined; /** - *The member type (for example, static
).
The ID of the AMI.
*/ - MemberType?: MembershipType | string; + ImageId: string | undefined; /** - *The source type.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the transit gateway multicast group.
+ *The attribute to reset.
+ *You can only reset the following attributes: kernel
|
+ * ramdisk
| sourceDestCheck
. To change an instance
+ * attribute, use ModifyInstanceAttribute.
The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the instance.
+ */ + InstanceId: string | undefined; } -export namespace SearchTransitGatewayMulticastGroupsResult { +export namespace ResetInstanceAttributeRequest { /** * @internal */ - export const filterSensitiveLog = (obj: SearchTransitGatewayMulticastGroupsResult): any => ({ + export const filterSensitiveLog = (obj: ResetInstanceAttributeRequest): any => ({ ...obj, }); } -export interface SearchTransitGatewayRoutesRequest { - /** - *The ID of the transit gateway route table.
- */ - TransitGatewayRouteTableId: string | undefined; - +/** + *Contains the parameters for ResetNetworkInterfaceAttribute.
+ */ +export interface ResetNetworkInterfaceAttributeRequest { /** - *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
).
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The maximum number of routes to return.
+ *The ID of the network interface.
*/ - MaxResults?: number; + NetworkInterfaceId: string | undefined; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The source/destination checking attribute. Resets the value to true
.
The attribute to reset. Currently, only the attribute for permission to create volumes can + * be reset.
+ */ + Attribute: SnapshotAttributeName | string | undefined; + /** - *Information about the routes.
+ *The ID of the snapshot.
*/ - Routes?: TransitGatewayRoute[]; + SnapshotId: string | undefined; /** - *Indicates whether there are additional routes available.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the instance.
- */ - InstanceId: string | undefined; - +export interface RestoreAddressToClassicRequest { /** *Checks whether you have the required permissions for the action, without actually making the request,
* and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
* Otherwise, it is UnauthorizedOperation
.
The Elastic IP address.
+ */ + PublicIp: string | undefined; } -export namespace SendDiagnosticInterruptRequest { +export namespace RestoreAddressToClassicRequest { /** * @internal */ - export const filterSensitiveLog = (obj: SendDiagnosticInterruptRequest): any => ({ + export const filterSensitiveLog = (obj: RestoreAddressToClassicRequest): any => ({ ...obj, }); } -export interface StartInstancesRequest { - /** - *The IDs of the instances.
- */ - InstanceIds: string[] | undefined; - +export interface RestoreAddressToClassicResult { /** - *Reserved.
+ *The Elastic IP address.
*/ - AdditionalInfo?: string; + PublicIp?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The move status for the IP address.
*/ - DryRun?: boolean; + Status?: Status | string; } -export namespace StartInstancesRequest { +export namespace RestoreAddressToClassicResult { /** * @internal */ - export const filterSensitiveLog = (obj: StartInstancesRequest): any => ({ + export const filterSensitiveLog = (obj: RestoreAddressToClassicResult): any => ({ ...obj, }); } -/** - *Describes an instance state change.
- */ -export interface InstanceStateChange { +export interface RestoreManagedPrefixListVersionRequest { /** - *The current state of the instance.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the instance.
+ *The ID of the prefix list.
*/ - InstanceId?: string; + PrefixListId: string | undefined; /** - *The previous state of the instance.
+ *The version to restore.
+ */ + PreviousVersion: number | undefined; + + /** + *The current version number for the prefix list.
*/ - PreviousState?: InstanceState; + CurrentVersion: number | undefined; } -export namespace InstanceStateChange { +export namespace RestoreManagedPrefixListVersionRequest { /** * @internal */ - export const filterSensitiveLog = (obj: InstanceStateChange): any => ({ + export const filterSensitiveLog = (obj: RestoreManagedPrefixListVersionRequest): any => ({ ...obj, }); } -export interface StartInstancesResult { +export interface RestoreManagedPrefixListVersionResult { /** - *Information about the started instances.
+ *Information about the prefix list.
*/ - StartingInstances?: InstanceStateChange[]; + PrefixList?: ManagedPrefixList; } -export namespace StartInstancesResult { +export namespace RestoreManagedPrefixListVersionResult { /** * @internal */ - export const filterSensitiveLog = (obj: StartInstancesResult): any => ({ + export const filterSensitiveLog = (obj: RestoreManagedPrefixListVersionResult): any => ({ ...obj, }); } -export interface StartNetworkInsightsAnalysisRequest { - /** - *The ID of the path.
- */ - NetworkInsightsPathId: string | undefined; - +export interface RestoreSnapshotFromRecycleBinRequest { /** - *The Amazon Resource Names (ARN) of the resources that the path must traverse.
+ *The ID of the snapshot to restore.
*/ - FilterInArns?: string[]; + SnapshotId: string | undefined; /** *Checks whether you have the required permissions for the action, without actually making the request,
@@ -7398,98 +9256,101 @@ export interface StartNetworkInsightsAnalysisRequest {
* Otherwise, it is UnauthorizedOperation
.
The tags to apply.
+ * @internal */ - TagSpecifications?: TagSpecification[]; + export const filterSensitiveLog = (obj: RestoreSnapshotFromRecycleBinRequest): any => ({ + ...obj, + }); +} +export interface RestoreSnapshotFromRecycleBinResult { /** - *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, - * see How to ensure idempotency.
+ *The ID of the snapshot.
*/ - ClientToken?: string; -} + SnapshotId?: string; -export namespace StartNetworkInsightsAnalysisRequest { /** - * @internal + *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.
*/ - export const filterSensitiveLog = (obj: StartNetworkInsightsAnalysisRequest): any => ({ - ...obj, - }); -} + OutpostArn?: string; -export interface StartNetworkInsightsAnalysisResult { /** - *Information about the network insights analysis.
+ *The description for the snapshot.
*/ - NetworkInsightsAnalysis?: NetworkInsightsAnalysis; -} + Description?: string; -export namespace StartNetworkInsightsAnalysisResult { /** - * @internal + *Indicates whether the snapshot is encrypted.
*/ - export const filterSensitiveLog = (obj: StartNetworkInsightsAnalysisResult): any => ({ - ...obj, - }); -} + Encrypted?: boolean; -export interface StartVpcEndpointServicePrivateDnsVerificationRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
The ID of the Amazon Web Services account that owns the EBS snapshot.
*/ - DryRun?: boolean; + OwnerId?: string; + + /** + *The progress of the snapshot, as a percentage.
+ */ + Progress?: string; /** - *The ID of the endpoint service.
+ *The time stamp when the snapshot was initiated.
*/ - ServiceId: string | undefined; -} + StartTime?: Date; -export namespace StartVpcEndpointServicePrivateDnsVerificationRequest { /** - * @internal + *The state of the snapshot.
*/ - export const filterSensitiveLog = (obj: StartVpcEndpointServicePrivateDnsVerificationRequest): any => ({ - ...obj, - }); -} + State?: SnapshotState | string; -export interface StartVpcEndpointServicePrivateDnsVerificationResult { /** - *Returns true
if the request succeeds; otherwise, it returns an error.
The ID of the volume that was used to create the snapshot.
*/ - ReturnValue?: boolean; + VolumeId?: string; + + /** + *The size of the volume, in GiB.
+ */ + VolumeSize?: number; } -export namespace StartVpcEndpointServicePrivateDnsVerificationResult { +export namespace RestoreSnapshotFromRecycleBinResult { /** * @internal */ - export const filterSensitiveLog = (obj: StartVpcEndpointServicePrivateDnsVerificationResult): any => ({ + export const filterSensitiveLog = (obj: RestoreSnapshotFromRecycleBinResult): any => ({ ...obj, }); } -export interface StopInstancesRequest { +export interface RestoreSnapshotTierRequest { /** - *The IDs of the instances.
+ *The ID of the snapshot to restore.
*/ - InstanceIds: string[] | undefined; + SnapshotId: string | undefined; /** - *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
- *
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
.
Indicates whether to permanently restore an archived snapshot. To permanently restore
+ * an archived snapshot, specify true
and omit the
+ * RestoreSnapshotTierRequest$TemporaryRestoreDays parameter.
Checks whether you have the required permissions for the action, without actually making the request,
@@ -7497,59 +9358,70 @@ export interface StopInstancesRequest {
* Otherwise, it is UnauthorizedOperation
.
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
- *
The ID of the snapshot.
+ */ + SnapshotId?: string; + + /** + *The date and time when the snapshot restore process started.
+ */ + RestoreStartTime?: Date; + + /** + *For temporary restores only. The number of days for which the archived snapshot + * is temporarily restored.
+ */ + RestoreDuration?: number; + /** - *Information about the stopped instances.
+ *Indicates whether the snapshot is permanently restored. true
indicates a permanent
+ * restore. false
indicates a temporary restore.
The ID of the Client VPN endpoint to which the client is connected.
+ *The ID of the Client VPN endpoint with which the authorization rule is associated.
*/ ClientVpnEndpointId: string | undefined; /** - *The ID of the client connection to be terminated.
+ *The IPv4 address range, in CIDR notation, of the network for which access is being removed.
+ */ + TargetNetworkCidr: string | undefined; + + /** + *The ID of the Active Directory group for which to revoke access.
*/ - ConnectionId?: string; + AccessGroupId?: string; /** - *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.
+ *Indicates whether access should be revoked for all clients.
*/ - Username?: string; + RevokeAllGroups?: boolean; /** *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Information about a terminated Client VPN endpoint client connection.
- */ -export interface TerminateConnectionStatus { +export interface RevokeClientVpnIngressResult { /** - *The ID of the client connection.
+ *The current state of the authorization rule.
*/ - ConnectionId?: string; + Status?: ClientVpnAuthorizationRuleStatus; +} +export namespace RevokeClientVpnIngressResult { /** - *The state of the client connection.
+ * @internal */ - PreviousStatus?: ClientVpnConnectionStatus; + export const filterSensitiveLog = (obj: RevokeClientVpnIngressResult): any => ({ + ...obj, + }); +} +export interface RevokeSecurityGroupEgressRequest { /** - *A message about the status of the client connection, if applicable.
+ *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the security group.
*/ - export const filterSensitiveLog = (obj: TerminateConnectionStatus): any => ({ - ...obj, - }); -} + GroupId: string | undefined; -export interface TerminateClientVpnConnectionsResult { /** - *The ID of the Client VPN endpoint.
+ *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.
*/ - ClientVpnEndpointId?: string; + IpPermissions?: IpPermission[]; /** - *The user who established the terminated client connections.
+ *The IDs of the security group rules.
*/ - Username?: string; + SecurityGroupRuleIds?: string[]; /** - *The current state of the client connections.
+ *Not supported. Use a set of IP permissions to specify the CIDR.
*/ - ConnectionStatuses?: TerminateConnectionStatus[]; -} + CidrIp?: string; -export namespace TerminateClientVpnConnectionsResult { /** - * @internal + *Not supported. Use a set of IP permissions to specify the port.
*/ - export const filterSensitiveLog = (obj: TerminateClientVpnConnectionsResult): any => ({ - ...obj, - }); -} + FromPort?: number; -export interface TerminateInstancesRequest { /** - *The IDs of the instances.
- *Constraints: Up to 1000 instance IDs. We recommend breaking up this request into - * smaller batches.
+ *Not supported. Use a set of IP permissions to specify the protocol name or + * number.
*/ - InstanceIds: string[] | undefined; + IpProtocol?: string; /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Not supported. Use a set of IP permissions to specify the port.
*/ - DryRun?: boolean; -} + ToPort?: number; -export namespace TerminateInstancesRequest { /** - * @internal + *Not supported. Use a set of IP permissions to specify a + * destination security group.
*/ - export const filterSensitiveLog = (obj: TerminateInstancesRequest): any => ({ - ...obj, - }); -} + SourceSecurityGroupName?: string; -export interface TerminateInstancesResult { /** - *Information about the terminated instances.
+ *Not supported. Use a set of IP permissions to specify a destination security + * group.
*/ - TerminatingInstances?: InstanceStateChange[]; + SourceSecurityGroupOwnerId?: string; } -export namespace TerminateInstancesResult { +export namespace RevokeSecurityGroupEgressRequest { /** * @internal */ - export const filterSensitiveLog = (obj: TerminateInstancesResult): any => ({ + export const filterSensitiveLog = (obj: RevokeSecurityGroupEgressRequest): any => ({ ...obj, }); } -export interface UnassignIpv6AddressesRequest { - /** - *The IPv6 addresses to unassign from the network interface.
- */ - Ipv6Addresses?: string[]; - +export interface RevokeSecurityGroupEgressResult { /** - *One or more IPv6 prefixes to unassign from the network interface.
+ *Returns true
if the request succeeds; otherwise, returns an error.
The ID of the network interface.
+ *The outbound rules that were unknown to the service. In some cases,
+ * unknownIpPermissionSet
might be in a different format from the request
+ * parameter.
The ID of the network interface.
+ *The CIDR IP address range. You can't specify this parameter when specifying a source security group.
*/ - NetworkInterfaceId?: string; + CidrIp?: string; /** - *The IPv6 addresses that have been unassigned from the network interface.
+ *The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number,
+ * use -1
to specify all ICMP types.
The IPv4 prefixes that have been unassigned from the network interface.
+ *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.
*/ - UnassignedIpv6Prefixes?: string[]; -} + GroupId?: string; -export namespace UnassignIpv6AddressesResult { /** - * @internal + *[EC2-Classic, default VPC] The name of the security group. You must specify either the + * security group ID or the security group name in the request.
*/ - export const filterSensitiveLog = (obj: UnassignIpv6AddressesResult): any => ({ - ...obj, - }); -} + GroupName?: string; -/** - *Contains the parameters for UnassignPrivateIpAddresses.
- */ -export interface UnassignPrivateIpAddressesRequest { /** - *The ID of the network interface.
+ *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.
*/ - NetworkInterfaceId: string | undefined; + IpPermissions?: IpPermission[]; /** - *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.
+ *The IP protocol name (tcp
, udp
, icmp
) or number
+ * (see Protocol Numbers).
+ * Use -1
to specify all.
The IPv4 prefixes to unassign from the network interface.
+ *[EC2-Classic, 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. For EC2-VPC, 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.
*/ - Ipv4Prefixes?: string[]; -} + SourceSecurityGroupName?: string; -export namespace UnassignPrivateIpAddressesRequest { /** - * @internal + *[EC2-Classic] The Amazon Web Services account ID of 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. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.
*/ - export const filterSensitiveLog = (obj: UnassignPrivateIpAddressesRequest): any => ({ - ...obj, - }); -} + SourceSecurityGroupOwnerId?: string; -export interface UnmonitorInstancesRequest { /** - *The IDs of the instances.
+ *The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number,
+ * use -1
to specify all ICMP codes for the ICMP type.
Checks whether you have the required permissions for the action, without actually making the request,
@@ -7755,211 +9602,226 @@ export interface UnmonitorInstancesRequest {
* Otherwise, it is UnauthorizedOperation
.
The IDs of the security group rules.
+ */ + SecurityGroupRuleIds?: string[]; } -export namespace UnmonitorInstancesRequest { +export namespace RevokeSecurityGroupIngressRequest { /** * @internal */ - export const filterSensitiveLog = (obj: UnmonitorInstancesRequest): any => ({ + export const filterSensitiveLog = (obj: RevokeSecurityGroupIngressRequest): any => ({ ...obj, }); } -export interface UnmonitorInstancesResult { +export interface RevokeSecurityGroupIngressResult { /** - *The monitoring information.
+ *Returns true
if the request succeeds; otherwise, returns an error.
The inbound rules that were unknown to the service. In some cases,
+ * unknownIpPermissionSet
might be in a different format from the request
+ * parameter.
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.
+ *The CPU options for the instance. Both the core count and threads per core must be + * specified in the request.
*/ -export interface SecurityGroupRuleDescription { +export interface CpuOptionsRequest { /** - *The ID of the security group rule.
+ *The number of CPU cores for the instance.
*/ - SecurityGroupRuleId?: string; + CoreCount?: number; /** - *The description of the security group rule.
+ *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
.
Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
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.
- */ - GroupId?: string; - - /** - *[Default VPC] The name of the security group. You must specify either the security group - * ID or the security group name in the request.
- */ - GroupName?: string; - +/** + *+ * Describes an elastic inference accelerator. + *
+ */ +export interface ElasticInferenceAccelerator { /** - *The IP permissions for the security group rule. You must specify either the IP permissions - * or the description.
+ *
+ * The type of elastic inference accelerator. The possible values are eia1.medium
, eia1.large
, eia1.xlarge
, eia2.medium
, eia2.large
, and eia2.xlarge
.
+ *
The description for the egress security group rules. You must specify either the - * description or the IP permissions.
+ *+ * The number of elastic inference accelerators to attach to the instance. + *
+ *Default: 1
*/ - SecurityGroupRuleDescriptions?: SecurityGroupRuleDescription[]; + Count?: number; } -export namespace UpdateSecurityGroupRuleDescriptionsEgressRequest { +export namespace ElasticInferenceAccelerator { /** * @internal */ - export const filterSensitiveLog = (obj: UpdateSecurityGroupRuleDescriptionsEgressRequest): any => ({ + export const filterSensitiveLog = (obj: ElasticInferenceAccelerator): any => ({ ...obj, }); } -export interface UpdateSecurityGroupRuleDescriptionsEgressResult { +/** + *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.
+ */ +export interface EnclaveOptionsRequest { /** - *Returns true
if the request succeeds; otherwise, returns an error.
To enable the instance for Amazon Web Services Nitro Enclaves, set this parameter to true
.
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.
+ */ +export interface HibernationOptionsRequest { /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
If you set this parameter to true
, your instance is enabled for
+ * hibernation.
Default: false
+ *
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.
+ * @internal */ - GroupId?: string; + export const filterSensitiveLog = (obj: HibernationOptionsRequest): any => ({ + ...obj, + }); +} +/** + *The options for Spot Instances.
+ */ +export interface SpotMarketOptions { /** - *[EC2-Classic, default VPC] The name of the security group. You must specify either the - * security group ID or the security group name in the request.
+ *The maximum hourly price you're willing to pay for the Spot Instances. The default is + * the On-Demand price.
*/ - GroupName?: string; + MaxPrice?: string; /** - *The IP permissions for the security group rule. You must specify either IP permissions - * or a description.
+ *The Spot Instance request type. For RunInstances, persistent Spot
+ * Instance requests are only supported when the instance interruption behavior is either hibernate
or
+ * stop
.
[VPC only] The description for the ingress security group rules. You must specify either - * a description or IP permissions.
+ *Deprecated.
*/ - SecurityGroupRuleDescriptions?: SecurityGroupRuleDescription[]; -} + BlockDurationMinutes?: number; -export namespace UpdateSecurityGroupRuleDescriptionsIngressRequest { /** - * @internal + *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.
Returns true
if the request succeeds; otherwise, returns an error.
The behavior when a Spot Instance is interrupted. The default is
+ * terminate
.
The address range, in CIDR notation.
- */ - Cidr: string | undefined; - - /** - *Checks whether you have the required permissions for the action, without actually making the request,
- * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
- * Otherwise, it is UnauthorizedOperation
.
Describes the market (purchasing) option for the instances.
+ */ +export interface InstanceMarketOptionsRequest { /** - * @internal + *The market type.
*/ - export const filterSensitiveLog = (obj: WithdrawByoipCidrRequest): any => ({ - ...obj, - }); -} + MarketType?: MarketType | string; -export interface WithdrawByoipCidrResult { /** - *Information about the address pool.
+ *The options for Spot Instances.
*/ - ByoipCidr?: ByoipCidr; + SpotOptions?: SpotMarketOptions; } -export namespace WithdrawByoipCidrResult { +export namespace InstanceMarketOptionsRequest { /** * @internal */ - export const filterSensitiveLog = (obj: WithdrawByoipCidrResult): any => ({ + export const filterSensitiveLog = (obj: InstanceMarketOptionsRequest): any => ({ ...obj, }); } diff --git a/clients/client-ec2/src/models/models_6.ts b/clients/client-ec2/src/models/models_6.ts new file mode 100644 index 000000000000..e655e8951b35 --- /dev/null +++ b/clients/client-ec2/src/models/models_6.ts @@ -0,0 +1,1982 @@ +import { + _InstanceType, + ByoipCidr, + HostnameType, + IamInstanceProfileSpecification, + IpPermission, + TagSpecification, + TransitGatewayAttachmentResourceType, +} from "./models_0"; +import { + BlockDeviceMapping, + CreditSpecificationRequest, + ElasticGpuSpecification, + InstanceIpv6Address, + LocalGatewayRoute, + Placement, + ShutdownBehavior, +} from "./models_1"; +import { ClientVpnConnectionStatus, Filter, TransitGatewayRoute } from "./models_2"; +import { + HttpTokensState, + InstanceMetadataEndpointState, + InstanceMetadataProtocolState, + InstanceState, + NetworkInsightsAccessScopeAnalysis, + NetworkInsightsAnalysis, +} from "./models_3"; +import { InstanceNetworkInterfaceSpecification, RunInstancesMonitoringEnabled } from "./models_4"; +import { + CapacityReservationSpecification, + CpuOptionsRequest, + ElasticInferenceAccelerator, + EnclaveOptionsRequest, + HibernationOptionsRequest, + InstanceMarketOptionsRequest, + InstanceMonitoring, +} from "./models_5"; + +/** + *The launch template to use. You must specify either the launch template ID or + * launch template name in the request, but not both.
+ */ +export interface LaunchTemplateSpecification { + /** + *The ID of the launch template.
+ */ + LaunchTemplateId?: string; + + /** + *The name of the launch template.
+ */ + LaunchTemplateName?: string; + + /** + *The version number of the launch template.
+ *Default: The default version for the launch template.
+ */ + Version?: string; +} + +export namespace LaunchTemplateSpecification { + /** + * @internal + */ + export const filterSensitiveLog = (obj: LaunchTemplateSpecification): any => ({ + ...obj, + }); +} + +/** + *Describes a license configuration.
+ */ +export interface LicenseConfigurationRequest { + /** + *The Amazon Resource Name (ARN) of the license configuration.
+ */ + LicenseConfigurationArn?: string; +} + +export namespace LicenseConfigurationRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: LicenseConfigurationRequest): any => ({ + ...obj, + }); +} + +/** + *The metadata options for the instance.
+ */ +export interface InstanceMetadataOptionsRequest { + /** + *The state of token usage for your instance metadata requests. If the parameter is not
+ * specified in the request, the default state is optional
.
If the state is optional
, you can choose to retrieve instance metadata
+ * with or without a signed token header on your request. If you retrieve the IAM role
+ * credentials without a token, the version 1.0 role credentials are returned. If you
+ * retrieve the IAM role credentials using a valid signed token, the version 2.0 role
+ * credentials are returned.
If the state is required
, you must send a signed token header with any
+ * instance metadata retrieval requests. In this state, retrieving the IAM role credentials
+ * always returns the version 2.0 credentials; the version 1.0 credentials are not
+ * available.
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
+ */ + HttpPutResponseHopLimit?: number; + + /** + *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.
Enables or disables the IPv6 endpoint for the instance metadata service.
+ */ + HttpProtocolIpv6?: InstanceMetadataProtocolState | string; +} + +export namespace InstanceMetadataOptionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: InstanceMetadataOptionsRequest): any => ({ + ...obj, + }); +} + +/** + *Describes the options for instance hostnames.
+ */ +export interface PrivateDnsNameOptionsRequest { + /** + *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.
+ */ + HostnameType?: HostnameType | string; + + /** + *Indicates whether to respond to DNS queries for instance hostnames with DNS A records.
+ */ + EnableResourceNameDnsARecord?: boolean; + + /** + *Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.
+ */ + EnableResourceNameDnsAAAARecord?: boolean; +} + +export namespace PrivateDnsNameOptionsRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: PrivateDnsNameOptionsRequest): any => ({ + ...obj, + }); +} + +export interface RunInstancesRequest { + /** + *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.
+ */ + BlockDeviceMappings?: BlockDeviceMapping[]; + + /** + *The ID of the AMI. An AMI ID is required to launch an instance and must be + * specified here or in a launch template.
+ */ + ImageId?: string; + + /** + *The instance type. For more information, see Instance types in the + * Amazon EC2 User Guide.
+ *Default: m1.small
+ *
[EC2-VPC] 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.
+ */ + Ipv6AddressCount?: number; + + /** + *[EC2-VPC] 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.
+ */ + Ipv6Addresses?: InstanceIpv6Address[]; + + /** + *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.
+ *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.
+ *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.
+ */ + MaxCount: number | undefined; + + /** + *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.
+ */ + MinCount: number | undefined; + + /** + *Specifies whether detailed monitoring is enabled for the instance.
+ */ + Monitoring?: RunInstancesMonitoringEnabled; + + /** + *The placement for the instance.
+ */ + Placement?: Placement; + + /** + *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.
+ *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.
+ */ + SecurityGroupIds?: string[]; + + /** + *[EC2-Classic, default VPC] The names of the security groups. For a nondefault VPC, you + * must use security group IDs instead.
+ *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.
+ */ + SecurityGroups?: string[]; + + /** + *[EC2-VPC] 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.
+ */ + SubnetId?: string; + + /** + *The user data 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.
+ */ + UserData?: string; + + /** + *Reserved.
+ */ + AdditionalInfo?: string; + + /** + *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
+ */ + ClientToken?: string; + + /** + *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
+ *
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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
+ *
The name or Amazon Resource Name (ARN) of an IAM instance profile.
+ */ + IamInstanceProfile?: IamInstanceProfileSpecification; + + /** + *Indicates whether an instance stops or terminates when you initiate shutdown from the + * instance (using the operating system command for system shutdown).
+ *Default: stop
+ *
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.
+ */ + NetworkInterfaces?: InstanceNetworkInterfaceSpecification[]; + + /** + *[EC2-VPC] 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.
+ */ + PrivateIpAddress?: string; + + /** + *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.
+ */ + ElasticGpuSpecification?: 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.
+ */ + ElasticInferenceAccelerators?: ElasticInferenceAccelerator[]; + + /** + *The tags to apply to the resources during launch. You can only tag instances and + * volumes on launch. The specified tags are applied to all instances or volumes that are + * created during launch. To tag a resource after it has been created, see CreateTags.
+ */ + TagSpecifications?: TagSpecification[]; + + /** + *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.
+ */ + LaunchTemplate?: LaunchTemplateSpecification; + + /** + *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
.
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
+ * instances)
For T3 instances with host
tenancy, only standard
is
+ * supported.
The CPU options for the instance. For more information, see Optimize CPU options in the Amazon EC2 User Guide.
+ */ + CpuOptions?: CpuOptionsRequest; + + /** + *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).
Indicates whether an instance is enabled for hibernation. 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.
+ */ + HibernationOptions?: HibernationOptionsRequest; + + /** + *The license configurations.
+ */ + LicenseSpecifications?: LicenseConfigurationRequest[]; + + /** + *The metadata options for the instance. For more information, see Instance metadata and user data.
+ */ + MetadataOptions?: InstanceMetadataOptionsRequest; + + /** + *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.
+ */ + EnclaveOptions?: EnclaveOptionsRequest; + + /** + *The options for the instance hostname. The default values are inherited from the subnet.
+ */ + PrivateDnsNameOptions?: PrivateDnsNameOptionsRequest; +} + +export namespace RunInstancesRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: RunInstancesRequest): any => ({ + ...obj, + }); +} + +/** + *Describes an EBS volume for a Scheduled Instance.
+ */ +export interface ScheduledInstancesEbs { + /** + *Indicates whether the volume is deleted on instance termination.
+ */ + DeleteOnTermination?: boolean; + + /** + *Indicates whether the volume is encrypted. You can attached encrypted volumes only to instances that support them.
+ */ + Encrypted?: boolean; + + /** + *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.
The ID of the snapshot.
+ */ + SnapshotId?: string; + + /** + *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.
+ */ + VolumeSize?: number; + + /** + *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
+ *
Describes a block device mapping for a Scheduled Instance.
+ */ +export interface ScheduledInstancesBlockDeviceMapping { + /** + *The device name (for example, /dev/sdh
or xvdh
).
Parameters used to set up EBS volumes automatically when the instance is launched.
+ */ + Ebs?: ScheduledInstancesEbs; + + /** + *To omit the device from the block device mapping, specify an empty string.
+ */ + NoDevice?: string; + + /** + *The virtual device name (ephemeral
N). 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.
+ */ + VirtualName?: string; +} + +export namespace ScheduledInstancesBlockDeviceMapping { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ScheduledInstancesBlockDeviceMapping): any => ({ + ...obj, + }); +} + +/** + *Describes an IAM instance profile for a Scheduled Instance.
+ */ +export interface ScheduledInstancesIamInstanceProfile { + /** + *The Amazon Resource Name (ARN).
+ */ + Arn?: string; + + /** + *The name.
+ */ + Name?: string; +} + +export namespace ScheduledInstancesIamInstanceProfile { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ScheduledInstancesIamInstanceProfile): any => ({ + ...obj, + }); +} + +/** + *Describes whether monitoring is enabled for a Scheduled Instance.
+ */ +export interface ScheduledInstancesMonitoring { + /** + *Indicates whether monitoring is enabled.
+ */ + Enabled?: boolean; +} + +export namespace ScheduledInstancesMonitoring { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ScheduledInstancesMonitoring): any => ({ + ...obj, + }); +} + +/** + *Describes an IPv6 address.
+ */ +export interface ScheduledInstancesIpv6Address { + /** + *The IPv6 address.
+ */ + Ipv6Address?: string; +} + +export namespace ScheduledInstancesIpv6Address { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ScheduledInstancesIpv6Address): any => ({ + ...obj, + }); +} + +/** + *Describes a private IPv4 address for a Scheduled Instance.
+ */ +export interface ScheduledInstancesPrivateIpAddressConfig { + /** + *Indicates whether this is a primary IPv4 address. Otherwise, this is a secondary IPv4 address.
+ */ + Primary?: boolean; + + /** + *The IPv4 address.
+ */ + PrivateIpAddress?: string; +} + +export namespace ScheduledInstancesPrivateIpAddressConfig { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ScheduledInstancesPrivateIpAddressConfig): any => ({ + ...obj, + }); +} + +/** + *Describes a network interface for a Scheduled Instance.
+ */ +export interface ScheduledInstancesNetworkInterface { + /** + *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
.
Indicates whether to delete the interface when the instance is terminated.
+ */ + DeleteOnTermination?: boolean; + + /** + *The description.
+ */ + Description?: string; + + /** + *The index of the device for the network interface attachment.
+ */ + DeviceIndex?: number; + + /** + *The IDs of the security groups.
+ */ + Groups?: string[]; + + /** + *The number of IPv6 addresses to assign to the network interface. The IPv6 addresses are automatically selected from the subnet range.
+ */ + Ipv6AddressCount?: number; + + /** + *The specific IPv6 addresses from the subnet range.
+ */ + Ipv6Addresses?: ScheduledInstancesIpv6Address[]; + + /** + *The ID of the network interface.
+ */ + NetworkInterfaceId?: string; + + /** + *The IPv4 address of the network interface within the subnet.
+ */ + PrivateIpAddress?: string; + + /** + *The private IPv4 addresses.
+ */ + PrivateIpAddressConfigs?: ScheduledInstancesPrivateIpAddressConfig[]; + + /** + *The number of secondary private IPv4 addresses.
+ */ + SecondaryPrivateIpAddressCount?: number; + + /** + *The ID of the subnet.
+ */ + SubnetId?: string; +} + +export namespace ScheduledInstancesNetworkInterface { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ScheduledInstancesNetworkInterface): any => ({ + ...obj, + }); +} + +/** + *Describes the placement for a Scheduled Instance.
+ */ +export interface ScheduledInstancesPlacement { + /** + *The Availability Zone.
+ */ + AvailabilityZone?: string; + + /** + *The name of the placement group.
+ */ + GroupName?: string; +} + +export namespace ScheduledInstancesPlacement { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ScheduledInstancesPlacement): any => ({ + ...obj, + }); +} + +/** + *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
.
The block device mapping entries.
+ */ + BlockDeviceMappings?: ScheduledInstancesBlockDeviceMapping[]; + + /** + *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
+ *
The IAM instance profile.
+ */ + IamInstanceProfile?: ScheduledInstancesIamInstanceProfile; + + /** + *The ID of the Amazon Machine Image (AMI).
+ */ + ImageId: string | undefined; + + /** + *The instance type.
+ */ + InstanceType?: string; + + /** + *The ID of the kernel.
+ */ + KernelId?: string; + + /** + *The name of the key pair.
+ */ + KeyName?: string; + + /** + *Enable or disable monitoring for the instances.
+ */ + Monitoring?: ScheduledInstancesMonitoring; + + /** + *The network interfaces.
+ */ + NetworkInterfaces?: ScheduledInstancesNetworkInterface[]; + + /** + *The placement information.
+ */ + Placement?: ScheduledInstancesPlacement; + + /** + *The ID of the RAM disk.
+ */ + RamdiskId?: string; + + /** + *The IDs of the security groups.
+ */ + SecurityGroupIds?: string[]; + + /** + *The ID of the subnet in which to launch the instances.
+ */ + SubnetId?: string; + + /** + *The base64-encoded MIME user data.
+ */ + UserData?: string; +} + +export namespace ScheduledInstancesLaunchSpecification { + /** + * @internal + */ + export const filterSensitiveLog = (obj: ScheduledInstancesLaunchSpecification): any => ({ + ...obj, + }); +} + +/** + *Contains the parameters for RunScheduledInstances.
+ */ +export interface RunScheduledInstancesRequest { + /** + *Unique, case-sensitive identifier that ensures the idempotency of the request. + * For more information, see Ensuring Idempotency.
+ */ + ClientToken?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The number of instances.
+ *Default: 1
+ */ + InstanceCount?: number; + + /** + *The launch specification. You must match the instance type, Availability Zone, + * network, and platform of the schedule that you purchased.
+ */ + LaunchSpecification: ScheduledInstancesLaunchSpecification | undefined; + + /** + *The Scheduled Instance ID.
+ */ + ScheduledInstanceId: string | undefined; +} + +export namespace RunScheduledInstancesRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: RunScheduledInstancesRequest): any => ({ + ...obj, + }); +} + +/** + *Contains the output of RunScheduledInstances.
+ */ +export interface RunScheduledInstancesResult { + /** + *The IDs of the newly launched instances.
+ */ + InstanceIdSet?: string[]; +} + +export namespace RunScheduledInstancesResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: RunScheduledInstancesResult): any => ({ + ...obj, + }); +} + +export interface SearchLocalGatewayRoutesRequest { + /** + *The ID of the local gateway route table.
+ */ + LocalGatewayRouteTableId: string | undefined; + + /** + *One or more filters.
+ */ + Filters?: Filter[]; + + /** + *The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ */ + NextToken?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the routes.
+ */ + Routes?: LocalGatewayRoute[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the transit gateway multicast domain.
+ */ + TransitGatewayMulticastDomainId?: string; + + /** + *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.
The maximum number of results to return with a single call.
+ * To retrieve the remaining results, make another call with the returned nextToken
value.
The token for the next page of results.
+ */ + NextToken?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes the transit gateway multicast group resources.
+ */ +export interface TransitGatewayMulticastGroup { + /** + *The IP address assigned to the transit gateway multicast group.
+ */ + GroupIpAddress?: string; + + /** + *The ID of the transit gateway attachment.
+ */ + TransitGatewayAttachmentId?: string; + + /** + *The ID of the subnet.
+ */ + SubnetId?: string; + + /** + *The ID of the resource.
+ */ + ResourceId?: string; + + /** + *The type of resource, for example a VPC attachment.
+ */ + ResourceType?: TransitGatewayAttachmentResourceType | string; + + /** + *The ID of the Amazon Web Services account that owns the transit gateway multicast domain group resource.
+ */ + ResourceOwnerId?: string; + + /** + *The ID of the transit gateway attachment.
+ */ + NetworkInterfaceId?: string; + + /** + *Indicates that the resource is a transit gateway multicast group member.
+ */ + GroupMember?: boolean; + + /** + *Indicates that the resource is a transit gateway multicast group member.
+ */ + GroupSource?: boolean; + + /** + *The member type (for example, static
).
The source type.
+ */ + SourceType?: MembershipType | string; +} + +export namespace TransitGatewayMulticastGroup { + /** + * @internal + */ + export const filterSensitiveLog = (obj: TransitGatewayMulticastGroup): any => ({ + ...obj, + }); +} + +export interface SearchTransitGatewayMulticastGroupsResult { + /** + *Information about the transit gateway multicast group.
+ */ + MulticastGroups?: TransitGatewayMulticastGroup[]; + + /** + *The token to use to retrieve the next page of results. This value is null
when there are no more results to return.
The ID of the transit gateway route table.
+ */ + TransitGatewayRouteTableId: string | undefined; + + /** + *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
).
The maximum number of routes to return.
+ */ + MaxResults?: number; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the routes.
+ */ + Routes?: TransitGatewayRoute[]; + + /** + *Indicates whether there are additional routes available.
+ */ + AdditionalRoutesAvailable?: boolean; +} + +export namespace SearchTransitGatewayRoutesResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: SearchTransitGatewayRoutesResult): any => ({ + ...obj, + }); +} + +export interface SendDiagnosticInterruptRequest { + /** + *The ID of the instance.
+ */ + InstanceId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The IDs of the instances.
+ */ + InstanceIds: string[] | undefined; + + /** + *Reserved.
+ */ + AdditionalInfo?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Describes an instance state change.
+ */ +export interface InstanceStateChange { + /** + *The current state of the instance.
+ */ + CurrentState?: InstanceState; + + /** + *The ID of the instance.
+ */ + InstanceId?: string; + + /** + *The previous state of the instance.
+ */ + PreviousState?: InstanceState; +} + +export namespace InstanceStateChange { + /** + * @internal + */ + export const filterSensitiveLog = (obj: InstanceStateChange): any => ({ + ...obj, + }); +} + +export interface StartInstancesResult { + /** + *Information about the started instances.
+ */ + StartingInstances?: InstanceStateChange[]; +} + +export namespace StartInstancesResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: StartInstancesResult): any => ({ + ...obj, + }); +} + +export interface StartNetworkInsightsAccessScopeAnalysisRequest { + /** + *The ID of the Network Access Scope.
+ */ + NetworkInsightsAccessScopeId: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The tags to apply.
+ */ + TagSpecifications?: TagSpecification[]; + + /** + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, + * see How to ensure idempotency.
+ */ + ClientToken?: string; +} + +export namespace StartNetworkInsightsAccessScopeAnalysisRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: StartNetworkInsightsAccessScopeAnalysisRequest): any => ({ + ...obj, + }); +} + +export interface StartNetworkInsightsAccessScopeAnalysisResult { + /** + *The Network Access Scope analysis.
+ */ + NetworkInsightsAccessScopeAnalysis?: NetworkInsightsAccessScopeAnalysis; +} + +export namespace StartNetworkInsightsAccessScopeAnalysisResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: StartNetworkInsightsAccessScopeAnalysisResult): any => ({ + ...obj, + }); +} + +export interface StartNetworkInsightsAnalysisRequest { + /** + *The ID of the path.
+ */ + NetworkInsightsPathId: string | undefined; + + /** + *The Amazon Resource Names (ARN) of the resources that the path must traverse.
+ */ + FilterInArns?: string[]; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The tags to apply.
+ */ + TagSpecifications?: TagSpecification[]; + + /** + *Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, + * see How to ensure idempotency.
+ */ + ClientToken?: string; +} + +export namespace StartNetworkInsightsAnalysisRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: StartNetworkInsightsAnalysisRequest): any => ({ + ...obj, + }); +} + +export interface StartNetworkInsightsAnalysisResult { + /** + *Information about the network insights analysis.
+ */ + NetworkInsightsAnalysis?: NetworkInsightsAnalysis; +} + +export namespace StartNetworkInsightsAnalysisResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: StartNetworkInsightsAnalysisResult): any => ({ + ...obj, + }); +} + +export interface StartVpcEndpointServicePrivateDnsVerificationRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The ID of the endpoint service.
+ */ + ServiceId: string | undefined; +} + +export namespace StartVpcEndpointServicePrivateDnsVerificationRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: StartVpcEndpointServicePrivateDnsVerificationRequest): any => ({ + ...obj, + }); +} + +export interface StartVpcEndpointServicePrivateDnsVerificationResult { + /** + *Returns true
if the request succeeds; otherwise, it returns an error.
The IDs of the instances.
+ */ + InstanceIds: string[] | undefined; + + /** + *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
+ *
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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
+ *
Information about the stopped instances.
+ */ + StoppingInstances?: InstanceStateChange[]; +} + +export namespace StopInstancesResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: StopInstancesResult): any => ({ + ...obj, + }); +} + +export interface TerminateClientVpnConnectionsRequest { + /** + *The ID of the Client VPN endpoint to which the client is connected.
+ */ + ClientVpnEndpointId: string | undefined; + + /** + *The ID of the client connection to be terminated.
+ */ + ConnectionId?: string; + + /** + *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.
+ */ + Username?: string; + + /** + *Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
Information about a terminated Client VPN endpoint client connection.
+ */ +export interface TerminateConnectionStatus { + /** + *The ID of the client connection.
+ */ + ConnectionId?: string; + + /** + *The state of the client connection.
+ */ + PreviousStatus?: ClientVpnConnectionStatus; + + /** + *A message about the status of the client connection, if applicable.
+ */ + CurrentStatus?: ClientVpnConnectionStatus; +} + +export namespace TerminateConnectionStatus { + /** + * @internal + */ + export const filterSensitiveLog = (obj: TerminateConnectionStatus): any => ({ + ...obj, + }); +} + +export interface TerminateClientVpnConnectionsResult { + /** + *The ID of the Client VPN endpoint.
+ */ + ClientVpnEndpointId?: string; + + /** + *The user who established the terminated client connections.
+ */ + Username?: string; + + /** + *The current state of the client connections.
+ */ + ConnectionStatuses?: TerminateConnectionStatus[]; +} + +export namespace TerminateClientVpnConnectionsResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: TerminateClientVpnConnectionsResult): any => ({ + ...obj, + }); +} + +export interface TerminateInstancesRequest { + /** + *The IDs of the instances.
+ *Constraints: Up to 1000 instance IDs. We recommend breaking up this request into + * smaller batches.
+ */ + InstanceIds: string[] | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the terminated instances.
+ */ + TerminatingInstances?: InstanceStateChange[]; +} + +export namespace TerminateInstancesResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: TerminateInstancesResult): any => ({ + ...obj, + }); +} + +export interface UnassignIpv6AddressesRequest { + /** + *The IPv6 addresses to unassign from the network interface.
+ */ + Ipv6Addresses?: string[]; + + /** + *One or more IPv6 prefixes to unassign from the network interface.
+ */ + Ipv6Prefixes?: string[]; + + /** + *The ID of the network interface.
+ */ + NetworkInterfaceId: string | undefined; +} + +export namespace UnassignIpv6AddressesRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UnassignIpv6AddressesRequest): any => ({ + ...obj, + }); +} + +export interface UnassignIpv6AddressesResult { + /** + *The ID of the network interface.
+ */ + NetworkInterfaceId?: string; + + /** + *The IPv6 addresses that have been unassigned from the network interface.
+ */ + UnassignedIpv6Addresses?: string[]; + + /** + *The IPv4 prefixes that have been unassigned from the network interface.
+ */ + UnassignedIpv6Prefixes?: string[]; +} + +export namespace UnassignIpv6AddressesResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UnassignIpv6AddressesResult): any => ({ + ...obj, + }); +} + +/** + *Contains the parameters for UnassignPrivateIpAddresses.
+ */ +export interface UnassignPrivateIpAddressesRequest { + /** + *The ID of the network interface.
+ */ + NetworkInterfaceId: string | undefined; + + /** + *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.
+ */ + PrivateIpAddresses?: string[]; + + /** + *The IPv4 prefixes to unassign from the network interface.
+ */ + Ipv4Prefixes?: string[]; +} + +export namespace UnassignPrivateIpAddressesRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UnassignPrivateIpAddressesRequest): any => ({ + ...obj, + }); +} + +export interface UnmonitorInstancesRequest { + /** + *The IDs of the instances.
+ */ + InstanceIds: string[] | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
The monitoring information.
+ */ + InstanceMonitorings?: InstanceMonitoring[]; +} + +export namespace UnmonitorInstancesResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UnmonitorInstancesResult): any => ({ + ...obj, + }); +} + +/** + *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.
+ */ +export interface SecurityGroupRuleDescription { + /** + *The ID of the security group rule.
+ */ + SecurityGroupRuleId?: string; + + /** + *The description of the security group rule.
+ */ + Description?: string; +} + +export namespace SecurityGroupRuleDescription { + /** + * @internal + */ + export const filterSensitiveLog = (obj: SecurityGroupRuleDescription): any => ({ + ...obj, + }); +} + +export interface UpdateSecurityGroupRuleDescriptionsEgressRequest { + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
+ */ + GroupId?: string; + + /** + *[Default VPC] The name of the security group. You must specify either the security group + * ID or the security group name in the request.
+ */ + GroupName?: string; + + /** + *The IP permissions for the security group rule. You must specify either the IP permissions + * or the description.
+ */ + IpPermissions?: IpPermission[]; + + /** + *The description for the egress security group rules. You must specify either the + * description or the IP permissions.
+ */ + SecurityGroupRuleDescriptions?: SecurityGroupRuleDescription[]; +} + +export namespace UpdateSecurityGroupRuleDescriptionsEgressRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UpdateSecurityGroupRuleDescriptionsEgressRequest): any => ({ + ...obj, + }); +} + +export interface UpdateSecurityGroupRuleDescriptionsEgressResult { + /** + *Returns true
if the request succeeds; otherwise, returns an error.
Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
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.
+ */ + GroupId?: string; + + /** + *[EC2-Classic, default VPC] The name of the security group. You must specify either the + * security group ID or the security group name in the request.
+ */ + GroupName?: string; + + /** + *The IP permissions for the security group rule. You must specify either IP permissions + * or a description.
+ */ + IpPermissions?: IpPermission[]; + + /** + *[VPC only] The description for the ingress security group rules. You must specify either + * a description or IP permissions.
+ */ + SecurityGroupRuleDescriptions?: SecurityGroupRuleDescription[]; +} + +export namespace UpdateSecurityGroupRuleDescriptionsIngressRequest { + /** + * @internal + */ + export const filterSensitiveLog = (obj: UpdateSecurityGroupRuleDescriptionsIngressRequest): any => ({ + ...obj, + }); +} + +export interface UpdateSecurityGroupRuleDescriptionsIngressResult { + /** + *Returns true
if the request succeeds; otherwise, returns an error.
The address range, in CIDR notation.
+ */ + Cidr: string | undefined; + + /** + *Checks whether you have the required permissions for the action, without actually making the request,
+ * and provides an error response. If you have the required permissions, the error response is DryRunOperation
.
+ * Otherwise, it is UnauthorizedOperation
.
Information about the address pool.
+ */ + ByoipCidr?: ByoipCidr; +} + +export namespace WithdrawByoipCidrResult { + /** + * @internal + */ + export const filterSensitiveLog = (obj: WithdrawByoipCidrResult): any => ({ + ...obj, + }); +} diff --git a/clients/client-ec2/src/pagination/DescribeIpamPoolsPaginator.ts b/clients/client-ec2/src/pagination/DescribeIpamPoolsPaginator.ts new file mode 100644 index 000000000000..48d6824addd3 --- /dev/null +++ b/clients/client-ec2/src/pagination/DescribeIpamPoolsPaginator.ts @@ -0,0 +1,59 @@ +import { Paginator } from "@aws-sdk/types"; + +import { + DescribeIpamPoolsCommand, + DescribeIpamPoolsCommandInput, + DescribeIpamPoolsCommandOutput, +} from "../commands/DescribeIpamPoolsCommand"; +import { EC2 } from "../EC2"; +import { EC2Client } from "../EC2Client"; +import { EC2PaginationConfiguration } from "./Interfaces"; + +/** + * @private + */ +const makePagedClientRequest = async ( + client: EC2Client, + input: DescribeIpamPoolsCommandInput, + ...args: any +): Promise