@ibsolution/types-hana-client
Version:
Typescript support/bindings on top of @sap/hana-client SAP Nodejs module to work with Hana DB from Nodejs application.
48 lines (41 loc) • 1.77 kB
TypeScript
declare module '@ibsolution/types-hana-client' {
type HanaClientCallBack = (error: Error) => void;
type HanaResultCallBack<T> = (error: Error, results: T) => void;
type HanaStatementCallBack = (error: Error, stmt: Statement) => void;
type HanaResultSetCallBack<T> = (error: Error, rs: ResultSet) => void;
// tslint:disable-next-line:interface-name
interface ConnectionOptions {
host?: string;
port?: number;
serverNode?: string;
uid: string;
pwd: string;
schema?: string;
databaseName?: string;
autoCommit?: boolean;
ca?: string;
}
function createConnection(options?: ConnectionOptions): Connection;
type Results = [];
class ResultSet {
public next(): boolean;
public getValues<T>(): T;
}
class Statement {
public exec<T>(fn: HanaResultCallBack<T>): void;
public exec<T>(params: any | any[], fn: HanaResultCallBack<T>): void;
public execBatch<T>(params: any[], fn: HanaResultCallBack<T>): void;
public execQuery<T>(params: any | any[], fn: HanaResultSetCallBack<T>): void;
public drop(fn: HanaClientCallBack): void;
}
class Connection {
public connect(options: ConnectionOptions, fn: HanaClientCallBack): void;
public disconnect(fn: HanaClientCallBack): void;
public exec<T>(sql: string, fn: HanaResultCallBack<T>): void;
public exec<T>(sql: string, params: any | any[], fn: HanaResultCallBack<T>): void;
public prepare(sql: string, fn: HanaStatementCallBack): void;
public setAutoCommit(autoCommit: boolean): void;
public commit(fn: HanaClientCallBack): void;
public rollback(fn: HanaClientCallBack): void;
}
}