aboutsummaryrefslogtreecommitdiff
path: root/src/DevHive.Data/Repositories/IRepository.cs
blob: 31253230b4ad9398deac12da7d0280bd0da5a3d8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
using System;
using System.Collections.Generic;
using System.Threading.Tasks;

namespace Data.Models.Interfaces.Database
{
	public interface IRepository<TEntity>
		where TEntity : class
	{
		//Add Entity to database
		Task AddAsync(TEntity entity);

		//Return *count* instances of Entity from the database
		IEnumerable<TEntity> Query(int count);

		//Find entity by id
		Task<TEntity> FindByIdAsync(Guid id);

		//Modify Entity from database
		Task EditAsync(TEntity newEntity);

		//Delete Entity from database
		Task DeleteAsync(Guid id);
	}
}