import { CursorFields } from '../entities/cursor-fields.entity'; import { Cursor } from '../entities/cursor.entity'; import { RelayQueryBuilderPaginationOptions } from '../interfaces/relay-paginated.interface'; import { Repository, SelectQueryBuilder } from 'typeorm'; export declare class QueryService { private qb; private repository; private cursor?; private cursorFields?; private arguments; get hasCursor(): boolean; get orderByFieldName(): string; get idFieldName(): string; get limit(): number; getCursorFields(): CursorFields; setCursor(cursor?: Cursor): void; setQueryBuilder(queryBuilder: SelectQueryBuilder): void; getQueryBuilder(): SelectQueryBuilder; withWhere(conditions: Record): this; initialize(repository: Repository, options: RelayQueryBuilderPaginationOptions): void; fetchEntitiesAndCount(): Promise<[number, Node[]]>; fetchEntities(): Promise; calculatePreviousCount(): Promise; private getPrimarySortField; private getOppositeComparisonOperator; private getComparisonOperator; private getDateColumnPropertyName; private getIdColumnPropertyName; private applyCursorFilters; private addOrderByCondition; private fetchNodes; private warnIfFieldsNotIndexed; private hasUnindexedFields; private unindexedFields; private indexesUsed; private getIndexedFields; private fetchEntityCount; private cloneQueryBuilder; private getOrderDirection; private getPrimarySortDirection; private reverseOrder; }