tspace-sql
Version:
mysql & postgresql query builder object relational mapping
143 lines (142 loc) • 5.37 kB
TypeScript
declare abstract class Abstract {
protected RESULT: any;
protected TRANSACTION: any;
protected REGISTRY: any;
protected PLUCK: string;
protected SAVE: string;
protected DELETE: string;
protected UPDATE: string;
protected INSERT: string;
protected SELECT: string;
protected ONLY: Array<string>;
protected EXCEPT: Array<string>;
protected COUNT: string;
protected FROM: string;
protected JOIN: string;
protected WHERE: string;
protected GROUP_BY: string;
protected ORDER_BY: string;
protected LIMIT: string;
protected HAVING: string;
protected TABLE_NAME: string;
protected TIMESTAMP: boolean;
protected HIDDEN: Array<any>;
protected PATTERN: any;
protected CONNECTION: any;
protected CONSTANT: any;
protected DIALECT: any;
protected DEBUG: boolean;
protected UUID: boolean;
protected UUID_CUSTOM: string;
protected HELPER: any;
abstract debug(): void;
abstract select(...params: string[]): void;
abstract whereNull(column: string): void;
abstract whereNotNull(column: string): void;
abstract where(column: string, operator: string, value: string): void;
abstract whereSensitive(column: string, operator: string, value: string): void;
abstract whereId(id: number): void;
abstract whereUser(id: number): void;
abstract whereEmail(value: string): void;
abstract whereGroupStart(column: string, operator: string, value: string): void;
abstract whereGroupEnd(column: string, operator: string, value: string): void;
abstract orWhereGroupStart(column: string, operator: string, value: string): void;
abstract orWhereGroupEnd(column: string, operator: string, value: string): void;
abstract orWhere(column: string, operator: string, value: string): void;
abstract whereIn(column: string, arrayValues: Array<any>): void;
abstract orWhereIn(column: string, arrayValues: Array<any>): void;
abstract whereNotIn(column: string, arrayValues: Array<any>): void;
abstract whereSubQuery(column: string, subQuery: string): void;
abstract whereNotInSubQuery(column: string, subQuery: string): void;
abstract orWhereSubQuery(column: string, subQuery: string): void;
abstract whereBetween(column: string, arrayValue: Array<any>): void;
abstract having(condition: string): void;
abstract join(pk: string, fk: string): void;
abstract orderBy(column: string, order: string): void;
abstract latest(column: string): void;
abstract oldest(column: string): void;
abstract groupBy(column: string): void;
abstract limit(number: number): void;
abstract hidden(...columns: string[]): void;
abstract insert(objects: object): void;
abstract create(objects: object): void;
abstract update(objects: object): void;
abstract insertNotExists(objects: object): void;
abstract createNotExists(objects: object): void;
abstract upsert(objects: object): void;
abstract insertOrUpdate(objects: object): void;
abstract createOrUpdate(objects: object): void;
abstract updateOrInsert(objects: object): void;
abstract updateOrCreate(objects: object): void;
abstract all({ debug }: {
debug: boolean;
}): Promise<any>;
abstract find(id: number, { debug }: {
debug: boolean;
}): Promise<any>;
abstract pagination({ limit, page, debug }: {
limit: number;
page: number;
debug: boolean;
}): Promise<any>;
abstract queryStatement(sql: string): Promise<any>;
abstract actionStatement({ sql, returnId }: {
sql?: string;
returnId?: boolean;
}): Promise<any>;
abstract first({ debug }: {
debug: boolean;
}): Promise<any>;
abstract get({ debug }: {
debug: boolean;
}): Promise<any>;
abstract findOne({ debug }: {
debug: boolean;
}): Promise<any>;
abstract findMany({ debug }: {
debug: boolean;
}): Promise<any>;
abstract getByGroup(column: string, { debug }: {
debug: boolean;
}): Promise<any>;
abstract findManyByGroup(column: string, { debug }: {
debug: boolean;
}): Promise<any>;
abstract toArray(column: string, { debug }: {
debug: boolean;
}): Promise<any>;
abstract toJSON({ debug }: {
debug: boolean;
}): Promise<any>;
abstract toSQL({ debug }: {
debug: boolean;
}): string;
abstract toString({ debug }: {
debug: boolean;
}): string;
abstract count(column: string, { debug }: {
debug: boolean;
}): Promise<any>;
abstract sum(column: string, { debug }: {
debug: boolean;
}): Promise<any>;
abstract avg(column: string, { debug }: {
debug: boolean;
}): Promise<any>;
abstract max(column: string, { debug }: {
debug: boolean;
}): Promise<any>;
abstract min(column: string, { debug }: {
debug: boolean;
}): Promise<any>;
abstract delete({ debug }: {
debug: boolean;
}): Promise<any>;
abstract exists({ debug }: {
debug: boolean;
}): Promise<any>;
abstract save({ debug }: {
debug: boolean;
}): Promise<any>;
}
export default Abstract;