@naturalcycles/mysql-lib
Version:
MySQL client implementing CommonDB interface
29 lines (28 loc) • 1.34 kB
TypeScript
import type { CommonDBCreateOptions } from '@naturalcycles/db-lib';
import type { CommonKeyValueDB, IncrementTuple, KeyValueDBTuple } from '@naturalcycles/db-lib/kv';
import type { ReadableTyped } from '@naturalcycles/nodejs-lib/stream';
import type { MysqlDBCfg } from './mysql.db.js';
import { MysqlDB } from './mysql.db.js';
export declare class MySQLKeyValueDB implements CommonKeyValueDB {
cfg: MysqlDBCfg;
constructor(cfg: MysqlDBCfg);
db: MysqlDB;
support: any;
ping(): Promise<void>;
close(): Promise<void>;
createTable(table: string, opt?: CommonDBCreateOptions): Promise<void>;
getByIds(table: string, ids: string[]): Promise<KeyValueDBTuple[]>;
/**
* Use with caution!
*/
dropTable(table: string): Promise<void>;
deleteByIds(table: string, ids: string[]): Promise<void>;
saveBatch(table: string, entries: KeyValueDBTuple[]): Promise<void>;
streamIds(table: string, limit?: number): ReadableTyped<string>;
streamValues(table: string, limit?: number): ReadableTyped<Buffer>;
streamEntries(table: string, limit?: number): ReadableTyped<KeyValueDBTuple>;
beginTransaction(): Promise<void>;
endTransaction(): Promise<void>;
count(table: string): Promise<number>;
incrementBatch(_table: string, _entries: IncrementTuple[]): Promise<IncrementTuple[]>;
}