import { CustomLogger, Item } from '../../types/types.js';
import { Dexie, DexieOptions, Table } from 'dexie';
import { Database } from '../interfaces.js';
export declare class ObjectStore extends Dexie {
    #private;
    objects: Table<Item, string>;
    constructor(options: DexieOptions);
}
export interface IndexedDatabaseOptions {
    logger?: CustomLogger;
    indexedDB?: IDBFactory;
    keyRange?: {
        bound: Function;
        lowerBound: Function;
        upperBound: Function;
    };
}
export default class IndexedDatabase implements Database {
    #private;
    constructor(options: IndexedDatabaseOptions);
    getAll(keys: string[]): Promise<(Item | undefined)[]>;
    cacheSaveBatch(params: {
        batch: Item[];
    }): Promise<void>;
    disposeAsync(): Promise<void>;
}
//# sourceMappingURL=indexedDatabase.d.ts.map