/** * TikTok Business API pagination. * * TikTok uses cursor-based pagination with `cursor` + `has_more`: * - Request: `cursor` (integer, default 0 or current timestamp) * - Response: `{ data: [...], cursor: number, has_more: boolean }` * * This differs from Meta's `paging.cursors.after` / `paging.next` pattern. */ export interface TikTokPaginatedResponse { cursor: number; has_more: boolean; [key: string]: unknown; } export interface TikTokCursorOptions { /** Function that makes the API call with given cursor. */ fetcher: (cursor?: number) => Promise & Record>; /** Function to extract the data array from the response. */ extractData: (response: TikTokPaginatedResponse & Record) => T[]; } /** * Async-iterable cursor for TikTok paginated endpoints. * Works with any endpoint that returns `{ cursor, has_more, ...data }`. */ export declare class TikTokCursor implements AsyncIterable { private readonly fetcher; private readonly extractData; private nextCursor; private hasMore; private started; constructor(opts: TikTokCursorOptions); /** Fetch the next page. */ next(): Promise<{ data: T[]; hasNext: boolean; }>; [Symbol.asyncIterator](): AsyncIterator; /** Collect all items across all pages. */ toArray(): Promise; /** Collect up to N items. */ take(n: number): Promise; } //# sourceMappingURL=pagination.d.ts.map