sedk-mysql
Version:
Simple SQL builder and validator for MySQL
23 lines (22 loc) • 1.73 kB
TypeScript
import { BooleanLike, Condition, Expression, NumberLike, OperandType, PrimitiveType, TextLike } from './models';
import { ArithmeticOperator, ComparisonOperator, NullOperator, Operator } from './operators';
import { OrderByDirection, OrderByItem, OrderByItemInfo, OrderByNullsPosition } from './orderBy';
import { AggregateFunction } from './AggregateFunction';
import { BooleanColumn, DateColumn, NumberColumn, TextColumn } from './database';
import { Binder } from './binder';
export declare function e(left: OperandType): Expression;
export declare function e(left: BooleanLike, operator: ComparisonOperator, right: BooleanLike): Condition;
export declare function e(left: BooleanColumn | NumberColumn | TextColumn | DateColumn, operator: NullOperator, right: BooleanLike | null): Condition;
export declare function e(left: NumberLike | Binder, operator: ArithmeticOperator, right: NumberLike | Binder): Expression;
export declare function e(left: TextLike, operator: ComparisonOperator, right: TextLike): Condition;
export declare function e(left: OperandType, operator: Operator, right: OperandType): Expression;
export declare function o(alias: OrderByItem, direction?: OrderByDirection, nullsPosition?: OrderByNullsPosition): OrderByItemInfo;
export declare function $(value: PrimitiveType): Binder;
export declare function NOT(condition: Condition): Condition;
export declare const f: {
sum: (column: Expression | NumberLike) => AggregateFunction;
avg: (column: Expression | NumberLike) => AggregateFunction;
count: (column: Expression | NumberLike) => AggregateFunction;
max: (column: Expression | NumberLike) => AggregateFunction;
min: (column: Expression | NumberLike) => AggregateFunction;
};