import { SelectQueryBuilder, ObjectType } from 'typeorm'; import { OrderBy, PromisePagePagination, PagePagination, Nullable, Take } from './interfaces/paginator'; export interface PagePaginatorParams> { columnNames?: TColumnNames | null; take?: Nullable | number | null; orderBy: OrderBy | OrderBy[]; } export interface PagePaginatorPaginateParams> { page?: number | null; take?: number | null; orderBy?: OrderBy | OrderBy[]; } export declare class PagePaginator> { entity: ObjectType; orderBy: OrderBy | OrderBy[]; columnNames: Record; takeOptions: Take; constructor(entity: ObjectType, { orderBy, columnNames, take, }: PagePaginatorParams); paginate(qb: SelectQueryBuilder, params?: PagePaginatorPaginateParams): Promise>; promisePaginate(qb: SelectQueryBuilder, params?: PagePaginatorPaginateParams): PromisePagePagination; }