using ErsatzTV.Core.Domain; namespace ErsatzTV.Core.Interfaces.Repositories; public interface IConfigElementRepository { Task Upsert(ConfigElementKey configElementKey, T value, CancellationToken cancellationToken); Task> GetConfigElement(ConfigElementKey key, CancellationToken cancellationToken); Task> GetValue(ConfigElementKey key, CancellationToken cancellationToken); Task Delete(ConfigElement configElement, CancellationToken cancellationToken); Task Delete(ConfigElementKey configElementKey, CancellationToken cancellationToken); }