import * as runtime from '../runtime';
import { AddJobCommentResponse, EsriWorkflowModelsRestAssignmentBody, EsriWorkflowModelsRestDiagramDiagram, EsriWorkflowModelsRestJob, EsriWorkflowModelsRestJobActionBody, EsriWorkflowModelsRestJobActionResponse, EsriWorkflowModelsRestJobAttachmentLinkedBody, EsriWorkflowModelsRestJobManageBody, EsriWorkflowModelsRestJobQuery, EsriWorkflowModelsRestJobQueryResult, EsriWorkflowModelsRestJobStatistics, EsriWorkflowModelsRestJobStatisticsQuery, EsriWorkflowModelsRestLocation, EsriWorkflowModelsRestLocationBody, EsriWorkflowModelsRestSuccessResponse, JobAttachmentDescriptions, JobAttachmentLinkedResults, JobAttachmentResult, JobComment, JobComments, JobHistoryRecords, JobOverrides, Success } from '../models';
export interface AddAttachmentsRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    attachment: Blob;
    token?: string;
    alias?: string;
    folder?: string;
    stepId?: string;
}
export interface AddAttachmentsLinkedRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
    esriWorkflowModelsRestJobAttachmentLinkedBody?: EsriWorkflowModelsRestJobAttachmentLinkedBody;
}
export interface AddJobCommentRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
    jobComment?: JobComment;
}
export interface AssignStepRequest {
    jobId: string;
    stepId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
    esriWorkflowModelsRestAssignmentBody?: EsriWorkflowModelsRestAssignmentBody;
}
export interface DeleteAttachmentRequest {
    jobId: string;
    attachmentId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
}
export interface GetAttachmentRequest {
    jobId: string;
    attachmentId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
}
export interface GetAttachmentsRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
}
export interface GetJobRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    extProps?: boolean | null;
    holds?: boolean | null;
    token?: string | null;
}
export interface GetJobCommentsRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
}
export interface GetJobDiagramRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
}
export interface GetJobHistoryRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
}
export interface GetJobLocationRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
}
export interface JobActionRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
    esriWorkflowModelsRestJobActionBody?: EsriWorkflowModelsRestJobActionBody;
}
export interface JobStatisticsRequest {
    orgId: string;
    itemId: string;
    token?: string | null;
    esriWorkflowModelsRestJobStatisticsQuery?: EsriWorkflowModelsRestJobStatisticsQuery;
}
export interface ManageJobsRequest {
    orgId: string;
    itemId: string;
    token?: string | null;
    esriWorkflowModelsRestJobManageBody?: EsriWorkflowModelsRestJobManageBody;
}
export interface SearchJobsRequest {
    orgId: string;
    itemId: string;
    token?: string | null;
    esriWorkflowModelsRestJobQuery?: EsriWorkflowModelsRestJobQuery;
}
export interface SetJobLocationRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
    esriWorkflowModelsRestLocationBody?: EsriWorkflowModelsRestLocationBody;
}
export interface UpdateAttachmentsRequest {
    jobId: string;
    attachmentId: string;
    orgId: string;
    itemId: string;
    token?: string;
    alias?: string;
    folder?: string;
}
export interface UpdateJobRequest {
    jobId: string;
    orgId: string;
    itemId: string;
    token?: string | null;
    jobOverrides?: JobOverrides;
}
export declare class JobsApi extends runtime.BaseAPI {
    addAttachmentsRaw(requestParameters: AddAttachmentsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<JobAttachmentResult>>;
    addAttachments(requestParameters: AddAttachmentsRequest, initOverrides?: RequestInit): Promise<JobAttachmentResult>;
    addAttachmentsLinkedRaw(requestParameters: AddAttachmentsLinkedRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<JobAttachmentLinkedResults>>;
    addAttachmentsLinked(requestParameters: AddAttachmentsLinkedRequest, initOverrides?: RequestInit): Promise<JobAttachmentLinkedResults>;
    addJobCommentRaw(requestParameters: AddJobCommentRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<AddJobCommentResponse>>;
    addJobComment(requestParameters: AddJobCommentRequest, initOverrides?: RequestInit): Promise<AddJobCommentResponse>;
    assignStepRaw(requestParameters: AssignStepRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Success>>;
    assignStep(requestParameters: AssignStepRequest, initOverrides?: RequestInit): Promise<Success>;
    deleteAttachmentRaw(requestParameters: DeleteAttachmentRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Success>>;
    deleteAttachment(requestParameters: DeleteAttachmentRequest, initOverrides?: RequestInit): Promise<Success>;
    getAttachmentRaw(requestParameters: GetAttachmentRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Blob>>;
    getAttachment(requestParameters: GetAttachmentRequest, initOverrides?: RequestInit): Promise<Blob>;
    getAttachmentsRaw(requestParameters: GetAttachmentsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<JobAttachmentDescriptions>>;
    getAttachments(requestParameters: GetAttachmentsRequest, initOverrides?: RequestInit): Promise<JobAttachmentDescriptions>;
    getJobRaw(requestParameters: GetJobRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<EsriWorkflowModelsRestJob>>;
    getJob(requestParameters: GetJobRequest, initOverrides?: RequestInit): Promise<EsriWorkflowModelsRestJob>;
    getJobCommentsRaw(requestParameters: GetJobCommentsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<JobComments>>;
    getJobComments(requestParameters: GetJobCommentsRequest, initOverrides?: RequestInit): Promise<JobComments>;
    getJobDiagramRaw(requestParameters: GetJobDiagramRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<EsriWorkflowModelsRestDiagramDiagram>>;
    getJobDiagram(requestParameters: GetJobDiagramRequest, initOverrides?: RequestInit): Promise<EsriWorkflowModelsRestDiagramDiagram>;
    getJobHistoryRaw(requestParameters: GetJobHistoryRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<JobHistoryRecords>>;
    getJobHistory(requestParameters: GetJobHistoryRequest, initOverrides?: RequestInit): Promise<JobHistoryRecords>;
    getJobLocationRaw(requestParameters: GetJobLocationRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<EsriWorkflowModelsRestLocation>>;
    getJobLocation(requestParameters: GetJobLocationRequest, initOverrides?: RequestInit): Promise<EsriWorkflowModelsRestLocation>;
    jobActionRaw(requestParameters: JobActionRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<EsriWorkflowModelsRestJobActionResponse>>;
    jobAction(requestParameters: JobActionRequest, initOverrides?: RequestInit): Promise<EsriWorkflowModelsRestJobActionResponse>;
    jobStatisticsRaw(requestParameters: JobStatisticsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<EsriWorkflowModelsRestJobStatistics>>;
    jobStatistics(requestParameters: JobStatisticsRequest, initOverrides?: RequestInit): Promise<EsriWorkflowModelsRestJobStatistics>;
    manageJobsRaw(requestParameters: ManageJobsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Success>>;
    manageJobs(requestParameters: ManageJobsRequest, initOverrides?: RequestInit): Promise<Success>;
    searchJobsRaw(requestParameters: SearchJobsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<EsriWorkflowModelsRestJobQueryResult>>;
    searchJobs(requestParameters: SearchJobsRequest, initOverrides?: RequestInit): Promise<EsriWorkflowModelsRestJobQueryResult>;
    setJobLocationRaw(requestParameters: SetJobLocationRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Success>>;
    setJobLocation(requestParameters: SetJobLocationRequest, initOverrides?: RequestInit): Promise<Success>;
    updateAttachmentsRaw(requestParameters: UpdateAttachmentsRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<Success>>;
    updateAttachments(requestParameters: UpdateAttachmentsRequest, initOverrides?: RequestInit): Promise<Success>;
    updateJobRaw(requestParameters: UpdateJobRequest, initOverrides?: RequestInit): Promise<runtime.ApiResponse<EsriWorkflowModelsRestSuccessResponse>>;
    updateJob(requestParameters: UpdateJobRequest, initOverrides?: RequestInit): Promise<EsriWorkflowModelsRestSuccessResponse>;
}
