aboutsummaryrefslogtreecommitdiff
path: root/src/DevHive.Data/Repositories/Contracts/IUserRepository.cs
blob: 74c448610d569bd6803ec14a282b22aed77dd086 (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
26
using DevHive.Data.Models;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;

namespace DevHive.Data.Repositories.Contracts
{
    public interface IUserRepository : IRepository<User>
	{
		public Task<bool> AddFriendAsync(User user, User friend);

		public IEnumerable<User> QueryAll();

		public Task<User> GetByUsername(string username);

		public Task<bool> RemoveFriendAsync(User user, User friend);

		public bool DoesUserExist(Guid id);

		public bool DoesUserHaveThisUsername(Guid id, string username);

		public Task<bool> DoesUsernameExist(string username);

		public Task<bool> DoesEmailExist(string email);
	}
}