@stoqey/sofa
Version:
Couchbase utilities
18 lines (17 loc) • 772 B
TypeScript
import { IConditionExpr, ILetExpr, ISelectType, LogicalWhereExpr, SortType } from './interface/query.types';
/**
* Basic definition of Query Class
* */
export declare abstract class BaseQuery {
protected _conditions: IConditionExpr;
protected _collection: string;
protected constructor(_conditions: IConditionExpr, _collection: string);
abstract select(value?: ISelectType[] | string | undefined): BaseQuery;
abstract where(value: LogicalWhereExpr): BaseQuery;
abstract orderBy(value: Record<string, SortType>): BaseQuery;
abstract limit(value: number): BaseQuery;
abstract offset(value: number): BaseQuery;
abstract let(value: [ILetExpr]): BaseQuery;
abstract useKeys(value: [string]): BaseQuery;
abstract build(): string;
}