@atomiqlabs/base
Version:
Base classes and interfaces for atomiq protocol
16 lines (15 loc) • 480 B
TypeScript
import { StorageObject } from "./StorageObject";
export interface IStorageManager<T extends StorageObject> {
data: {
[key: string]: T;
};
init(): Promise<void>;
saveData(hash: string, object: T): Promise<void>;
removeData(hash: string): Promise<void>;
loadData(type: new (data: any) => T): Promise<T[]>;
removeDataArr?(keys: string[]): Promise<void>;
saveDataArr?(values: {
id: string;
object: T;
}[]): Promise<void>;
}