import { IRepository } from "./IRepository";
import { Identity } from "../entity/Identity";
import { Entity } from "../entity/Entity";
export interface ILocalStorageMapper<E extends Entity<any>> {
    stringify(entity: E): string;
}
export declare class LocalStorageRepository<ID extends Identity<any>, E extends Entity<any>> implements IRepository<E> {
    constructor(mapper: ILocalStorageMapper<E>);
    stringify: (entity: E) => string;
    resolve(identity: string): any;
    store(entity: E): E;
    storeList(entityList: E[]): E[];
    storeListInGroup(name: string, entityList: E[]): E[];
    deleteByEntityId(entity: E): LocalStorageRepository<ID, E>;
}
