UNPKG

firesage

Version:

🔥 Extremely High Precision Typescript Wrapper for Firestore Web, Providing Unparalleled Type Safe and Dev Experience

40 lines (39 loc) • 2.33 kB
import { MetaTypeCreator, ServerTimestamp, DocumentReference, DeleteField, DocumentSnapshot } from './types'; export declare const initializeApp: () => import("@firebase/app").FirebaseApp; export declare type Parent = MetaTypeCreator<{ a: 1; }, 'topLevel', 'FirelordTest' | 'ForCursorTest'>; export declare type User = MetaTypeCreator<{ age: number; beenTo: (Record<'US', ('Hawaii' | 'California')[]> | Record<'China', ('Guangdong' | 'Shanghai')[]>)[]; name: string; role: 'admin' | 'editor' | 'visitor'; a: { b: { c: number; f: { g: boolean; h: Date; m: number; }[]; }; i: { j: number | DeleteField; l: Date; }; e: string[]; k: ServerTimestamp | DeleteField; }; }, 'Users', string, Parent>; export declare const userRefCreator: (arg?: Parent['docID']) => Readonly<{ doc: { <DocumentId extends string>(documentID: DocumentId extends never ? DocumentId : DocumentId extends import("./types").IsValidID<DocumentId, "Document", "ID"> ? string : import("./types").IsValidID<DocumentId, "Document", "ID">): DocumentReference<User>; <DocumentId_1 extends string>(firestore: import("./types").FirestoreAndFirestoreTesting, documentID: DocumentId_1 extends never ? DocumentId_1 : DocumentId_1 extends import("./types").IsValidID<DocumentId_1, "Document", "ID"> ? string : import("./types").IsValidID<DocumentId_1, "Document", "ID">): DocumentReference<User>; }; collection: (firestore?: import("./types").FirestoreAndFirestoreTesting | undefined) => import(".").CollectionReference<User>; collectionGroup: (firestore?: import("./types").FirestoreAndFirestoreTesting | undefined) => import(".").Query<User>; }>; export declare const generateRandomData: () => User['write']; export declare const compareWriteDataWithDocSnapData: (writeData: User['write'], docSnap: DocumentSnapshot<User>) => void; export declare const readThenCompareWithWriteData: (writeData: User['write'], ref: DocumentReference<User>) => Promise<void>; export declare const writeThenReadTest: (writeCallback: (data: ReturnType<typeof generateRandomData>) => Promise<DocumentReference<User>>) => Promise<void>;