declare module "rocksdb-native" { import type { Encoder } from "compact-encoding"; interface SessionOpts { valueEncoding?: Encoder; keyEncoding?: Encoder; columnFamily?: string; readOnly?: boolean; } interface IteratorOpts { gt?: Key; gte?: Key; lt?: Key; lte?: Key; reverse?: boolean; limit?: number; values?: boolean; keys?: boolean; } interface Entry { key: Key; value: Value; } /** * RocksDB-Native Instance. * **WARNING**: This is a stub used in hyper-sdk. * Most methods are not yet documented */ export default class RocksDB { constructor(storageLocation: string, options?: SessionOpts); put(key: Key, value: Value): Promise; get(key: Key): Promise; delete(key: Key): Promise; flush(): Promise; close(): Promise; session( options?: SessionOpts ): RocksDB; iterator( range?: IteratorOpts, options?: IteratorOpts ): AsyncIterable>; } }