@motech-development/pagination
Version:
26 lines (25 loc) • 849 B
TypeScript
import { ExecutionContext } from '@nestjs/common';
import { CustomParamFactory } from '@nestjs/common/interfaces';
import { ICalculateOrderBy } from './pagination.utils';
/** Paginated query object. */
export interface IPaginationDecorator {
/** Ordering object. */
orderBy: ICalculateOrderBy;
/** Number of items to skip. */
skip: number;
/** Number of items to take. */
take: number;
}
/**
* Pagination decorator factory.
*
* @param _ - Decorator data.
* @param ctx - Execution context.
* @returns Pagination query object.
*/
export declare const paginationFactory: CustomParamFactory<unknown, ExecutionContext, IPaginationDecorator>;
/**
* Pagination decorator. Generates paginated query from query params.
*/
declare const Pagination: (...dataOrPipes: unknown[]) => ParameterDecorator;
export default Pagination;