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.



1164
1165
1166
1167
1168
1169
1170
1171
# File 'lib/claude_agent_sdk/types.rb', line 1164

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.



1161
1162
1163
# File 'lib/claude_agent_sdk/types.rb', line 1161

def additional_context
  @additional_context
end

#hook_event_nameObject

Returns the value of attribute hook_event_name.



1161
1162
1163
# File 'lib/claude_agent_sdk/types.rb', line 1161

def hook_event_name
  @hook_event_name
end

#permission_decisionObject

Returns the value of attribute permission_decision.



1161
1162
1163
# File 'lib/claude_agent_sdk/types.rb', line 1161

def permission_decision
  @permission_decision
end

#permission_decision_reasonObject

Returns the value of attribute permission_decision_reason.



1161
1162
1163
# File 'lib/claude_agent_sdk/types.rb', line 1161

def permission_decision_reason
  @permission_decision_reason
end

#updated_inputObject

Returns the value of attribute updated_input.



1161
1162
1163
# File 'lib/claude_agent_sdk/types.rb', line 1161

def updated_input
  @updated_input
end

Instance Method Details

#to_hObject



1173
1174
1175
1176
1177
1178
1179
1180
# File 'lib/claude_agent_sdk/types.rb', line 1173

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