public Task <ProgramCategoryListResponse> ListProgramCategoriesAsync(ProgramCategoryListRequest request, ListPagination?pagination = null)
        {
            if (request == null)
            {
                throw new ArgumentNullException(nameof(request));
            }

            return(GetListAsync <ProgramCategoryListRequest, ProgramCategoryListResponse>(
                       _httpClient,
                       Constants.ProgramCategories.ListEndpointConfiguration,
                       request,
                       pagination
                       ));
        }
 public static IAsyncEnumerable <Models.Response.ProgramCategories.ProgramCategory> ListAllProgramCategoriesAsync(this ISverigesRadioApiClient apiClient, ProgramCategoryListRequest request)
 {
     return(apiClient.ListAllAsync <Models.Response.ProgramCategories.ProgramCategory, ProgramCategoryListRequest>(request, async(listRequest, pagination) =>
     {
         var result = await apiClient.ListProgramCategoriesAsync(request, pagination);
         return (result.ProgramCategories, result.Pagination);
     }));
 }