using System.Collections.Generic; using System.Threading.Tasks; using LCU.Shared.Collections.RepoApiLib.Models; using LCU.Shared.Collections.RepoApiLib.Models.Settings; namespace LCU.API.Collections.RepoApi.Services { public interface ISettingsService { Task GetCachedRepoSettingsAsync(); Task ListAllSettingsAsync(); Task SaveAsync(AccountType accountType); Task SaveAsync(AllowedStatusChange statusChange); Task SaveAsync(BodyStyle bodyStyle); Task SaveAsync(CleaningLevel cleaningLevel); Task SaveAsync(CollateralType collateralType); Task SaveAsync(CollateralTypeToVehicleType collateralToVehicle); Task SaveAsync(HoldStatus holdStatus); Task SaveAsync(LoanCategory loanCategory); Task SaveAsync(LocationType locationType); Task SaveAsync(VehicleType vehicleType); Task UpdateAsync(AccountType accountType); Task UpdateAsync(AllowedStatusChange statusChange); Task UpdateAsync(BodyStyle bodyStyle); Task UpdateAsync(CleaningLevel cleaningLevel); Task UpdateAsync(CollateralType collateralType); Task UpdateAsync(CollateralTypeToVehicleType collateralToVehicle); Task UpdateAsync(HoldStatus holdStatus); Task UpdateAsync(LoanCategory loanCategory); Task UpdateAsync(LocationType locationType); Task UpdateAsync(VehicleType vehicleType); Task SyncExternalUsersAsync(IReadOnlyCollection users); } }