type Capability<TValue, TName> = readonly [CapabilityGetter<TValue>, CapabilityProvider<TValue>] & object;Defined in: packages/ai/src/activities/chat/middleware/capabilities.ts:36
A capability handle. It is BOTH a [get, provide] tuple (array-destructurable) AND the identity used in middleware requires/provides declarations.
Runtime identity is this object's reference. The capabilityName literal is used for diagnostics and COMPILE-TIME tracking only — capability names MUST be unique across an app or the type-level coverage check conflates them.
readonly capabilityName: TName;has: (ctx) => boolean;Internal
Presence check for the post-setup assertion.
boolean
TValue = unknown
TName extends string = string