import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * AWS::PCS::ComputeNodeGroup resource creates an AWS PCS compute node group.
 */
export declare function getComputeNodeGroup(args: GetComputeNodeGroupArgs, opts?: pulumi.InvokeOptions): Promise<GetComputeNodeGroupResult>;
export interface GetComputeNodeGroupArgs {
    /**
     * The unique Amazon Resource Name (ARN) of the compute node group.
     */
    arn: string;
}
export interface GetComputeNodeGroupResult {
    /**
     * The ID of the Amazon Machine Image (AMI) that AWS PCS uses to launch instances. If not provided, AWS PCS uses the AMI ID specified in the custom launch template.
     */
    readonly amiId?: string;
    /**
     * The unique Amazon Resource Name (ARN) of the compute node group.
     */
    readonly arn?: string;
    /**
     * An Amazon EC2 launch template AWS PCS uses to launch compute nodes.
     */
    readonly customLaunchTemplate?: outputs.pcs.CustomLaunchTemplateProperties;
    /**
     * The list of errors that occurred during compute node group provisioning.
     */
    readonly errorInfo?: outputs.pcs.ComputeNodeGroupErrorInfo[];
    /**
     * The Amazon Resource Name (ARN) of the IAM instance profile used to pass an IAM role when launching EC2 instances. The role contained in your instance profile must have pcs:RegisterComputeNodeGroupInstance permissions attached to provision instances correctly.
     */
    readonly iamInstanceProfileArn?: string;
    /**
     * The generated unique ID of the compute node group.
     */
    readonly id?: string;
    /**
     * Specifies how EC2 instances are purchased on your behalf. AWS PCS supports On-Demand, Spot, Capacity Block, and Interruptible Capacity Reservation instances. For more information, see Instance purchasing options in the Amazon Elastic Compute Cloud User Guide. If you don't provide this option, it defaults to On-Demand.
     */
    readonly purchaseOption?: enums.pcs.ComputeNodeGroupPurchaseOption;
    /**
     * Specifies the boundaries of the compute node group auto scaling.
     */
    readonly scalingConfiguration?: outputs.pcs.ScalingConfigurationProperties;
    /**
     * Additional options related to the Slurm scheduler.
     */
    readonly slurmConfiguration?: outputs.pcs.SlurmConfigurationProperties;
    /**
     * Additional configuration when you specify SPOT as the purchase option.
     */
    readonly spotOptions?: outputs.pcs.SpotOptionsProperties;
    /**
     * The provisioning status of the compute node group. The provisioning status doesn't indicate the overall health of the compute node group.
     */
    readonly status?: enums.pcs.ComputeNodeGroupStatus;
    /**
     * The list of subnet IDs where instances are provisioned by the compute node group. The subnets must be in the same VPC as the cluster.
     */
    readonly subnetIds?: string[];
    /**
     * 1 or more tags added to the resource. Each tag consists of a tag key and tag value. The tag value is optional and can be an empty string.
     */
    readonly tags?: {
        [key: string]: string;
    };
}
/**
 * AWS::PCS::ComputeNodeGroup resource creates an AWS PCS compute node group.
 */
export declare function getComputeNodeGroupOutput(args: GetComputeNodeGroupOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetComputeNodeGroupResult>;
export interface GetComputeNodeGroupOutputArgs {
    /**
     * The unique Amazon Resource Name (ARN) of the compute node group.
     */
    arn: pulumi.Input<string>;
}
