public interface IMyDataPersistence
{
Task<MyData> SetAsync(string correlationId, MyData item);
Task<MyData> CreateAsync(string correlationId, MyData item);
Task<DataPage<MyData>> GetPageByFilterAsync(string correlationId, FilterParams filter, PagingParams paging = null, SortParams sort = null);
Task<long> GetCountByFilterAsync(string correlationId, FilterParams filter);
Task<List<MyData>> GetListByFilterAsync(string correlationId, FilterParams filter);
Task<MyData> GetOneByIdAsync(string correlationId, string id);
Task<List<MyData>> GetListByIdsAsync(string correlationId, string[] ids);
Task<MyData> UpdateAsync(string correlationId, MyData item);
Task<MyData> UpdatePartially(string correlationId, string id, AnyValueMap data);
Task<MyData> DeleteByIdAsync(string correlationId, string id);
Task DeleteByIdsAsync(string correlationId, string[] ids);
Task DeleteByFilterAsync(string correlationId, FilterParams filter);
}