using e_suite.Database.Audit;
using e_suite.Database.Core;
using e_suite.Database.Core.Tables.UserManager;
using eSuite.Core.Miscellaneous;

namespace e_suite.API.Common.repository;

public interface ISsoManagerRepository : IRepository
{
    IQueryable<SsoProvider> GetSsoProviders();
    Task<SsoProvider?> GetSsoProviderAsync(IGeneralIdRef generalIdRef, CancellationToken cancellationToken);
    Task CreateNewSsoProviderAsync(AuditUserDetails auditUserDetails, SsoProvider newSsoProvider, CancellationToken cancellationToken);
    Task EditNewSsoProviderAsync(AuditUserDetails auditUserDetails, SsoProvider ssoProvider, CancellationToken cancellationToken);
}