UNPKG

@blogcode/nest-typeorm-pagination

Version:
33 lines (32 loc) 1.41 kB
import { DataSource, ObjectLiteral, Repository } from "typeorm"; import { PaginationCursorResult, PaginationOffsetResult } from "./types"; import { PaginationCursorDto, PaginationOffsetDto } from "./dto"; export declare class PaginationService { private readonly dataSource; private filterMapping; private defaultLimit; private maxLimit; private entityName; private resultName; private primaryKey; constructor(dataSource: DataSource); setFilterMapping(mapping: Record<string, string>): this; setDefaultLimit(limit: number): this; setMaxLimit(limit: number): this; setEntityName(name: string): this; setResultName(name: string): this; setPrimaryKey(key: string): this; private getOperator; private getLimit; private parseValue; private genCondition; private getWrapper; private normalize; private genFullTextSearch; private applyFilterCondition; private applyFilters; private applyOrder; offset<T extends ObjectLiteral, K extends string = string>(repository: Repository<T>, dto: PaginationOffsetDto): Promise<PaginationOffsetResult<K, T>>; cursor<T extends ObjectLiteral, K extends string = string>(repository: Repository<T>, dto: PaginationCursorDto): Promise<PaginationCursorResult<K, T>>; getCursorTotal<T extends ObjectLiteral>(repository: Repository<T>, dto: PaginationCursorDto): Promise<number>; }