UNPKG

nxkit

Version:

This is a collection of tools, independent of any other libraries

64 lines (63 loc) 1.43 kB
import { EventNoticer } from './event'; import { PacketData } from './mysql/parser'; import { Field } from './mysql/query'; export interface Result extends PacketData { rows?: Dict[]; fields?: Dict<Field>; } export interface Callback { (err: Error | null, data?: Result[]): void; } export interface Options { port?: number; host?: string; user?: string; password?: string; database?: string; } export declare const defaultOptions: Options; /** * @class Database */ export declare abstract class Database { readonly options: Options; readonly onError: EventNoticer<Error>; constructor(options?: Options); /** * database statistics */ abstract statistics(cb: Callback): void; /** * @func query() */ abstract query(sql: string, cb: Callback): void; /** * close database connection */ abstract close(): void; /** * srart transaction */ abstract transaction(): void; /** * commit transaction */ abstract commit(): void; /** * rollback transaction and clear sql command queue */ abstract rollback(): void; /** * exec query database */ exec(sql: string): Promise<any>; } /** * escape sql param */ export declare function escape(param: any): string; declare const _default: { Database: typeof Database; escape: typeof escape; }; export default _default;