Class: ClaudeAgentSDK::PreToolUseHookSpecificOutput

Inherits:
Object
  • Object
show all
Defined in:
lib/claude_agent_sdk/types.rb

Overview

PreToolUse hook specific output

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(permission_decision: nil, permission_decision_reason: nil, updated_input: nil, additional_context: nil) ⇒ PreToolUseHookSpecificOutput

Returns a new instance of PreToolUseHookSpecificOutput.



1143
1144
1145
1146
1147
1148
1149
1150
# File 'lib/claude_agent_sdk/types.rb', line 1143

def initialize(permission_decision: nil, permission_decision_reason: nil, updated_input: nil,
               additional_context: nil)
  @hook_event_name = 'PreToolUse'
  @permission_decision = permission_decision # 'allow', 'deny', or 'ask'
  @permission_decision_reason = permission_decision_reason
  @updated_input = updated_input
  @additional_context = additional_context
end

Instance Attribute Details

#additional_contextObject

Returns the value of attribute additional_context.



1140
1141
1142
# File 'lib/claude_agent_sdk/types.rb', line 1140

def additional_context
  @additional_context
end

#hook_event_nameObject

Returns the value of attribute hook_event_name.



1140
1141
1142
# File 'lib/claude_agent_sdk/types.rb', line 1140

def hook_event_name
  @hook_event_name
end

#permission_decisionObject

Returns the value of attribute permission_decision.



1140
1141
1142
# File 'lib/claude_agent_sdk/types.rb', line 1140

def permission_decision
  @permission_decision
end

#permission_decision_reasonObject

Returns the value of attribute permission_decision_reason.



1140
1141
1142
# File 'lib/claude_agent_sdk/types.rb', line 1140

def permission_decision_reason
  @permission_decision_reason
end

#updated_inputObject

Returns the value of attribute updated_input.



1140
1141
1142
# File 'lib/claude_agent_sdk/types.rb', line 1140

def updated_input
  @updated_input
end

Instance Method Details

#to_hObject



1152
1153
1154
1155
1156
1157
1158
1159
# File 'lib/claude_agent_sdk/types.rb', line 1152

def to_h
  result = { hookEventName: @hook_event_name }
  result[:permissionDecision] = @permission_decision if @permission_decision
  result[:permissionDecisionReason] = @permission_decision_reason if @permission_decision_reason
  result[:updatedInput] = @updated_input if @updated_input
  result[:additionalContext] = @additional_context if @additional_context
  result
end