/// import * as leveldown from "leveldown"; export = levelup; declare var levelup: levelup.LevelUpConstructor; declare namespace levelup { interface CustomEncoding { encode(val: any): Buffer | string; decode(val: Buffer | string): any; buffer: boolean; type: string; } type Encoding = string | CustomEncoding; interface Batch { type: string; key: any; value?: any; keyEncoding?: Encoding | undefined; valueEncoding?: Encoding | undefined; } interface LevelUpBase { open(callback?: (error: any) => any): void; close(callback?: (error: any) => any): void; put(key: any, value: any, callback?: (error: any) => any): void; put(key: any, value: any, options?: { sync?: boolean | undefined }, callback?: (error: any) => any): void; get(key: any, callback?: (error: any, value: any) => any): void; get( key: any, options?: { keyEncoding?: Encoding | undefined; fillCache?: boolean | undefined }, callback?: (error: any, value: any) => any, ): void; del(key: any, callback?: (error: any) => any): void; del( key: any, options?: { keyEncoding?: Encoding | undefined; sync?: boolean | undefined }, callback?: (error: any) => any, ): void; batch( array: BatchType[], options?: { keyEncoding?: Encoding | undefined; valueEncoding?: Encoding | undefined; sync?: boolean | undefined; }, callback?: (error?: any) => any, ): void; batch(array: BatchType[], callback?: (error?: any) => any): void; batch(): LevelUpChain; isOpen(): boolean; isClosed(): boolean; createReadStream(options?: any): any; createKeyStream(options?: any): any; createValueStream(options?: any): any; createWriteStream(options?: any): any; destroy(location: string, callback?: Function): void; repair(location: string, callback?: Function): void; } type LevelUp = LevelUpBase; interface LevelUpChain { put(key: any, value: any): LevelUpChain; put(key: any, value: any, options?: { sync?: boolean | undefined }): LevelUpChain; del(key: any): LevelUpChain; del(key: any, options?: { keyEncoding?: Encoding | undefined; sync?: boolean | undefined }): LevelUpChain; clear(): LevelUpChain; write(callback?: (error?: any) => any): LevelUpChain; } interface levelupOptions { createIfMissing?: boolean | undefined; errorIfExists?: boolean | undefined; compression?: boolean | undefined; cacheSize?: number | undefined; keyEncoding?: Encoding | undefined; valueEncoding?: Encoding | undefined; db?: leveldown.Constructor | undefined; } interface LevelUpConstructor { (hostname: string, options?: levelupOptions): LevelUp; } }