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

namespace adas_core.Application.Repositories.Interfaces;

public interface IDeviceRepository : IMongoRepository<Device>
{
    Task<Device?> FindByMacAddr(string deviceDtoMacAddr);
    Task<Device?> FindBySerialNumber(string deviceDtoSerialNumber);
    Task<Device?> FindByUuid(string deviceDtoUuid);
    Task<Device?> FindByKey(string deviceDtoKey);
    Task UpdateDeviceStats(ObjectId id,DeviceDto deviceExist);
}