UNPKG

react-firehooks

Version:

Lightweight dependency-free collection of React hooks for Firebase

24 lines (23 loc) 1.48 kB
import { DocumentData, DocumentReference, FirestoreError, SnapshotOptions } from "firebase/firestore"; import type { ValueHookResult } from "../common/types.js"; import type { Source } from "./types.js"; export type UseDocumentDataOnceResult<AppModelType = DocumentData> = ValueHookResult<AppModelType, FirestoreError>; /** * Options to configure how the document is fetched */ export interface UseDocumentDataOnceOptions { source?: Source | undefined; snapshotOptions?: SnapshotOptions | undefined; } /** * Returns the data of a Firestore DocumentReference * @template AppModelType Shape of the data after it was converted from firestore * @template DbModelType Shape of the data in firestore * @param reference Firestore DocumentReference that will be subscribed to * @param options Options to configure how the document is fetched * @returns Document data, loading state, and error * - value: Document data; `undefined` if document does not exist, is currently being fetched, or an error occurred * - loading: `true` while fetching the document; `false` if the document was fetched successfully or an error occurred * - error: `undefined` if no error occurred */ export declare function useDocumentDataOnce<AppModelType = DocumentData, DbModelType extends DocumentData = DocumentData>(reference: DocumentReference<AppModelType, DbModelType> | undefined | null, options?: UseDocumentDataOnceOptions | undefined): UseDocumentDataOnceResult<AppModelType>;