@pelotech/nestjsx-crud-request
Version:
NestJS CRUD for RESTful APIs - request query builder (temporary patch)
41 lines (40 loc) • 1.34 kB
TypeScript
import { ObjectLiteral } from '@pelotech/nestjsx-util';
import { ParamsOptions, ParsedRequestParams } from './interfaces';
import { QueryFields, QueryFilter, QueryJoin, QuerySort, SCondition, SConditionAND, SFields } from './types';
export declare class RequestQueryParser implements ParsedRequestParams {
fields: QueryFields;
paramsFilter: QueryFilter[];
authPersist: ObjectLiteral;
search: SCondition;
filter: QueryFilter[];
or: QueryFilter[];
join: QueryJoin[];
sort: QuerySort[];
limit: number;
offset: number;
page: number;
cache: number;
private _params;
private _query;
private _paramNames;
private _paramsOptions;
private readonly _options;
static create(): RequestQueryParser;
getParsed(): ParsedRequestParams;
parseQuery(query: any): this;
parseParams(params: any, options: ParamsOptions): this;
setAuthPersist(persist?: ObjectLiteral): void;
convertFilterToSearch(filter: QueryFilter): SFields | SConditionAND;
private getParamNames;
private getParamValues;
private parseQueryParam;
private parseValue;
private parseValues;
private fieldsParser;
private parseSearchQueryParam;
private conditionParser;
private joinParser;
private sortParser;
private numericParser;
private paramParser;
}