UNPKG

@breautek/storm

Version:

Object-Oriented REST API framework

38 lines (37 loc) 1.33 kB
import { Readable } from 'stream'; import { IQueryable } from './IQueryable'; import { IsolationLevel } from './IsolationLevel'; import { IDatabasePosition } from './IDatabasePosition'; import { TransactionAccessLevel } from './TransactionAccessLevel'; export interface IDatabaseConnection { setInstantiationStack(stack: string): void; getInstantiationStack(): string; getAPI(): any; isReadOnly(): boolean; isMaster(): boolean; isReplication(): boolean; hasReplicationEnabled(): boolean; setTimeout(timeout: number): void; getTimeout(): number; query(query: IQueryable<any>, params?: any): Promise<any>; /** * @deprecated - Streaming queries does not support post processing, creating a confusing API */ stream(query: IQueryable<any>, params?: any, streamOptions?: any): Readable; close(forceClose?: boolean): Promise<void>; isClosed(): boolean; startTransaction(level?: IsolationLevel, accessLevel?: TransactionAccessLevel): Promise<void>; isTransaction(): boolean; commit(): Promise<void>; rollback(): Promise<void>; /** * @since 8.4.0 * @param query * @param params */ formatQuery(query: IQueryable<any>): string; /** * @since 8.1.0 */ getCurrentDatabasePosition(): Promise<IDatabasePosition>; }