export declare const FIRESTORE_PROPS: { readonly path: { readonly type: "string"; readonly description: "Document path (EVEN segments, e.g. 'users/123' or 'stores/ABC')"; }; readonly collection: { readonly type: "string"; readonly description: "Collection path (ODD segments, e.g. 'users' or 'users/123/posts')"; }; readonly collectionId: { readonly type: "string"; readonly description: "Collection name without slashes (e.g. 'orders') for collection group operations"; }; readonly paths: { readonly type: "array"; readonly items: { readonly type: "string"; }; readonly description: "Full document paths for batch fetch (e.g. ['users/123', 'orders/456'])"; }; readonly ids: { readonly type: "array"; readonly items: { readonly type: "string"; }; readonly description: "Document IDs within the collection field (used with collection for get_many_documents)"; }; readonly filters: { readonly type: "array"; readonly items: { readonly type: "object"; readonly properties: { readonly field: { readonly type: "string"; readonly description: "Field name to filter on"; }; readonly operator: { readonly type: "string"; readonly enum: FirebaseFirestore.WhereFilterOp[]; readonly description: "Comparison operator"; }; readonly value: { readonly description: "Value to compare against (string, number, boolean, null, or array for in/array-contains-any/not-in)"; }; }; readonly required: readonly ["field", "operator", "value"]; }; readonly description: "Where-clause filters"; }; readonly orderBy: { readonly type: "array"; readonly items: { readonly type: "object"; readonly properties: { readonly field: { readonly type: "string"; readonly description: "Field to order by"; }; readonly direction: { readonly type: "string"; readonly enum: readonly ["asc", "desc"]; readonly description: "Sort direction (default: 'asc')"; }; }; readonly required: readonly ["field"]; }; readonly description: "Ordering of results"; }; readonly limit: { readonly type: "number"; readonly description: "Max number of documents to return"; }; readonly select: { readonly type: "array"; readonly items: { readonly type: "string"; }; readonly description: "Field paths to return. Omit for all fields."; }; readonly startAfter: { readonly type: "string"; readonly description: "Pagination cursor: doc ID for collection queries, full doc path for collection group queries"; }; readonly includeCounts: { readonly type: "boolean"; readonly description: "Include document count per collection"; }; readonly includePhantoms: { readonly type: "boolean"; readonly description: "Fall back to listDocuments() when the collection returns no docs"; }; readonly sampleSize: { readonly type: "number"; readonly description: "Number of documents to sample (default 20)"; }; readonly aggregations: { readonly type: "array"; readonly items: { readonly type: "object"; readonly properties: { readonly alias: { readonly type: "string"; readonly description: "Key name for this result in the response"; }; readonly type: { readonly type: "string"; readonly enum: readonly ["sum", "avg", "count"]; readonly description: "\"sum\" and \"avg\" require a field; \"count\" does not"; }; readonly field: { readonly type: "string"; readonly description: "Field path to aggregate (required for sum/avg)"; }; }; readonly required: readonly ["alias", "type"]; }; readonly description: "Aggregation specs for aggregate_collection"; }; readonly collectionGroup: { readonly type: "string"; readonly description: "Filter results to a specific collection group name"; }; readonly includeNotReady: { readonly type: "boolean"; readonly description: "Include indexes still being created or needing repair"; }; readonly field: { readonly type: "string"; readonly description: "Single field name to count unique values for. Use fields[] for multi-field grouping."; }; readonly fields: { readonly type: "array"; readonly items: { readonly type: "string"; }; readonly description: "Multiple field names to fetch. Each result value is an object keyed by field name. Use groupByFields to group on a subset."; }; readonly groupByFields: { readonly type: "array"; readonly items: { readonly type: "string"; }; readonly description: "Subset of fields[] to use as the grouping/identity key. Remaining fields are collected as label arrays (unique values seen per group). Allows minCollections to operate on a stable ID field even when a display name varies across collections."; }; readonly groupByPathSegment: { readonly type: "number"; readonly description: "When using collectionId: 0-based index of the path segment to use as the byCollection key instead of the full path (e.g. 2 extracts \"ABC123\" from \"shared/stores_data/ABC123/data/purchase_orders\")"; }; readonly minCollections: { readonly type: readonly ["number", "string"]; readonly description: "When using collectionId: only return values that appear in at least this many distinct collection buckets. Pass a number (e.g. 2) or \"all\" to mean \"present in every collection bucket found\". All returned values are annotated with collectionCount and collections[] regardless."; }; }; export type FirestorePropKey = keyof typeof FIRESTORE_PROPS; //# sourceMappingURL=properties.d.ts.map