import { DocumentData, DocumentReference, QueryConstraint } from "firebase/firestore"; import { SetStateAction } from "react"; import { Products } from "../typeDefinitions"; import { AppDispatch } from "../config"; export default class FirebaseQuery { private createQuery; getCount(path: string[] | string, constraints?: QueryConstraint[] | QueryConstraint): Promise; add(path: string[] | string, data: { [key: string]: unknown; }): Promise>; set(path: string[] | string, data: { [key: string]: unknown; }, merge?: boolean): Promise; update(path: string[] | string, data: { [key: string]: unknown; }): Promise; delete(path: string[] | string): Promise; copy(path: string[] | string, id: string, oId: string, product: Products, additionalData?: { [key: string]: unknown; }): Promise>; getUniqueDocName(path: string[] | string, name: string, oId: string, product: Products): Promise; getDocData(path: string[] | string): Promise; getDocsWhere(path: string[] | string, constraints?: QueryConstraint[] | QueryConstraint, rawDocs?: boolean): Promise | { [k: string]: any; }>; collectionUpdate(data: { [key: string]: unknown; }, path: string[] | string, constraints?: QueryConstraint[] | QueryConstraint): Promise; documentSnapshot(path: string[] | string, setState: SetStateAction): import("@firebase/firestore").Unsubscribe; collectionSnapshot(setState: SetStateAction | ((e: DocumentData | { [key: string]: any; }) => void) | Promise<((e: DocumentData | { [key: string]: any; }) => void)>, path: string[] | string, constraints?: QueryConstraint[] | QueryConstraint, dispatch?: AppDispatch, raw?: boolean): import("@firebase/firestore").Unsubscribe; }