import { EntityManager } from 'typeorm'; export declare const DEFAULT_PAGE = 1; export declare const DEFAULT_SIZE = 10; export declare const MAX_PAGE_SIZE = 1000; export declare enum Order { ASC = "ASC", DESC = "DESC" } export declare const DefaultPageRequest: PageRequest; export interface PageRequest { page?: number; size?: number; orderBy?: { column?: string; order?: Order; }; } export declare class PageHelper { static doCursorPageSeries(fn: (next?: string) => Promise): Promise; static doPageSeries(total: number, size: number, handler: (params: { page: number; totalPages: number; start: number; end: number; }) => Promise): Promise; static doPageSeriesWithTransaction(total: number, size: number, handler: (page: number, totalPages: number, transaction: EntityManager) => Promise): Promise; static latestSkip(total: number, latest: number): { skip: number; take: number; }; } export declare class Pageable { total: number; page: number; size: number; items: T[]; } export declare class CursoredPageable { first: number; after: string; total: number; cursorInfo: CursorInfo; items: T[]; } export declare type CursorInfo = { endCursor: string | number; hasNextPage: boolean; }; export declare type PageInfo = { page: number; size: number; take: number; skip: number; }; export declare const emptyPage: (pageInfo: PageInfo) => Pageable; export declare const toPage: (pageRequest: PageRequest, startsWith0?: boolean) => PageInfo;