import { LambdaExpression, ValueExpression, ReturnExpression, Group, Order } from './types'; export interface Queryable { where(expression: LambdaExpression): Queryable; select(expression: ValueExpression): Queryable; asc(expression: ValueExpression): Queryable; desc(expression: ValueExpression): Queryable; order(expression: ValueExpression, order: Order): Queryable; groupBy(expression: ReturnExpression): Queryable>; min(expression: ReturnExpression): TResult; max(expression: ReturnExpression): TResult; count(expression?: LambdaExpression): number; toList(): Array; }