Packages
claude_code
0.36.2
0.36.5
0.36.4
0.36.3
0.36.2
0.36.1
0.36.0
0.35.0
0.34.0
0.33.1
0.32.2
0.32.0
0.31.0
0.30.0
0.29.0
0.28.0
0.27.0
0.26.0
0.25.0
0.24.0
0.23.0
0.22.0
0.21.0
0.20.0
0.19.0
0.18.0
0.17.0
0.16.0
0.15.0
0.14.0
0.13.3
0.13.2
0.13.1
0.13.0
0.12.0
0.11.0
0.10.0
0.9.0
0.8.1
0.8.0
0.7.0
0.6.0
0.5.0
0.4.0
0.3.0
0.2.0
0.1.0
Claude Agent SDK for Elixir – Build AI agents with Claude Code
Current section
Files
Jump to
Current section
Files
lib/claude_code/hook/output/permission_request.ex
defmodule ClaudeCode.Hook.Output.PermissionRequest do
@moduledoc """
Hook-specific output for `PermissionRequest` events.
Wraps a `ClaudeCode.Hook.PermissionDecision.Allow` or
`ClaudeCode.Hook.PermissionDecision.Deny` decision for when a tool
requires permission at the permission-prompt stage.
Shorthand: `{:allow, updated_input: %{...}}` or `{:deny, message: "..."}`.
## Fields
* `:decision` - a `PermissionDecision.Allow` or `PermissionDecision.Deny` struct
"""
@type t :: %__MODULE__{
decision:
ClaudeCode.Hook.PermissionDecision.Allow.t()
| ClaudeCode.Hook.PermissionDecision.Deny.t()
}
defstruct [:decision]
def to_wire(%__MODULE__{decision: decision}) do
%{
"hookEventName" => "PermissionRequest",
"decision" => decision.__struct__.to_wire(decision)
}
end
end