package com.isidroid.job.repository

import com.isidroid.job.constant.JobStatus
import com.isidroid.job.model.PrintJob
import java.io.File

interface JobRepository {
    suspend fun insert(vararg printJob: PrintJob)
    suspend fun createJob(
        name: String,
        clientName: String,
        spotId: String,
        profileId: String,
        printSize: Int,
        printOrientation: Int,
        copies: Int? = 1,
        sourceFiles: List<File>
    ): PrintJob

    suspend fun readLocalList(spotId: String? = null, @JobStatus status: Int? = null, ids: List<String>? = null): Collection<PrintJob>
    suspend fun updateJobStatus(@JobStatus status: Int, vararg ids: String)

}