export interface Data { expire?: number; value: V; } export declare const defaultOpts: { filename: string; expiredCheckDelay: number; writeDelay: number; encode: (val: any) => any; decode: (val: any) => any; }; export declare function makeField(kv: KeyvFile, key: string, defaults?: T): { get(def?: T): T; set(val?: T): void; delete(): any; }; export declare class KeyvFile { ttlSupport: boolean; private _opts; private _cache; private _lastExpire; private _saveTimer?; constructor(opts?: Partial); isExpired(data: Data): boolean; get(key: string, defaults: T): T; get(key: string): T | undefined; has(key: string): boolean; keys(): string[]; /** * * @param key * @param value * @param ttl time-to-live, seconds */ set(key: string, value: T, ttl?: number): void; delete(key: string): T; clear(): void; clearExpire(): void; saveToDisk(): Promise; private _savePromise?; save(): Promise; } export default KeyvFile;