import { StorageObject } from "crosslightning-base"; import * as BN from "bn.js"; export type StorageQueryParam = { key: string; value?: any; values?: any[]; }; export interface IIntermediaryStorage { init(): Promise; query(params: StorageQueryParam[]): Promise; getData(hash: string, sequence: BN | null): Promise; saveData(hash: string, sequence: BN | null, object: T): Promise; removeData(hash: string, sequence: BN | null): Promise; loadData(type: new (data: any) => T): Promise; }