Package-level declarations
Types
The field is after now + offset; see BeforeNowFilter.
A calendar part of an instant, with its fixed integer domain [min, max].
One numeric contribution per current root or expanded record, for data conforming to its numeric schema. FIELD selects the sole non-null numeric value; missing, empty and multi-valued fields do not contribute. Repeated numeric values remain separate values. BINARY computes finite doubles; it does not pair arrays or preserve arbitrary native numeric precision.
Where a group reads its field when the query expands elements; see AggregationGroup.scope.
A moment relative to the server's clock: the field is before now + offset. The server resolves now once per query, so every condition of one query sees the same moment and the client's clock does not matter.
A bounded count of the matches of filter.
The result of a CountQuery.
The tenants a cross-tenant query reads: every tenant when tenantIds is null (ALL), else those. Only the HTTP edge states one, for a caller that may act across scopes and names Wow-Scope: tenant=* or tenant=("t1" "t2") while wow.query.allow-cross-tenant is on; trusted in-process code that must read every tenant uses NodeQueryApi.trusted(). A type whose tenant is fixed is still read in that tenant alone, and every cross-tenant query is audited, whether or not a QueryObserver audits.
A fixed-length unit of elapsed time. Calendar units (months, years) have no fixed length and depend on a time zone, so they are not offered; a DAY is exactly 24 hours.
Filters by deletion state; deletionState is written as state on the wire.
Enumeration representing the possible states of deletion for entities in the system.
Compares a computed expression, for example the hours from paidAt to shippedAt, with value. A record whose expression has no value (an operand is absent, or a division by zero) does not match, whatever the comparison. The expression is evaluated per record and cannot use an index, so the operator is expensive.
A filter on one field the request names: the comparison, string, membership, presence and relative-time predicates, and ELEMENT_MATCH, whose field is the collection its predicate applies to. System-field, logical, search and expression filters name no single field and are not field predicates.
A node of a filter tree. On the wire each node is a JSON object whose op is its operator's name, with the node's own properties beside it.
Data class representing a query for retrieving a list of items with optional filtering, projection, sorting, and limiting.
Data class representing a paginated query with filtering, projection, sorting, and pagination.
Data class representing pagination settings for queries.
How a query model's records may be read, as its descriptor lists them (record.paging), by wire name (list, paged, cursor): a list of the first records (ListQuery), a page by number (PagedQuery), or a page after a cursor (CursorQuery), which only a model with a unique sort offers.
Data class representing field projection settings for queries.
Interface for query objects that support field projection.
Interface for query objects that support comprehensive querying capabilities.
Stable, machine-readable codes of rejected query requests, carried as BindingError.code. A contract: codes are added, never renamed or reused. Clients switch on them instead of on the human text.
A logical field of a query model, by its path (state.price, aggregateId, items.0.sku), typed by the values T it holds: the DSL's comparisons take a value of that type, checked at compile time (STATE__PRICE gte BigDecimal("5.00")). The generated <State>Properties and <Context>Contract constants are typed by their state's fields; a dynamic key, named only at run time, is a QueryField<Any?> (QueryField of a path) and takes any value.
The structure of a query field's value, as a query model's descriptor writes it (kind), by wire name: scalar (a string, a number, a boolean or a time), object, array, union (more than one of these), null (only ever null), or unknown (not described). Schema declarations and storage metadata share it.
Interface for query objects that support projection rewriting and modification.
What a DerivedExpression.Running window computes over its frame.
Data class representing a query for retrieving a single item with optional filtering, projection, and sorting.
The fields of a snapshot record a query names, as QueryFields: the system fields and STATE, under which the aggregate's state lies. Each name is its path in upper snake case, a nested segment after __: OPERATOR__ID is operator.id.
Data class representing a sorting criterion for query results.
Interface for query objects that support sorting capabilities.
How a paged query counts its total, the PagedList.total it returns.
The window functions of DerivedExpression.Window, as a storage declares and the descriptor lists them.
Properties
Functions
The direct child filters of this node: the operands of AND / OR / NOR and the predicate of ELEMENT_MATCH. Every other node is a leaf and returns an empty list. The one walker of a filter tree: consumers that visit the tree read the children from here instead of matching the logical nodes themselves.
Checks if this projection has no field filtering (includes all fields).
The field of path, untyped: a dynamic key, which takes any value.