using Bit.BlazorUI;
using JSMR.Application.Enums;
using JSMR.Application.VoiceWorks.Queries.Search;
using JSMR.Domain.Enums;
using JSMR.UI.Blazor.Enums;

namespace JSMR.UI.Blazor.Services;

public interface ILookupDataService
{
    List<BitDropdownItem<Locale>> GetLocales();
    List<BitDropdownItem<SaleStatus?>> GetSaleStatuses();
    List<SelectOption<SaleStatus?>> GetSaleStatuses2();
    List<BitDropdownItem<CircleStatus?>> GetCircleStatuses();
    List<BitDropdownItem<TagStatus?>> GetTagStatuses();
    List<BitDropdownItem<CreatorStatus?>> GetCreatorStatuses();
    List<BitDropdownItem<Language>> GetLanguages();
    List<BitDropdownItem<AgeRating>> GetAgeRatings();
    List<BitDropdownItem<VoiceWorkSort>> GetSortOptions();

    Task<List<BitDropdownItem<int>>> GetTagsAsync(CancellationToken cancellationToken = default);
    Task<List<BitDropdownItem<int>>> GetCreatorsAsync(CancellationToken cancellationToken = default);
}