| 29 | * @template TKey Key type (default: string) |
| 30 | */ |
| 31 | export interface IRepository<T, TKey = string> { |
| 32 | getAll(): Promise<T[]> |
| 33 | getById(id: TKey): Promise<T | undefined> |
| 34 | put(item: T): Promise<void> |
| 35 | putBatch(items: T[]): Promise<void> |
| 36 | delete(id: TKey): Promise<void> |
| 37 | deleteBatch(ids: TKey[]): Promise<void> |
| 38 | clear(): Promise<void> |
| 39 | } |
| 40 | |
| 41 | /** |
| 42 | * Singleton value repository interface |
no outgoing calls
no test coverage detected