UNPKG

@itwin/insights-client

Version:

Insights client for the iTwin platform

21 lines 1.14 kB
import type { PagedResponseLinks } from "../Links"; export interface Collection<TEntity> { values: Array<TEntity>; _links: PagedResponseLinks; } export interface EntityCollectionPage<TEntity> { /** Current page entities. */ entities: TEntity[]; /** Function to retrieve the next page of the entities. If `undefined` the current page is last. */ next?: () => Promise<EntityCollectionPage<TEntity>>; } export type EntityPageQueryFunc<TEntity> = () => Promise<EntityCollectionPage<TEntity>>; export declare function flatten<TEntity>(pagedIterator: AsyncIterableIterator<TEntity[]>): AsyncIterableIterator<TEntity>; export declare function getEntityCollectionPage<TEntity>(nextUrl: string, getNextBatch: (url: string) => Promise<Collection<TEntity>>): Promise<EntityCollectionPage<TEntity>>; /** * Loads all entities from an iterator into an array. * @param {AsyncIterableIterator<TEntity>} iterator entity iterator. * @returns {Promise<TEntity[]>} entity array. */ export declare function toArray<TEntity>(iterator: AsyncIterableIterator<TEntity>): Promise<TEntity[]>; //# sourceMappingURL=IteratorUtil.d.ts.map