UNPKG

nukak

Version:

flexible and efficient ORM, with declarative JSON syntax and smart type-safety

39 lines (38 loc) 2.64 kB
import { QueryWhere, Scalar, QueryWhereFieldOperatorMap, QuerySort, QueryPager, FieldKey, QuerySelect, Type, QueryOptions, QueryDialect, QueryWhereOptions, QueryComparisonOptions, QueryWhereMap, QuerySelectOptions, QueryRaw, QuerySearch, Query, QueryConflictPaths, EntityMeta, QueryRawFnOptions } from '../type/index.js'; import { CallbackKey } from '../util/index.js'; export declare abstract class AbstractSqlDialect implements QueryDialect { readonly escapeIdChar: '`' | '"'; readonly beginTransactionCommand: string; readonly escapeIdRegex: RegExp; constructor(escapeIdChar?: '`' | '"', beginTransactionCommand?: string); returningId<E>(entity: Type<E>): string; search<E>(entity: Type<E>, q?: Query<E>, opts?: QueryOptions): string; selectFields<E>(entity: Type<E>, select: QuerySelect<E>, opts: QuerySelectOptions): string; selectRelations<E>(entity: Type<E>, select?: QuerySelect<E>, { prefix }?: { prefix?: string; }): { fields: string; tables: string; }; select<E>(entity: Type<E>, select: QuerySelect<E>, opts?: QueryOptions): string; where<E>(entity: Type<E>, where: QueryWhere<E>, opts: QueryWhereOptions): string; compare<E, K extends keyof QueryWhereMap<E>>(entity: Type<E>, key: K, val: QueryWhereMap<E>[K], opts?: QueryComparisonOptions): string; compareFieldOperator<E, K extends keyof QueryWhereFieldOperatorMap<E>>(entity: Type<E>, key: FieldKey<E>, op: K, val: QueryWhereFieldOperatorMap<E>[K], opts?: QueryOptions): string; getComparisonKey<E>(entity: Type<E>, key: FieldKey<E>, { prefix }?: QueryOptions): Scalar; sort<E>(entity: Type<E>, sort: QuerySort<E>, { prefix }: QueryOptions): string; pager(opts: QueryPager): string; count<E>(entity: Type<E>, q: QuerySearch<E>, opts?: QueryOptions): string; find<E>(entity: Type<E>, q: Query<E>, opts?: QueryOptions): string; insert<E>(entity: Type<E>, payload: E | E[]): string; update<E>(entity: Type<E>, q: QuerySearch<E>, payload: E, opts?: QueryOptions): string; upsert<E>(entity: Type<E>, conflictPaths: QueryConflictPaths<E>, payload: E): string; delete<E>(entity: Type<E>, q: QuerySearch<E>, opts?: QueryOptions): string; escapeId(val: string, forbidQualified?: boolean, addDot?: boolean): string; getPersistable<E>(meta: EntityMeta<E>, payload: E, callbackKey: CallbackKey): E; getPersistables<E>(meta: EntityMeta<E>, payload: E | E[], callbackKey: CallbackKey): E[]; getRawValue(opts: QueryRawFnOptions & { value: QueryRaw; autoPrefixAlias?: boolean; }): string; abstract escape(value: unknown): string; }