@atomiqlabs/base
Version:
Base classes and interfaces for atomiq protocol
17 lines (12 loc) • 457 B
text/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>;
}