using adas_core.Domain.Models.MongoModels;
using MongoDB.Bson;

namespace adas_core.Application.Services.Interfaces;

public interface IArchivePatientCarePlanService
{
    Task<List<PatientCarePlan>?> FindByPatientId(ObjectId id);
    Task<List<PatientCarePlan>?> FindByPatientId(string id);
    Task<List<PatientCarePlan>?> FindByPatientNumber(string id);

    Task<List<PatientCarePlan>> FindAll();

    // Task<PatientCarePlan?> UpdateTreatment(PatientCarePlan patientCarePla, List<OptionList> options);
    // Task<PatientCarePlan?> UpdateProcedure(PatientCarePlan patientCarePla, List<OptionList> options);
    Task<PatientCarePlan?> InsertOneAsync(PatientCarePlan patientCarePla);
    Task InsertManyAsync(List<PatientCarePlan> patientCarePla);

    // Task Update(PatientCarePlan oldPatientCarePla, PatientCarePlan newPatientCarePla);
    // Task<PatientCarePlan?> FindByIds(ObjectId oldPatientCarePlaId, string? oldPatientCarePlaPatientId, string? oldPatientCarePlaPatientNumber);
}