UNPKG

simplyfire

Version:

A lightweight firestore api for firebase cloud functions & Angular.

29 lines (28 loc) 1.64 kB
import type { DocumentData, DocumentReference, DocumentSnapshot, FieldValue, QuerySnapshot, SetOptions, Transaction, WriteBatch } from '@firebase/firestore-types'; import { QueryBuilder } from './QueryBuilder'; export declare abstract class AbstractFirestoreApi { BATCH_MAX_WRITES: number; abstract collection<T = any>(path: string, qb?: QueryBuilder, maxAge?: number): Promise<T[]>; abstract collectionGroup<T = any>(collectionId: string, qb?: QueryBuilder, maxAge?: number): Promise<T[]>; abstract collectionSnapshot(path: string, qb?: QueryBuilder): Promise<QuerySnapshot<DocumentData>>; abstract doc<T = any>(path: string, maxAge?: number): Promise<T>; abstract docRef(docPath: string): DocumentReference<DocumentData>; abstract upsert(collection: string, data: { [key: string]: any; }, opts?: SetOptions): Promise<string>; abstract update(docPath: string, data: { [key: string]: any; }): Promise<void>; abstract delete(docPath: string): Promise<void>; abstract bulkUpsert(collection: string, data: DocumentData[] | { data: DocumentData; qb?: QueryBuilder; }, opts?: SetOptions): Promise<string[]>; abstract bulkDelete(collection: string, qb?: QueryBuilder): Promise<string[]>; abstract runTransaction(updateFunction: (transaction: Transaction) => Promise<unknown>): Promise<unknown>; abstract get batch(): WriteBatch; abstract get serverTimestamp(): FieldValue; abstract increment(n?: number): FieldValue; abstract createId(collection?: string): string; getValueFromSnapshot<T = any>(snapshot: DocumentSnapshot): T; }