import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { EC2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../EC2Client"; import type { StartInstancesRequest, StartInstancesResult } from "../models/models_7"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link StartInstancesCommand}. */ export interface StartInstancesCommandInput extends StartInstancesRequest { } /** * @public * * The output of {@link StartInstancesCommand}. */ export interface StartInstancesCommandOutput extends StartInstancesResult, __MetadataBearer { } declare const StartInstancesCommand_base: { new (input: StartInstancesCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: StartInstancesCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Starts an Amazon EBS-backed instance that you've previously stopped.

*

Instances that use Amazon EBS volumes as their root devices can be quickly stopped and * started. When an instance is stopped, the compute resources are released and you are not * billed for instance usage. However, your root partition Amazon EBS volume remains and * continues to persist your data, and you are charged for Amazon EBS volume usage. You can * restart your instance at any time. Every time you start your instance, Amazon EC2 * charges a one-minute minimum for instance usage, and thereafter charges per second for * instance usage.

*

Before stopping an instance, make sure it is in a state from which it can be * restarted. Stopping an instance does not preserve data stored in RAM.

*

Performing this operation on an instance that uses an instance store as its root * device returns an error.

*

If you attempt to start a T3 instance with host tenancy and the * unlimited CPU credit option, the request fails. The * unlimited CPU credit option is not supported on Dedicated Hosts. Before * you start the instance, either change its CPU credit option to standard, or * change its tenancy to default or dedicated.

*

For more information, see Stop and start Amazon EC2 * instances in the Amazon EC2 User Guide.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { EC2Client, StartInstancesCommand } from "@aws-sdk/client-ec2"; // ES Modules import * // const { EC2Client, StartInstancesCommand } = require("@aws-sdk/client-ec2"); // CommonJS import * // import type { EC2ClientConfig } from "@aws-sdk/client-ec2"; * const config = {}; // type is EC2ClientConfig * const client = new EC2Client(config); * const input = { // StartInstancesRequest * InstanceIds: [ // InstanceIdStringList // required * "STRING_VALUE", * ], * AdditionalInfo: "STRING_VALUE", * DryRun: true || false, * }; * const command = new StartInstancesCommand(input); * const response = await client.send(command); * // { // StartInstancesResult * // StartingInstances: [ // InstanceStateChangeList * // { // InstanceStateChange * // InstanceId: "STRING_VALUE", * // CurrentState: { // InstanceState * // Code: Number("int"), * // Name: "pending" || "running" || "shutting-down" || "terminated" || "stopping" || "stopped", * // }, * // PreviousState: { * // Code: Number("int"), * // Name: "pending" || "running" || "shutting-down" || "terminated" || "stopping" || "stopped", * // }, * // }, * // ], * // }; * * ``` * * @param StartInstancesCommandInput - {@link StartInstancesCommandInput} * @returns {@link StartInstancesCommandOutput} * @see {@link StartInstancesCommandInput} for command's `input` shape. * @see {@link StartInstancesCommandOutput} for command's `response` shape. * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape. * * @throws {@link EC2ServiceException} *

Base exception class for all service exceptions from EC2 service.

* * * @example To start a stopped EC2 instance * ```javascript * // This example starts the specified EC2 instance. * const input = { * InstanceIds: [ * "i-1234567890abcdef0" * ] * }; * const command = new StartInstancesCommand(input); * const response = await client.send(command); * /* response is * { * StartingInstances: [ * { * CurrentState: { * Code: 0, * Name: "pending" * }, * InstanceId: "i-1234567890abcdef0", * PreviousState: { * Code: 80, * Name: "stopped" * } * } * ] * } * *\/ * ``` * * @public */ export declare class StartInstancesCommand extends StartInstancesCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: StartInstancesRequest; output: StartInstancesResult; }; sdk: { input: StartInstancesCommandInput; output: StartInstancesCommandOutput; }; }; }