UNPKG

@athenna/database

Version:

The Athenna database handler for SQL/NoSQL.

63 lines (62 loc) 1.9 kB
/** * @athenna/database * * (c) João Lenon <lenon@athenna.io> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ import type { Operations } from '#src/types'; import { BaseKnexDriver } from '#src/database/drivers/BaseKnexDriver'; import type { ConnectionOptions } from '#src/types/ConnectionOptions'; export declare class PostgresDriver extends BaseKnexDriver { /** * Connect to database. */ connect(options?: ConnectionOptions): void; /** * Close the connection with database in this instance. */ close(): Promise<void>; /** * List all databases available. */ getDatabases(): Promise<string[]>; /** * Create a new database. */ createDatabase(database: string): Promise<void>; /** * Drop some database. */ dropDatabase(database: string): Promise<void>; /** * List all tables available. */ getTables(): Promise<string[]>; /** * Remove all data inside some database table * and restart the identity of the table. */ truncate(table: string): Promise<void>; /** * Create many values in database. */ createMany<T = any>(data?: Partial<T>[]): Promise<T[]>; whereJson(column: string, value: any): this; whereJson(column: string, operation: Operations, value: any): this; orWhereJson(column: string, value: any): this; orWhereJson(column: string, operation: Operations, value: any): this; /** * Convert a json selector path to a valid postgres json path. */ private parseJsonSelectorToWildcardPath; /** * Normalize operator/value pair for postgres json path comparisons. */ private normalizeJsonOperation; /** * Convert query operators to postgres json path operators. */ private getJsonPathOperator; }