svelte-firebase-state
Version:
Simplify Firebase integration in Svelte and SvelteKit with reactive state management for Firestore and Realtime Database.
25 lines (24 loc) • 1.04 kB
TypeScript
import { type Auth, type User } from "firebase/auth";
import { type Database, type DatabaseReference, QueryConstraint } from "firebase/database";
import { RealtimeDatabaseState } from "./RealtimeDatabaseState.svelte.js";
type PathFunctionOrString = ((user: User | null) => string) | string;
interface CreateNodeStateOptions {
auth?: Auth;
database: Database;
path: PathFunctionOrString;
query?: (user: User | null) => QueryConstraint[];
listen?: boolean;
}
export declare class NodeListState<Data> extends RealtimeDatabaseState<Data[]> {
private readonly queryParamsFn?;
private listRef?;
private queryRef?;
constructor({ auth, database, path: pathFunctionOrString, listen, query: queryParamsFn }: CreateNodeStateOptions);
protected init_ref(): Promise<void>;
private createArrayFromSnapshot;
protected listen_data(): void;
protected fetch_data(): Promise<Data[]>;
get_list_ref(): Promise<DatabaseReference | undefined>;
add(data: Data): Promise<DatabaseReference>;
}
export {};