import { ISpecification, IQuerySpecificationEvaluator, QueryType } from './specification.interface'; import { SelectQueryBuilder } from 'typeorm'; import { SlimExpressionFunction } from 'slim-exp'; export declare class SQLQuerySpecificationEvaluator implements IQuerySpecificationEvaluator { private readonly initialQuery; private readonly spec; private registerdAliases; private _query; private _queryReady; private _discriminator; private _selectBuilder; constructor(initialQuery: (alias: string) => SelectQueryBuilder, spec: ISpecification); _applyLeftJoin(query: SelectQueryBuilder, intialAlias: string, exp: SlimExpressionFunction | string): { propertyName: string; entityAlias: string; }; private _applyJoin; private _getFieldNameAndAlias; private _getPropertyAlias; private _getFieldFromRegisteredAlias; private _isOrBinding; private _generateQuery; private _chunkDownToQuery; private _applyRecursively; private _getQuerySequence; private _buildQueryFromExpression; private _polyfillDate; private _handleFunctionInvokation; private _getUniqueParamName; getParams(): any; getQuery(): Promise; private _buildSelect; private _applyFunction; executeQuery(type: QueryType): Promise; }