import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * A job step.
 *
 * Uses Azure REST API version 2023-08-01. In version 2.x of the Azure Native provider, it used API version 2021-11-01.
 *
 * Other available API versions: 2017-03-01-preview, 2020-02-02-preview, 2020-08-01-preview, 2020-11-01-preview, 2021-02-01-preview, 2021-05-01-preview, 2021-08-01-preview, 2021-11-01, 2021-11-01-preview, 2022-02-01-preview, 2022-05-01-preview, 2022-08-01-preview, 2022-11-01-preview, 2023-02-01-preview, 2023-05-01-preview, 2023-08-01-preview, 2024-05-01-preview, 2024-11-01-preview. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native sql [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
 */
export declare class JobStep extends pulumi.CustomResource {
    /**
     * Get an existing JobStep 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): JobStep;
    /**
     * Returns true if the given object is an instance of JobStep.  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 JobStep;
    /**
     * The action payload of the job step.
     */
    readonly action: pulumi.Output<outputs.sql.JobStepActionResponse>;
    /**
     * The Azure API version of the resource.
     */
    readonly azureApiVersion: pulumi.Output<string>;
    /**
     * The resource ID of the job credential that will be used to connect to the targets.
     */
    readonly credential: pulumi.Output<string | undefined>;
    /**
     * Execution options for the job step.
     */
    readonly executionOptions: pulumi.Output<outputs.sql.JobStepExecutionOptionsResponse | undefined>;
    /**
     * Resource name.
     */
    readonly name: pulumi.Output<string>;
    /**
     * Output destination properties of the job step.
     */
    readonly output: pulumi.Output<outputs.sql.JobStepOutputResponse | undefined>;
    /**
     * The job step's index within the job. If not specified when creating the job step, it will be created as the last step. If not specified when updating the job step, the step id is not modified.
     */
    readonly stepId: pulumi.Output<number | undefined>;
    /**
     * The resource ID of the target group that the job step will be executed on.
     */
    readonly targetGroup: pulumi.Output<string>;
    /**
     * Resource type.
     */
    readonly type: pulumi.Output<string>;
    /**
     * Create a JobStep 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: JobStepArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a JobStep resource.
 */
export interface JobStepArgs {
    /**
     * The action payload of the job step.
     */
    action: pulumi.Input<inputs.sql.JobStepActionArgs>;
    /**
     * The resource ID of the job credential that will be used to connect to the targets.
     */
    credential?: pulumi.Input<string>;
    /**
     * Execution options for the job step.
     */
    executionOptions?: pulumi.Input<inputs.sql.JobStepExecutionOptionsArgs>;
    /**
     * The name of the job agent.
     */
    jobAgentName: pulumi.Input<string>;
    /**
     * The name of the job.
     */
    jobName: pulumi.Input<string>;
    /**
     * Output destination properties of the job step.
     */
    output?: pulumi.Input<inputs.sql.JobStepOutputArgs>;
    /**
     * The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
     */
    resourceGroupName: pulumi.Input<string>;
    /**
     * The name of the server.
     */
    serverName: pulumi.Input<string>;
    /**
     * The job step's index within the job. If not specified when creating the job step, it will be created as the last step. If not specified when updating the job step, the step id is not modified.
     */
    stepId?: pulumi.Input<number>;
    /**
     * The name of the job step.
     */
    stepName?: pulumi.Input<string>;
    /**
     * The resource ID of the target group that the job step will be executed on.
     */
    targetGroup: pulumi.Input<string>;
}
