eventstorming
Version:
A Graphics Library for Event Storming
16 lines (15 loc) • 663 B
TypeScript
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>;
}