type Ctx<TInput, TState, TExtensions> = BaseCtx<TInput, TState> & TExtensions;type Ctx<TInput, TState, TExtensions> = BaseCtx<TInput, TState> & TExtensions;Defined in: packages/workflow-core/src/types.ts:359
Full ctx type passed to a handler, including middleware-added fields. TExtensions defaults to unknown so the empty-middleware case collapses cleanly under intersection (unknown & BaseCtx === BaseCtx).
TInput = unknown
TState = Record<string, unknown>
TExtensions = unknown