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::Glue::Job
 */
export declare class Job extends pulumi.CustomResource {
    /**
     * Get an existing Job 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): Job;
    /**
     * Returns true if the given object is an instance of Job.  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 Job;
    /**
     * The number of capacity units that are allocated to this job.
     */
    readonly allocatedCapacity: pulumi.Output<number | undefined>;
    /**
     * The code that executes a job.
     */
    readonly command: pulumi.Output<outputs.glue.JobCommand>;
    /**
     * Specifies the connections used by a job
     */
    readonly connections: pulumi.Output<outputs.glue.JobConnectionsList | undefined>;
    /**
     * The default arguments for this job, specified as name-value pairs.
     *
     * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Glue::Job` for more information about the expected schema for this property.
     */
    readonly defaultArguments: pulumi.Output<any | undefined>;
    /**
     * A description of the job.
     */
    readonly description: pulumi.Output<string | undefined>;
    /**
     * Indicates whether the job is run with a standard or flexible execution class.
     */
    readonly executionClass: pulumi.Output<string | undefined>;
    /**
     * The maximum number of concurrent runs that are allowed for this job.
     */
    readonly executionProperty: pulumi.Output<outputs.glue.JobExecutionProperty | undefined>;
    /**
     * Glue version determines the versions of Apache Spark and Python that AWS Glue supports.
     */
    readonly glueVersion: pulumi.Output<string | undefined>;
    /**
     * Property description not available.
     */
    readonly jobMode: pulumi.Output<string | undefined>;
    /**
     * Property description not available.
     */
    readonly jobRunQueuingEnabled: pulumi.Output<boolean | undefined>;
    /**
     * This field is reserved for future use.
     */
    readonly logUri: pulumi.Output<string | undefined>;
    /**
     * Property description not available.
     */
    readonly maintenanceWindow: pulumi.Output<string | undefined>;
    /**
     * The number of AWS Glue data processing units (DPUs) that can be allocated when this job runs.
     */
    readonly maxCapacity: pulumi.Output<number | undefined>;
    /**
     * The maximum number of times to retry this job after a JobRun fails
     */
    readonly maxRetries: pulumi.Output<number | undefined>;
    /**
     * The name you assign to the job definition
     */
    readonly name: pulumi.Output<string | undefined>;
    /**
     * Non-overridable arguments for this job, specified as name-value pairs.
     *
     * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Glue::Job` for more information about the expected schema for this property.
     */
    readonly nonOverridableArguments: pulumi.Output<any | undefined>;
    /**
     * Specifies configuration properties of a notification.
     */
    readonly notificationProperty: pulumi.Output<outputs.glue.JobNotificationProperty | undefined>;
    /**
     * The number of workers of a defined workerType that are allocated when a job runs.
     */
    readonly numberOfWorkers: pulumi.Output<number | undefined>;
    /**
     * The name or Amazon Resource Name (ARN) of the IAM role associated with this job.
     */
    readonly role: pulumi.Output<string>;
    /**
     * The name of the SecurityConfiguration structure to be used with this job.
     */
    readonly securityConfiguration: pulumi.Output<string | undefined>;
    /**
     * The tags to use with this job.
     *
     * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Glue::Job` for more information about the expected schema for this property.
     */
    readonly tags: pulumi.Output<any | undefined>;
    /**
     * The maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status.
     */
    readonly timeout: pulumi.Output<number | undefined>;
    /**
     * TThe type of predefined worker that is allocated when a job runs.
     */
    readonly workerType: pulumi.Output<enums.glue.JobWorkerType | undefined>;
    /**
     * Create a Job 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: JobArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a Job resource.
 */
export interface JobArgs {
    /**
     * The number of capacity units that are allocated to this job.
     */
    allocatedCapacity?: pulumi.Input<number>;
    /**
     * The code that executes a job.
     */
    command: pulumi.Input<inputs.glue.JobCommandArgs>;
    /**
     * Specifies the connections used by a job
     */
    connections?: pulumi.Input<inputs.glue.JobConnectionsListArgs>;
    /**
     * The default arguments for this job, specified as name-value pairs.
     *
     * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Glue::Job` for more information about the expected schema for this property.
     */
    defaultArguments?: any;
    /**
     * A description of the job.
     */
    description?: pulumi.Input<string>;
    /**
     * Indicates whether the job is run with a standard or flexible execution class.
     */
    executionClass?: pulumi.Input<string>;
    /**
     * The maximum number of concurrent runs that are allowed for this job.
     */
    executionProperty?: pulumi.Input<inputs.glue.JobExecutionPropertyArgs>;
    /**
     * Glue version determines the versions of Apache Spark and Python that AWS Glue supports.
     */
    glueVersion?: pulumi.Input<string>;
    /**
     * Property description not available.
     */
    jobMode?: pulumi.Input<string>;
    /**
     * Property description not available.
     */
    jobRunQueuingEnabled?: pulumi.Input<boolean>;
    /**
     * This field is reserved for future use.
     */
    logUri?: pulumi.Input<string>;
    /**
     * Property description not available.
     */
    maintenanceWindow?: pulumi.Input<string>;
    /**
     * The number of AWS Glue data processing units (DPUs) that can be allocated when this job runs.
     */
    maxCapacity?: pulumi.Input<number>;
    /**
     * The maximum number of times to retry this job after a JobRun fails
     */
    maxRetries?: pulumi.Input<number>;
    /**
     * The name you assign to the job definition
     */
    name?: pulumi.Input<string>;
    /**
     * Non-overridable arguments for this job, specified as name-value pairs.
     *
     * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Glue::Job` for more information about the expected schema for this property.
     */
    nonOverridableArguments?: any;
    /**
     * Specifies configuration properties of a notification.
     */
    notificationProperty?: pulumi.Input<inputs.glue.JobNotificationPropertyArgs>;
    /**
     * The number of workers of a defined workerType that are allocated when a job runs.
     */
    numberOfWorkers?: pulumi.Input<number>;
    /**
     * The name or Amazon Resource Name (ARN) of the IAM role associated with this job.
     */
    role: pulumi.Input<string>;
    /**
     * The name of the SecurityConfiguration structure to be used with this job.
     */
    securityConfiguration?: pulumi.Input<string>;
    /**
     * The tags to use with this job.
     *
     * Search the [CloudFormation User Guide](https://docs.aws.amazon.com/cloudformation/) for `AWS::Glue::Job` for more information about the expected schema for this property.
     */
    tags?: any;
    /**
     * The maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status.
     */
    timeout?: pulumi.Input<number>;
    /**
     * TThe type of predefined worker that is allocated when a job runs.
     */
    workerType?: pulumi.Input<enums.glue.JobWorkerType>;
}
