using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Domain.Contacts;
using Domain.IdentityModels;

namespace DAL.Interfaces
{
    public interface IUOW
    {
        //save pending changes to the data store
        void Commit();
        // standard autocreated repos, since we do not have any special methods in interfaces
        IEFRepository<ContactType> ContactTypes { get; }

        IPersonRepository Persons { get; }
        IContactRepository Contacts { get; }
        

        IUserRepository Users { get; }
        IUserRoleRepository UserRoles { get; }
        IRoleRepository Roles { get; }
		IUserClaimRepository UserClaims { get; }
		IUserLoginRepository UserLogins { get; }
    }
}
