import { DatabaseDriver, DatabaseOption, Index, Encrypted, Records, SortOrder } from '../typings';
declare class Mem implements DatabaseDriver {
    private options;
    private store;
    private indexes;
    private cleanup;
    private ttlStore;
    private ttlCleanup;
    private timerId;
    constructor(options: DatabaseOption);
    init(): Promise<Mem>;
    get(namespace: string, key: string): Promise<any>;
    getAll(namespace: string, pageOffset?: number, pageLimit?: number, _?: string, sortOrder?: SortOrder): Promise<Records>;
    getByIndex(namespace: string, idx: Index, pageOffset?: number, pageLimit?: number, _?: string, sortOrder?: SortOrder): Promise<Records>;
    put(namespace: string, key: string, val: Encrypted, ttl?: number, ...indexes: any[]): Promise<any>;
    delete(namespace: string, key: string): Promise<any>;
    deleteMany(namespace: string, keys: string[]): Promise<void>;
    close(): Promise<void>;
    getStats(): Record<string, number>;
}
declare const _default: {
    new: (options: {
        db: DatabaseOption;
    }) => Promise<Mem>;
};
export default _default;
