generic-repository
Version:
Generic repository pattern implementation for node.js. Currently supports mongo and in-memory(testing) databases.
26 lines (25 loc) • 954 B
TypeScript
import Repository from '../repository';
export default class MemoryRepository<T> implements Repository<T> {
Type: {
new (...args: any[]): T;
};
private docs;
constructor(type: {
new (...args: any[]): T;
});
count(): Promise<number>;
find(conditions: Object): Promise<T[]>;
paginate(conditions: Object, sortOptions: any, page: any, perPage: any): Promise<T[]>;
private findNow(conditions);
findOne(conditions: any): Promise<T>;
findById(id: string): Promise<T>;
insert(data: any): Promise<T>;
insertMany(list: T[]): Promise<T[]>;
update(query: any, newData: any): Promise<T>;
private updateFields(target, data);
findLast(sortField: string, limit: number): Promise<T[]>;
findLastByQuery(query: any, sortField: string, limit: number): Promise<T[]>;
private query(obj, query);
deleteMany(query: any): Promise<boolean>;
deleteOne(query: any): Promise<boolean>;
}