import { type MockItem } from './mock.item'; import { type FirestoreQueryConstraint, type DocumentReference } from '@dereekb/firebase'; /** * Creates a Firestore query constraint that filters {@link MockItem} documents by their `value` field. * * @param value - The exact `value` to match. * @returns A `where('value', '==', value)` constraint typed for {@link MockItem}. * * @example * ```ts * const constraint = mockItemWithValue('hello'); * const results = await collection.query(constraint); * ``` */ export declare function mockItemWithValue(value: string): FirestoreQueryConstraint; /** * Creates a Firestore query constraint that filters {@link MockItem} documents by their `test` boolean field. * * @param test - The boolean value of the `test` field to match. * @returns A `where('test', '==', test)` constraint. */ export declare function mockItemWithTestValue(test: boolean): FirestoreQueryConstraint; /** * This sorts all fields by their document ID, then filters in between two specific document id paths in order to only return values between a specific path. * * Visual Example: * * /a/b/c/c/a * /a/b/c/d/A * /a/b/c/d/B * /a/b/c/d/C * /a/b/c/e/a * * From: * https://medium.com/firebase-developers/how-to-query-collections-in-firestore-under-a-certain-path-6a0d686cebd2 * * @param mockItem - The parent {@link MockItem} document reference whose descendant documents the constraint should bound to. * @returns The constraints (suitable for use on a collection group query) that restricts results to documents under the given parent path. */ export declare function allChildMockItemSubItemDeepsWithinMockItem(mockItem: DocumentReference): FirestoreQueryConstraint[];