import { Firestore } from "@google-cloud/firestore"; import { AsyncProvider } from "../../db/Provider.js"; import type { Database, DataKey } from "../../util/data.js"; import type { Items, OptionalItem } from "../../util/item.js"; import type { ItemQuery } from "../../util/query.js"; import type { Updates } from "../../util/update.js"; /** * Firestore server database provider. * - Works with the Firebase Admin SDK for Node.JS */ export declare class FirestoreServerProvider extends AsyncProvider { private readonly _firestore; constructor(firestore?: Firestore); getItem>(c: K, id: string): Promise>; getItemSequence>(c: K, id: string): AsyncIterable>; addItem>(c: K, data: T[K]): Promise; setItem>(c: K, id: string, data: T[K]): Promise; updateItem>(c: K, id: string, updates: Updates): Promise; deleteItem>(c: K, id: string): Promise; countQuery>(c: K, q?: ItemQuery): Promise; getQuery>(c: K, q?: ItemQuery): Promise>; getQuerySequence>(c: K, q?: ItemQuery): AsyncIterable>; setQuery>(c: K, q: ItemQuery, data: T[K]): Promise; updateQuery>(c: K, q: ItemQuery, updates: Updates): Promise; deleteQuery>(c: K, q: ItemQuery): Promise; }