import { Cursor } from './cursor'; import { Entity } from './entity'; import { EntityInfo } from './entity-info'; import { CursorPaginateExpression } from './paginate-expressions'; import { OffsetPaginateExpression } from './paginate-expressions/offset-paginate-expression'; import { SizePaginateExpression } from './paginate-expressions/size-paginate-expression'; /** * Builder used to build paginate expressions. * * @type {PaginateExpressionBuilder} */ export declare class PaginateExpressionBuilder { /** * Entity info. * * @type {EntityInfo} */ readonly entityInfo: EntityInfo; /** * Constructor. * * @param {EntityInfo} entityInfo Entity info. */ constructor(entityInfo: EntityInfo); /** * Builds offset based paginate expression. * * @param {number} offset Offset to apply. * * @returns {OffsetPaginateExpression} Offset paginate expression. */ offset(offset: number): OffsetPaginateExpression; /** * Builds limit based paginate expression. * * @param {number} limit Limit to apply. * * @returns {OffsetPaginateExpression} Offset paginate expression. */ limit(limit: number): OffsetPaginateExpression; /** * Builds offset limit based paginate expression. * * @param {number} offset Offset to apply. * @param {number} limit Limit to apply. * * @returns {OffsetPaginateExpression} Offset paginate expression. */ offsetLimit(offset: number, limit: number): OffsetPaginateExpression; /** * Builds page based paginate expression. * * @param {number} page Page to take. * * @returns {SizePaginateExpression} Size paginate expression. */ page(page: number): SizePaginateExpression; /** * Builds size based paginate expression. * * @param {number} size Size to apply. * * @returns {SizePaginateExpression} Size paginate expression. */ size(size: number): SizePaginateExpression; /** * Builds page size based paginate expression. * * @param {number} page Page to take. * @param {number} size Size to apply. * * @returns {SizePaginateExpression} Size paginate expression. */ pageSize(page: number, size: number): SizePaginateExpression; /** * Builds cursor based paginate expression. * * @param {number} take Number to take. * * @returns {CursorPaginateExpression} Cursor paginate expression. */ take(take: number): CursorPaginateExpression; /** * Builds cursor based paginate expression. * * @param {number} take Number of entities to take. * @param {number} afterCursor Cursor after which to take entities. * * @returns {CursorPaginateExpression} Cursor paginate expression. */ takeAfterCursor(take: number, afterCursor: Cursor): CursorPaginateExpression; /** * Builds cursor based paginate expression. * * @param {number} take Number of entities to take. * @param {number} beforeCursor Cursor before which to take entities. * * @returns {CursorPaginateExpression} Cursor paginate expression. */ takeBeforeCursor(take: number, beforeCursor: Cursor): CursorPaginateExpression; /** * Builds cursor based paginate expression. * * @param {number} afterCursor Cursor after which to take entities. * @param {number} beforeCursor Cursor before which to take entities. * * @returns {CursorPaginateExpression} Cursor paginate expression. */ takeBetweenCursors(afterCursor: Cursor, beforeCursor: Cursor): CursorPaginateExpression; } //# sourceMappingURL=paginate-expression-builder.d.ts.map