import * as pulumi from "@pulumi/pulumi";
/**
 * > **Note** If you have a fully automated setup with workspaces created by databricks.MwsWorkspaces or azurerm_databricks_workspace, please make sure to add dependsOn attribute in order to prevent _default auth: cannot configure default credentials_ errors.
 *
 * Retrieves a list of databricks.Job ids, that were created by Pulumi or manually, so that special handling could be applied.
 *
 * > **Note** Data resource will error in case of jobs with duplicate names.
 *
 * ## Example Usage
 *
 * Granting view databricks.Permissions to all databricks.Job within the workspace:
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as databricks from "@pulumi/databricks";
 *
 * export = async () => {
 *     const _this = await databricks.getJobs({});
 *     const tests = await databricks.getJobs({
 *         jobNameContains: "test",
 *     });
 *     const everyoneCanViewAllJobs: databricks.Permissions[] = [];
 *     for (const range of Object.entries(_this.ids).map(([k, v]) => ({key: k, value: v}))) {
 *         everyoneCanViewAllJobs.push(new databricks.Permissions(`everyone_can_view_all_jobs-${range.key}`, {
 *             jobId: range.value,
 *             accessControls: [{
 *                 groupName: "users",
 *                 permissionLevel: "CAN_VIEW",
 *             }],
 *         }));
 *     }
 * }
 * ```
 *
 * Getting ID of specific databricks.Job by name:
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as databricks from "@pulumi/databricks";
 *
 * const _this = databricks.getJobs({});
 * export const x = _this.then(_this => `ID of `x` job is ${_this.ids?.x}`);
 * ```
 *
 * ## Related Resources
 *
 * The following resources are used in the same context:
 *
 * * databricks.Job to manage [Databricks Jobs](https://docs.databricks.com/jobs.html) to run non-interactive code in a databricks_cluster.
 */
export declare function getJobs(args?: GetJobsArgs, opts?: pulumi.InvokeOptions): Promise<GetJobsResult>;
/**
 * A collection of arguments for invoking getJobs.
 */
export interface GetJobsArgs {
    /**
     * map of databricks.Job names to ids
     */
    ids?: {
        [key: string]: string;
    };
    /**
     * Only return databricks.Job ids that match the given name string (case-insensitive).
     */
    jobNameContains?: string;
}
/**
 * A collection of values returned by getJobs.
 */
export interface GetJobsResult {
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * map of databricks.Job names to ids
     */
    readonly ids: {
        [key: string]: string;
    };
    readonly jobNameContains?: string;
}
/**
 * > **Note** If you have a fully automated setup with workspaces created by databricks.MwsWorkspaces or azurerm_databricks_workspace, please make sure to add dependsOn attribute in order to prevent _default auth: cannot configure default credentials_ errors.
 *
 * Retrieves a list of databricks.Job ids, that were created by Pulumi or manually, so that special handling could be applied.
 *
 * > **Note** Data resource will error in case of jobs with duplicate names.
 *
 * ## Example Usage
 *
 * Granting view databricks.Permissions to all databricks.Job within the workspace:
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as databricks from "@pulumi/databricks";
 *
 * export = async () => {
 *     const _this = await databricks.getJobs({});
 *     const tests = await databricks.getJobs({
 *         jobNameContains: "test",
 *     });
 *     const everyoneCanViewAllJobs: databricks.Permissions[] = [];
 *     for (const range of Object.entries(_this.ids).map(([k, v]) => ({key: k, value: v}))) {
 *         everyoneCanViewAllJobs.push(new databricks.Permissions(`everyone_can_view_all_jobs-${range.key}`, {
 *             jobId: range.value,
 *             accessControls: [{
 *                 groupName: "users",
 *                 permissionLevel: "CAN_VIEW",
 *             }],
 *         }));
 *     }
 * }
 * ```
 *
 * Getting ID of specific databricks.Job by name:
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as databricks from "@pulumi/databricks";
 *
 * const _this = databricks.getJobs({});
 * export const x = _this.then(_this => `ID of `x` job is ${_this.ids?.x}`);
 * ```
 *
 * ## Related Resources
 *
 * The following resources are used in the same context:
 *
 * * databricks.Job to manage [Databricks Jobs](https://docs.databricks.com/jobs.html) to run non-interactive code in a databricks_cluster.
 */
export declare function getJobsOutput(args?: GetJobsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetJobsResult>;
/**
 * A collection of arguments for invoking getJobs.
 */
export interface GetJobsOutputArgs {
    /**
     * map of databricks.Job names to ids
     */
    ids?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    }>;
    /**
     * Only return databricks.Job ids that match the given name string (case-insensitive).
     */
    jobNameContains?: pulumi.Input<string>;
}
