package com.prodhack.moscow2025.domain.interfaces.resumes

import com.prodhack.moscow2025.domain.models.ResumeCreationModel
import com.prodhack.moscow2025.domain.models.ResumeModel
import com.prodhack.moscow2025.domain.utils.RemotePagingWrapper
import kotlinx.coroutines.flow.Flow

interface ResumeRepository {
	fun loadResumeList(): RemotePagingWrapper<ResumeModel>
	fun loadResumeHistory(resumeId: String): RemotePagingWrapper<ResumeModel>

	suspend fun suggestSkills(query: String): Result<List<String>>
	suspend fun createResume(resumeForm: ResumeCreationModel): Result<String>
	suspend fun updateResume(resumeId: String, resumeForm: ResumeCreationModel): Result<String>
	suspend fun refreshResume(resumeId: String): Result<ResumeModel>
	fun getResume(resumeId: String): Flow<Result<ResumeModel>>
}
