import { Merge } from 'type-fest'; import { $allow, $collectionGroups, $docLabel, $functions, $schema, FTypes } from '..'; export declare type User = { name: string; displayName: string | null; age: number; timestamp: FTypes.Timestamp; options: { a: boolean; } | undefined; }; export declare type UserDecoded = Merge; declare type PostA = { type: 'a'; tags: { id: number; name: string; }[]; text: string; }; declare type PostB = { type: 'b'; tags: { id: number; name: string; }[]; texts: string[]; }; export declare const firestoreSchema: { [$functions]: { "isAdmin()": string; "matchesUser(uid)": string; }; [$collectionGroups]: { posts: { [$docLabel]: string; [$schema]: import("..").STypes.CollectionSchema import("firebase").default.firestore.Query | FirebaseFirestore.Query; }>; [$allow]: { read: true; }; }; }; users: { [$docLabel]: string; [$schema]: import("..").STypes.CollectionSchema>, true, {}>; [$allow]: { read: true; write: string; }; posts: { [$docLabel]: string; [$schema]: import("..").STypes.CollectionSchema import("firebase").default.firestore.Query | FirebaseFirestore.Query; }>; [$allow]: { read: true; write: string; }; }; }; }; export {};