UNPKG

@typed-firestore/server

Version:

Elegant, typed abstractions for Firestore in server environments

23 lines (21 loc) 634 B
import type { CollectionReference, DocumentData, DocumentReference, } from "firebase-admin/firestore"; import type { FirestoreEvent, QueryDocumentSnapshot, } from "firebase-functions/firestore"; import { invariant } from "~/utils"; export function getDataOnCreated<T extends DocumentData>( _ref: CollectionReference<T> | DocumentReference<T>, event: FirestoreEvent<QueryDocumentSnapshot | undefined> ): Readonly<T> { /** * Seems like a bug in cloud functions types, because how can it be undefined * if it was created? */ invariant(event.data, "event.data is required"); return event.data.data() as T; }