import { FirebaseDataService } from "./FirebaseDataService"; import { database } from "firebase-admin"; import { IEntity } from "../interface"; export declare class EntityService extends FirebaseDataService { protected db: database.Database; protected root: string; constructor(db: database.Database, root: string); getAll(): Promise; getAllAsObject(): Promise; get(key: string): Promise; /** * @param {Object} obj entity object * @returns {Promise} promise with string key of created/updated entity */ save(obj: T): Promise; create(obj: T): Promise; updateAll(modifier: ModifierFunction): Promise; update(key: string, obj: T): Promise; set(key: string, obj: T): Promise; remove(key: string): Promise; removeAll(ids: string[]): Promise; findAllBy(propertyName: string, value: number | string | boolean | null): Promise; } export type ModifierFunction = { (entity: T): T; }; export type ModificationResults = { skipped: string[]; updated: string[]; };