Client-owned Hooks v2 lifecycle facade.
Translate a hook permission decision into a client review outcome.
Tool-approval policy selected for an interactive thread.
Reason context compaction was requested.
A notification emitted by a dcode lifecycle owner.
dcode lifecycle notifications with compatible wire mappings.
Context shared by every domain hook event.
Supported hook lifecycle events.
A domain hook event with its invocation context.
Decision returned for Notification.
Domain payload for Notification.
Normalized permission result from hook processing.
Decision returned for PermissionRequest.
Domain payload for PermissionRequest.
Decision returned for PreCompact.
Domain payload for PreCompact.
Reason a session-end event occurred.
Decision returned for SessionEnd.
Domain payload for SessionEnd.
Reason a session-start event occurred.
Decision returned for SessionStart.
Domain payload for SessionStart.
Native tool-call data used by hook lifecycle owners.
Decision returned for UserPromptSubmit.
Domain payload for UserPromptSubmit.
Normalized result shared by TUI and headless permission handling.
Present hook output consistently across interactive and headless clients.
Raised when a client-owned hook stops lifecycle processing.
Client state required to create a domain hook invocation.
Execute client-owned events and apply their common side effects.
User-facing output goes through the runtime's presenter, which the owning
HooksManager also holds. The service never wraps or replaces it, so there
is exactly one presenter per session.