using adas_core.Domain.Enums; using adas_core.Domain.Models.DTO.Display; using adas_core.Domain.Models.Filter; using adas_core.Domain.Models.GroupedObservations; using adas_core.Domain.Models.MongoModels; using adas_core.Domain.Models.Responses; using MongoDB.Bson; namespace adas_core.Application.Services.Interfaces; public interface IDisplayConfigService { Task> GetAll(); Task> GetAllCompactPaginated(PaginationFilter request); Task> GetByType(DisplayConfigEnums.DisplayType type); Task GetById(ObjectId id); Task GetById(ObjectId? configId, ObjectId unitId, DisplayConfigEnums.DisplayType displayType); Task InsertOne(DisplayConfig config); Task InsertOneMinimal(CreateDisplayConfigDto config); Task InsertOneTest(); Task UpdateConfig(ObjectId displayConfigId, object newDisplayConfig); Task UpdateFieldList(ObjectId objectIdConfigDisplay, List fields); Task UpdateConfigColor(ObjectId objectIdConfigDisplay, ColorConfig colorConfigDto); Task UpdateHeaderConfig(ObjectId objectIdConfigDisplay, HeaderConfig headerConfig); Task UpdateSetHomeBanner(ObjectId objectIdConfigDisplay, List bannerItems); Task UpdateBaseConfig(DisplayConfig baseConfig); Task UpdateDisplayConfigHospitalName(ObjectId objectIdConfigDisplay, string name); Task DeleteDisplayConfig(ObjectId objectIdConfigDisplay); Task GetDefaultConfig(DisplayConfigEnums.DisplayType type); Task> GetDisplayConfigLocations(ObjectId objectIdConfigDisplay); Task> GetAllCompact(); Task InsertOneWithTemplate(string objectId, DisplayConfigEnums.DisplayType configType, string? configHospital); Task UpdateCardConfig(CardConfig baseConfig); Task InsertCardConfig(CreateDisplayConfigCardDto updateDisplayConfigNameDto); Task> GetCardConfigAll(); Task GetCardConfigById(ObjectId id); Task UpdateDetailConfig(CardDetailsConfig baseConfig); Task InsertCardDetailConfig(CreateDisplayConfigCardDto updateDisplayConfigNameDto); Task InsertChartConfig(CreateDisplayConfigCardDto updateDisplayConfigNameDto); Task UpdateChartConfig(ChartConfig baseConfig); Task DeleteChartConfig(ObjectId objectIdConfigDisplay); Task GetChartConfig(ObjectId objectIdConfigChart); }