/// import { AbstractLevelDOWN } from 'abstract-leveldown'; import { LevelUp } from 'levelup'; import { Mutex } from '../../mutex'; import { IJsonSerializable } from '../../serde'; import { BatchOperation, Database, DatabaseSchema, IDatabaseStore, IDatabaseStoreOptions, IDatabaseTransaction, SchemaKey, SchemaValue } from '../database'; import { DatabaseIteratorOptions, DatabaseKeyRange } from '../database/types'; import { LevelupBatch } from './batch'; import { LevelupStore } from './store'; type MetaSchema = { key: string; value: IJsonSerializable; }; type StorageAbstractLevelDown = AbstractLevelDOWN; export declare class LevelupDatabase extends Database { db: StorageAbstractLevelDown; metaStore: LevelupStore; lock: Mutex; _levelup: LevelUp | null; get levelup(): LevelUp; constructor(db: StorageAbstractLevelDown); get isOpen(): boolean; /** * @param options https://github.com/Level/leveldown/blob/51979d11f576c480bc5729a6adea6ac9fed57216/binding.cc#L980k, */ open(): Promise; close(): Promise; upgrade(version: number): Promise; compact(): Promise; transaction(handler: (transaction: IDatabaseTransaction) => Promise): Promise; transaction(): IDatabaseTransaction; batch(writes: BatchOperation, SchemaValue>[]): Promise; batch(writes?: undefined): LevelupBatch; get(key: Readonly): Promise; put(key: Readonly, value: Buffer): Promise; getAllIter(range?: DatabaseKeyRange, options?: DatabaseIteratorOptions): AsyncGenerator<[Buffer, Buffer]>; getVersion(): Promise; putVersion(version: number, transaction?: IDatabaseTransaction): Promise; protected _createStore(options: IDatabaseStoreOptions): IDatabaseStore; size(): Promise; } export {}; //# sourceMappingURL=database.d.ts.map