import BaseProvider from './BaseProvider'; import { IDatabaseRef, ISaveOption } from './DatabaseService'; import IQueryOptions from '../../Interfaces/Query/IProductQueryOptions'; import { IBatchAction } from './BatchUtils'; export default class FirebaseProvider extends BaseProvider { private static listners; static getDocs: (path: string, query: IQueryOptions, forceFirebase?: boolean) => Promise; static saveDoc: (path: string, id: string, _timestamp: number, obj: any, options?: ISaveOption) => Promise; static addDoc: (path: string, obj: any, _noEvent?: boolean) => Promise; static deleteDoc: (path: string, id: string, _noEvent?: boolean) => Promise; static processBatch: (batch: IBatchAction[], _noEvent?: boolean) => Promise; static registerListener: (callback: (_: IDatabaseRef[]) => void, path: string, query?: IQueryOptions) => string; static unregisterListener: (id: string) => void; private static getFirebase; private static fixFirebaseRef; private static addFirebaseRef; }