import QueryCondition from "../condition/query-condition"; import QueryOrdering from "../other/query-ordering"; import QueryTable from "../query-table"; import QueryColumn from "../column/query-column"; import { QueryProcessor, QueryAction } from "../helpers/internal-types"; export default class SelectQuery> { protected _queryProcessor: QueryProcessor; protected _tables: Table[]; constructor(_queryProcessor: QueryProcessor, _tables: Table[]); protected _distinct: boolean; protected _offset: number; protected _limit: number; protected _conditions: QueryCondition[]; protected _groupBy: QueryColumn[]; protected _having: QueryCondition
[]; protected _orderings: (QueryColumn | QueryOrdering
)[]; protected _columns: QueryColumn[]; protected _action: QueryAction; offset(offset: number): this; limit(limit: number): this; distinct(): this; where(...conditions: QueryCondition
[]): this; groupBy(...columns: QueryColumn[]): this; having(...conditions: QueryCondition
[]): this; orderBy(...orderings: (QueryColumn | QueryOrdering
)[]): this; select(): Promise; select(column: QueryColumn): Promise; select(...columns: QueryColumn[]): Promise; }