package com.example.livingai.domain.repository

import android.graphics.Bitmap
import android.graphics.Rect
import androidx.camera.core.ImageProxy
import com.example.livingai.domain.ml.Orientation
import com.example.livingai.domain.ml.OrientationState

interface CameraRepository {
    suspend fun captureImage(imageProxy: ImageProxy): Bitmap
    suspend fun processFrame(
        bitmap: Bitmap,
        requestedOrientation: Orientation,
        silhouetteBitmap: Bitmap,
        realObjectHeightMeters: Float?,
        focalLengthPixels: Float,
        boundingBox: Rect? = null
    ): OrientationState
    suspend fun saveImage(bitmap: Bitmap, animalId: String, orientation: String?): String
}
