import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * Resource Type definition for AWS::SageMaker::ProcessingJob
 */
export declare class ProcessingJob extends pulumi.CustomResource {
    /**
     * Get an existing ProcessingJob resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ProcessingJob;
    /**
     * Returns true if the given object is an instance of ProcessingJob.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is ProcessingJob;
    /**
     * Configuration to run a processing job in a specified container image.
     */
    readonly appSpecification: pulumi.Output<outputs.sagemaker.ProcessingJobAppSpecification>;
    /**
     * The ARN of an AutoML job associated with this processing job.
     */
    readonly autoMlJobArn: pulumi.Output<string>;
    /**
     * The time at which the processing job was created.
     */
    readonly creationTime: pulumi.Output<string>;
    /**
     * Sets the environment variables in the Docker container.
     */
    readonly environment: pulumi.Output<outputs.sagemaker.ProcessingJobEnvironment | undefined>;
    /**
     * An optional string, up to one KB in size, that contains metadata from the processing container when the processing job exits.
     */
    readonly exitMessage: pulumi.Output<string>;
    /**
     * Associates a SageMaker job as a trial component with an experiment and trial. Specified when you call the [CreateProcessingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateProcessingJob.html) API.
     */
    readonly experimentConfig: pulumi.Output<outputs.sagemaker.ProcessingJobExperimentConfig | undefined>;
    /**
     * A string, up to one KB in size, that contains the reason a processing job failed, if it failed.
     */
    readonly failureReason: pulumi.Output<string>;
    /**
     * The time at which the processing job was last modified.
     */
    readonly lastModifiedTime: pulumi.Output<string>;
    /**
     * The ARN of a monitoring schedule for an endpoint associated with this processing job.
     */
    readonly monitoringScheduleArn: pulumi.Output<string>;
    /**
     * Networking options for a job, such as network traffic encryption between containers, whether to allow inbound and outbound network calls to and from containers, and the VPC subnets and security groups to use for VPC-enabled jobs.
     */
    readonly networkConfig: pulumi.Output<outputs.sagemaker.ProcessingJobNetworkConfig | undefined>;
    /**
     * The time at which the processing job completed.
     */
    readonly processingEndTime: pulumi.Output<string>;
    /**
     * An array of inputs configuring the data to download into the processing container.
     */
    readonly processingInputs: pulumi.Output<outputs.sagemaker.ProcessingJobProcessingInputsObject[] | undefined>;
    /**
     * The Amazon Resource Name (ARN) of the processing job.
     */
    readonly processingJobArn: pulumi.Output<string>;
    /**
     * The name of the processing job. The name must be unique within an AWS Region in the AWS account.
     */
    readonly processingJobName: pulumi.Output<string | undefined>;
    /**
     * Provides the status of a processing job.
     */
    readonly processingJobStatus: pulumi.Output<enums.sagemaker.ProcessingJobStatus>;
    /**
     * Contains information about the output location for the compiled model and the target device that the model runs on. `TargetDevice` and `TargetPlatform` are mutually exclusive, so you need to choose one between the two to specify your target device or platform. If you cannot find your device you want to use from the `TargetDevice` list, use `TargetPlatform` to describe the platform of your edge device and `CompilerOptions` if there are specific settings that are required or recommended to use for particular TargetPlatform.
     */
    readonly processingOutputConfig: pulumi.Output<outputs.sagemaker.ProcessingJobProcessingOutputConfig | undefined>;
    /**
     * Identifies the resources, ML compute instances, and ML storage volumes to deploy for a processing job. In distributed training, you specify more than one instance.
     */
    readonly processingResources: pulumi.Output<outputs.sagemaker.ProcessingJobProcessingResources>;
    /**
     * The time at which the processing job started.
     */
    readonly processingStartTime: pulumi.Output<string>;
    /**
     * The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf.
     */
    readonly roleArn: pulumi.Output<string>;
    /**
     * Configures conditions under which the processing job should be stopped, such as how long the processing job has been running. After the condition is met, the processing job is stopped.
     */
    readonly stoppingCondition: pulumi.Output<outputs.sagemaker.ProcessingJobStoppingCondition | undefined>;
    /**
     * (Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags(https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the AWS Billing and Cost Management User Guide.
     */
    readonly tags: pulumi.Output<outputs.CreateOnlyTag[] | undefined>;
    /**
     * The ARN of a training job associated with this processing job
     */
    readonly trainingJobArn: pulumi.Output<string>;
    /**
     * Create a ProcessingJob resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: ProcessingJobArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a ProcessingJob resource.
 */
export interface ProcessingJobArgs {
    /**
     * Configuration to run a processing job in a specified container image.
     */
    appSpecification: pulumi.Input<inputs.sagemaker.ProcessingJobAppSpecificationArgs>;
    /**
     * Sets the environment variables in the Docker container.
     */
    environment?: pulumi.Input<inputs.sagemaker.ProcessingJobEnvironmentArgs>;
    /**
     * Associates a SageMaker job as a trial component with an experiment and trial. Specified when you call the [CreateProcessingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateProcessingJob.html) API.
     */
    experimentConfig?: pulumi.Input<inputs.sagemaker.ProcessingJobExperimentConfigArgs>;
    /**
     * Networking options for a job, such as network traffic encryption between containers, whether to allow inbound and outbound network calls to and from containers, and the VPC subnets and security groups to use for VPC-enabled jobs.
     */
    networkConfig?: pulumi.Input<inputs.sagemaker.ProcessingJobNetworkConfigArgs>;
    /**
     * An array of inputs configuring the data to download into the processing container.
     */
    processingInputs?: pulumi.Input<pulumi.Input<inputs.sagemaker.ProcessingJobProcessingInputsObjectArgs>[]>;
    /**
     * The name of the processing job. The name must be unique within an AWS Region in the AWS account.
     */
    processingJobName?: pulumi.Input<string>;
    /**
     * Contains information about the output location for the compiled model and the target device that the model runs on. `TargetDevice` and `TargetPlatform` are mutually exclusive, so you need to choose one between the two to specify your target device or platform. If you cannot find your device you want to use from the `TargetDevice` list, use `TargetPlatform` to describe the platform of your edge device and `CompilerOptions` if there are specific settings that are required or recommended to use for particular TargetPlatform.
     */
    processingOutputConfig?: pulumi.Input<inputs.sagemaker.ProcessingJobProcessingOutputConfigArgs>;
    /**
     * Identifies the resources, ML compute instances, and ML storage volumes to deploy for a processing job. In distributed training, you specify more than one instance.
     */
    processingResources: pulumi.Input<inputs.sagemaker.ProcessingJobProcessingResourcesArgs>;
    /**
     * The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker can assume to perform tasks on your behalf.
     */
    roleArn: pulumi.Input<string>;
    /**
     * Configures conditions under which the processing job should be stopped, such as how long the processing job has been running. After the condition is met, the processing job is stopped.
     */
    stoppingCondition?: pulumi.Input<inputs.sagemaker.ProcessingJobStoppingConditionArgs>;
    /**
     * (Optional) An array of key-value pairs. For more information, see Using Cost Allocation Tags(https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html#allocation-whatURL) in the AWS Billing and Cost Management User Guide.
     */
    tags?: pulumi.Input<pulumi.Input<inputs.CreateOnlyTagArgs>[]>;
}
