---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/orchestration/type-aliases/StructuredPredicate.md
description: >-
  The structured predicate IR — the value a branch/select node's `predicate`
  field holds when the structured cell interprets it.
---

# Type Alias: StructuredPredicate

```ts
type StructuredPredicate =
  | PredicateLeaf
  | AllPredicate
  | AnyPredicate
  | NotPredicate;
```

Defined in: [src/batteries/orchestration/predicates.ts:67](https://github.com/NHTIO/ADK/blob/v1.20260906.0/src/src/batteries/orchestration/predicates.ts#L67)

The structured predicate IR — the value a branch/select node's `predicate` field holds when the
structured cell interprets it.

A discriminated union of four shapes: a leaf (`{path, op, value?}`), and the three combinators
`{all}`, `{any}`, `{not}`. The combinator shapes are discriminated by their single key, and a
leaf by the presence of `path`/`op`. `parseStructuredPredicate` is the single authority that
turns an untrusted `EncodableValue` into this IR.
