import { EndpointParameterInstructions } from "@aws-sdk/middleware-endpoint";
import { Command as $Command } from "@aws-sdk/smithy-client";
import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
import { EC2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../EC2Client";
import { DescribeVpcAttributeRequest, DescribeVpcAttributeResult } from "../models/models_5";
/**
 * @public
 *
 * The input for {@link DescribeVpcAttributeCommand}.
 */
export interface DescribeVpcAttributeCommandInput extends DescribeVpcAttributeRequest {
}
/**
 * @public
 *
 * The output of {@link DescribeVpcAttributeCommand}.
 */
export interface DescribeVpcAttributeCommandOutput extends DescribeVpcAttributeResult, __MetadataBearer {
}
/**
 * @public
 * <p>Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.</p>
 * @example
 * Use a bare-bones client and the command you need to make an API call.
 * ```javascript
 * import { EC2Client, DescribeVpcAttributeCommand } from "@aws-sdk/client-ec2"; // ES Modules import
 * // const { EC2Client, DescribeVpcAttributeCommand } = require("@aws-sdk/client-ec2"); // CommonJS import
 * const client = new EC2Client(config);
 * const input = { // DescribeVpcAttributeRequest
 *   Attribute: "enableDnsSupport" || "enableDnsHostnames" || "enableNetworkAddressUsageMetrics", // required
 *   VpcId: "STRING_VALUE", // required
 *   DryRun: true || false,
 * };
 * const command = new DescribeVpcAttributeCommand(input);
 * const response = await client.send(command);
 * ```
 *
 * @param DescribeVpcAttributeCommandInput - {@link DescribeVpcAttributeCommandInput}
 * @returns {@link DescribeVpcAttributeCommandOutput}
 * @see {@link DescribeVpcAttributeCommandInput} for command's `input` shape.
 * @see {@link DescribeVpcAttributeCommandOutput} for command's `response` shape.
 * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape.
 *
 *
 * @example To describe the enableDnsSupport attribute
 * ```javascript
 * // This example describes the enableDnsSupport attribute. This attribute 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.
 * const input = {
 *   "Attribute": "enableDnsSupport",
 *   "VpcId": "vpc-a01106c2"
 * };
 * const command = new DescribeVpcAttributeCommand(input);
 * const response = await client.send(command);
 * /* response ==
 * {
 *   "EnableDnsSupport": {
 *     "Value": true
 *   },
 *   "VpcId": "vpc-a01106c2"
 * }
 * *\/
 * // example id: ec2-describe-vpc-attribute-1
 * ```
 *
 * @example To describe the enableDnsHostnames attribute
 * ```javascript
 * // This example describes the enableDnsHostnames attribute. This attribute 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.
 * const input = {
 *   "Attribute": "enableDnsHostnames",
 *   "VpcId": "vpc-a01106c2"
 * };
 * const command = new DescribeVpcAttributeCommand(input);
 * const response = await client.send(command);
 * /* response ==
 * {
 *   "EnableDnsHostnames": {
 *     "Value": true
 *   },
 *   "VpcId": "vpc-a01106c2"
 * }
 * *\/
 * // example id: ec2-describe-vpc-attribute-2
 * ```
 *
 */
export declare class DescribeVpcAttributeCommand extends $Command<DescribeVpcAttributeCommandInput, DescribeVpcAttributeCommandOutput, EC2ClientResolvedConfig> {
    readonly input: DescribeVpcAttributeCommandInput;
    static getEndpointParameterInstructions(): EndpointParameterInstructions;
    /**
     * @public
     */
    constructor(input: DescribeVpcAttributeCommandInput);
    /**
     * @internal
     */
    resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: EC2ClientResolvedConfig, options?: __HttpHandlerOptions): Handler<DescribeVpcAttributeCommandInput, DescribeVpcAttributeCommandOutput>;
    /**
     * @internal
     */
    private serialize;
    /**
     * @internal
     */
    private deserialize;
}
