UNPKG

node-firebird-driver

Version:
45 lines (44 loc) 3.17 kB
import { AbstractAttachment } from './attachment'; import { AbstractResultSet } from './resultset'; import { AbstractTransaction } from './transaction'; import { ExecuteOptions, ExecuteQueryOptions, FetchOptions, Statement } from '..'; /** AbstractStatement implementation. */ export declare abstract class AbstractStatement implements Statement { attachment?: AbstractAttachment | undefined; resultSet?: AbstractResultSet; abstract getExecPathText(): Promise<string | undefined>; /** Gets the query's result columns labels. Returns empty array for queries without result. */ abstract get columnLabels(): Promise<string[]>; /** When true, query result must be obtained with method executeQuery. */ readonly hasResultSet: boolean; /** Default query's execute options. */ defaultExecuteOptions: ExecuteOptions; /** Default query's executeQuery options. */ defaultExecuteQueryOptions: ExecuteQueryOptions; /** Default result set's fetch options. */ defaultFetchOptions: FetchOptions; protected constructor(attachment?: AbstractAttachment | undefined); /** Disposes this statement's resources. */ dispose(): Promise<void>; /** Executes a prepared statement that uses the SET TRANSACTION command. Returns the new transaction. */ executeTransaction(transaction: AbstractTransaction): Promise<AbstractTransaction>; /** Executes a prepared statement that has no result set. */ execute(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteOptions): Promise<void>; /** Executes a statement that returns a single record as [col1, col2, ..., colN]. */ executeSingleton(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteOptions): Promise<any[]>; /** Executes a statement that returns a single record as an object. */ executeSingletonAsObject<T extends object>(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteOptions): Promise<T>; /** Executes a statement that returns a single record as [col1, col2, ..., colN]. */ executeReturning(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteOptions): Promise<any[]>; /** Executes a statement that returns a single record as an object. */ executeReturningAsObject<T extends object>(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteOptions): Promise<T>; /** Executes a prepared statement that has result set. */ executeQuery(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteQueryOptions): Promise<AbstractResultSet>; get isValid(): boolean; private check; abstract setCursorName(cursorName: string): Promise<void>; protected abstract internalDispose(): Promise<void>; protected abstract internalExecuteTransaction(transaction: AbstractTransaction): Promise<AbstractTransaction>; protected abstract internalExecute(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteOptions): Promise<any[]>; protected abstract internalExecuteQuery(transaction: AbstractTransaction, parameters?: any[], options?: ExecuteQueryOptions): Promise<AbstractResultSet>; }