using System;
using System.Threading.Tasks;
#if NET_45
using System.Collections.Generic;
#endif
namespace Octokit
{
///
/// Used to paginate through API response results.
///
///
/// This is meant to be internal, but I factored it out so we can change our mind more easily later.
///
public interface IApiPagination
{
///
/// Paginate a request to asynchronous fetch the results until no more are returned
///
/// Type of the API resource to get.
/// A function which generates the first request
/// The original URI (used only for raising an exception)
Task> GetAllPages(Func>> getFirstPage, Uri uri);
}
}