@@ -101,14 +101,20 @@ export abstract class AppliableConstraint {
101
101
/**
102
102
* A `QueryConstraint` is used to narrow the set of documents returned by a
103
103
* Firestore query. `QueryConstraint`s are created by invoking {@link where},
104
- * {@link orderBy}, {@link startAt: }, {@link startAfter}, {@link
104
+ * {@link orderBy}, {@link startAt}, {@link startAfter}, {@link
105
105
* endBefore}, {@link endAt}, {@link limit}, {@link limitToLast} and
106
106
* can then be passed to {@link query} to create a new query instance that
107
107
* also contains this `QueryConstraint`.
108
108
*/
109
109
export abstract class QueryConstraint extends AppliableConstraint {
110
110
/** The type of this query constraint */
111
111
abstract readonly type : QueryConstraintType ;
112
+
113
+ /**
114
+ * Takes the provided {@link Query} and returns a copy of the {@link Query} with this
115
+ * {@link AppliableConstraint} applied.
116
+ */
117
+ abstract _apply < T > ( query : Query < T > ) : Query < T > ;
112
118
}
113
119
114
120
/**
@@ -332,10 +338,9 @@ export class QueryCompositeFilterConstraint extends AppliableConstraint {
332
338
}
333
339
334
340
/**
335
- * `QueryNonFilterConstraint` is a helper union type that represents all
336
- * QueryConstraints which do not inherit from QueryFieldFilterConstraint. These
337
- * are used to narrow or order the set of documents returned by a Firestore
338
- * query, but they do not explicitly filter on a document field.
341
+ * `QueryNonFilterConstraint` is a helper union type that represents
342
+ * QueryConstraints which are used to narrow or order the set of documents,
343
+ * but that do not explicitly filter on a document field.
339
344
* `QueryNonFilterConstraint`s are created by invoking {@link orderBy},
340
345
* {@link startAt}, {@link startAfter}, {@link endBefore}, {@link endAt},
341
346
* {@link limit} or {@link limitToLast} and can then be passed to {@link query}
0 commit comments