nukak-postgres
Version:
flexible and efficient ORM, with declarative JSON syntax and smart type-safety
14 lines (13 loc) • 1.21 kB
TypeScript
import { AbstractSqlDialect } from 'nukak/dialect';
import { type FieldKey, type FieldOptions, type NamingStrategy, type QueryComparisonOptions, type QueryConflictPaths, type QueryContext, type QueryOptions, type QueryWhereFieldOperatorMap, type QueryWhereMap, type Type } from 'nukak/type';
export declare class PostgresDialect extends AbstractSqlDialect {
constructor(namingStrategy?: NamingStrategy);
addValue(values: unknown[], value: unknown): string;
placeholder(index: number): string;
insert<E>(ctx: QueryContext, entity: Type<E>, payload: E | E[], opts?: QueryOptions): void;
upsert<E>(ctx: QueryContext, entity: Type<E>, conflictPaths: QueryConflictPaths<E>, payload: E): void;
compare<E, K extends keyof QueryWhereMap<E>>(ctx: QueryContext, entity: Type<E>, key: K, val: QueryWhereMap<E>[K], opts?: QueryComparisonOptions): void;
compareFieldOperator<E, K extends keyof QueryWhereFieldOperatorMap<E>>(ctx: QueryContext, entity: Type<E>, key: FieldKey<E>, op: K, val: QueryWhereFieldOperatorMap<E>[K], opts?: QueryOptions): void;
protected formatPersistableValue<E>(ctx: QueryContext, field: FieldOptions, value: unknown): void;
escape(value: unknown): string;
}