@twurple/api
Version:
Interact with Twitch's API.
49 lines • 1.81 kB
TypeScript
/**
* Represents a request to the new Twitch API (Helix) that utilizes a cursor to paginate through its results.
*
* Aside from the methods described below, you can also utilize the async iterator using `for await .. of`:
*
* ```ts
* const result = client.videos.getVideosByUserPaginated('125328655');
* for await (const video of result) {
* console.log(video.title);
* }
* ```
*/
export declare class HelixPaginatedRequest<D, T> {
private readonly _callOptions;
private readonly _mapper;
private readonly _limitPerPage;
/**
* The last fetched page of data associated to the requested resource.
*
* Only works with {@link HelixPaginatedRequest#getNext}} and not with any other methods of data fetching.
*/
get current(): D[] | undefined;
/**
* Gets the next available page of data associated to the requested resource, or an empty array if there are no more available pages.
*/
getNext(): Promise<T[]>;
/**
* Gets all data associated to the requested resource.
*
* Be aware that this makes multiple calls to the Twitch API. Due to this, you might be more suspectible to rate limits.
*
* Also be aware that this resets the internal cursor, so avoid using this and {@link HelixPaginatedRequest#getNext}} together.
*/
getAll(): Promise<T[]>;
/**
* Gets the current cursor.
*
* Only useful if you want to make manual requests to the API.
*/
get currentCursor(): string | undefined;
/**
* Resets the internal cursor.
*
* This will make {@link HelixPaginatedRequest#getNext}} start from the first page again.
*/
reset(): void;
[Symbol.asyncIterator](): AsyncGenerator<T, void, undefined>;
}
//# sourceMappingURL=HelixPaginatedRequest.d.ts.map