use conjure_http::endpoint;
/// The Job Service is responsible for returning information about jobs for checklist executions.
#[conjure_http::conjure_client(name = "JobService")]
pub trait JobService<
    #[response_body]
    I: Iterator<
            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
        >,
> {
    /// Fetches the job report for a job RID. Throws ResourcesNotFound if no job exists with this job RID.
    #[endpoint(
        method = GET,
        path = "/jobs/v1/{jobRid}/job-report",
        name = "getJobReport",
        accept = conjure_http::client::StdResponseDeserializer
    )]
    fn get_job_report(
        &self,
        #[auth]
        auth_: &conjure_object::BearerToken,
        #[path(name = "jobRid", encoder = conjure_http::client::conjure::PlainEncoder)]
        job_rid: &super::super::super::super::super::objects::scout::checks::api::JobRid,
    ) -> Result<
        super::super::super::super::super::objects::scout::checks::api::JobReport,
        conjure_http::private::Error,
    >;
    /// Fetches the job reports for a set of job RIDs. Omits any job reports the user is not permitted to see from
    /// the response.
    #[endpoint(
        method = POST,
        path = "/jobs/v1/batch-get-job-reports",
        name = "batchGetJobReports",
        accept = conjure_http::client::StdResponseDeserializer
    )]
    fn batch_get_job_reports(
        &self,
        #[auth]
        auth_: &conjure_object::BearerToken,
        #[body(serializer = conjure_http::client::StdRequestSerializer)]
        request: &super::super::super::super::super::objects::scout::checks::api::BatchGetJobReportsRequest,
    ) -> Result<
        super::super::super::super::super::objects::scout::checks::api::BatchGetJobReportsResponse,
        conjure_http::private::Error,
    >;
}
/// The Job Service is responsible for returning information about jobs for checklist executions.
#[conjure_http::conjure_client(name = "JobService")]
pub trait AsyncJobService<
    #[response_body]
    I: conjure_http::private::Stream<
            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
        >,
> {
    /// Fetches the job report for a job RID. Throws ResourcesNotFound if no job exists with this job RID.
    #[endpoint(
        method = GET,
        path = "/jobs/v1/{jobRid}/job-report",
        name = "getJobReport",
        accept = conjure_http::client::StdResponseDeserializer
    )]
    async fn get_job_report(
        &self,
        #[auth]
        auth_: &conjure_object::BearerToken,
        #[path(name = "jobRid", encoder = conjure_http::client::conjure::PlainEncoder)]
        job_rid: &super::super::super::super::super::objects::scout::checks::api::JobRid,
    ) -> Result<
        super::super::super::super::super::objects::scout::checks::api::JobReport,
        conjure_http::private::Error,
    >;
    /// Fetches the job reports for a set of job RIDs. Omits any job reports the user is not permitted to see from
    /// the response.
    #[endpoint(
        method = POST,
        path = "/jobs/v1/batch-get-job-reports",
        name = "batchGetJobReports",
        accept = conjure_http::client::StdResponseDeserializer
    )]
    async fn batch_get_job_reports(
        &self,
        #[auth]
        auth_: &conjure_object::BearerToken,
        #[body(serializer = conjure_http::client::StdRequestSerializer)]
        request: &super::super::super::super::super::objects::scout::checks::api::BatchGetJobReportsRequest,
    ) -> Result<
        super::super::super::super::super::objects::scout::checks::api::BatchGetJobReportsResponse,
        conjure_http::private::Error,
    >;
}
/// The Job Service is responsible for returning information about jobs for checklist executions.
#[conjure_http::conjure_client(name = "JobService", local)]
pub trait LocalAsyncJobService<
    #[response_body]
    I: conjure_http::private::Stream<
            Item = Result<conjure_http::private::Bytes, conjure_http::private::Error>,
        >,
> {
    /// Fetches the job report for a job RID. Throws ResourcesNotFound if no job exists with this job RID.
    #[endpoint(
        method = GET,
        path = "/jobs/v1/{jobRid}/job-report",
        name = "getJobReport",
        accept = conjure_http::client::StdResponseDeserializer
    )]
    async fn get_job_report(
        &self,
        #[auth]
        auth_: &conjure_object::BearerToken,
        #[path(name = "jobRid", encoder = conjure_http::client::conjure::PlainEncoder)]
        job_rid: &super::super::super::super::super::objects::scout::checks::api::JobRid,
    ) -> Result<
        super::super::super::super::super::objects::scout::checks::api::JobReport,
        conjure_http::private::Error,
    >;
    /// Fetches the job reports for a set of job RIDs. Omits any job reports the user is not permitted to see from
    /// the response.
    #[endpoint(
        method = POST,
        path = "/jobs/v1/batch-get-job-reports",
        name = "batchGetJobReports",
        accept = conjure_http::client::StdResponseDeserializer
    )]
    async fn batch_get_job_reports(
        &self,
        #[auth]
        auth_: &conjure_object::BearerToken,
        #[body(serializer = conjure_http::client::StdRequestSerializer)]
        request: &super::super::super::super::super::objects::scout::checks::api::BatchGetJobReportsRequest,
    ) -> Result<
        super::super::super::super::super::objects::scout::checks::api::BatchGetJobReportsResponse,
        conjure_http::private::Error,
    >;
}
