///
///
import type { BatchDBOp, DB } from "@ethereumjs/trie";
import type { AbstractIteratorOptions } from "abstract-level";
import { GanacheLevelUp } from "./database";
/**
* `@ethereumjs/trie` requires that any database passed to it implements a `DB`.
* The `DB` interface defines the minimum set of database access methods that
* ethereumjs needs internally. We implement that interface in `TrieDB`, as well
* as a few other methods that we use in Ganache internally.
*/
export declare class TrieDB implements DB {
readonly _db: GanacheLevelUp;
constructor(db: GanacheLevelUp);
get(key: Buffer): Promise;
put(key: Buffer, val: Buffer): Promise;
del(key: Buffer): Promise;
batch(opStack: BatchDBOp[]): Promise;
copy(): TrieDB;
close(): Promise;
sublevel(prefix: string, options: object): GanacheLevelUp;
createReadStream(options?: AbstractIteratorOptions): NodeJS.ReadableStream;
}
//# sourceMappingURL=trie-db.d.ts.map