@naturalcycles/db-lib
Version:
Lowest Common Denominator API to supported Databases
24 lines (23 loc) • 997 B
TypeScript
import type { CommonTimeSeriesDaoCfg, TimeSeriesDataPoint, TimeSeriesQuery, TimeSeriesSaveBatchOp } from './timeSeries.model.js';
/**
* TimeSeries DB implementation based on provided CommonDB database.
* Turns any CommonDB database into TimeSeries DB. Kind of.
*
* @experimental
*/
export declare class CommonTimeSeriesDao {
cfg: CommonTimeSeriesDaoCfg;
constructor(cfg: CommonTimeSeriesDaoCfg);
ping(): Promise<void>;
getSeries(): Promise<string[]>;
save(series: string, tsMillis: number, value: number): Promise<void>;
saveBatch(series: string, dataPoints: TimeSeriesDataPoint[]): Promise<void>;
/**
* All ops are executed as a single CommonDB Transaction.
*/
commitTransaction(ops: TimeSeriesSaveBatchOp[]): Promise<void>;
deleteById(series: string, tsMillis: number): Promise<void>;
deleteByIds(series: string, ids: number[]): Promise<void>;
query(q: TimeSeriesQuery): Promise<TimeSeriesDataPoint[]>;
optimize(): Promise<void>;
}