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.



1194
1195
1196
1197
1198
1199
1200
1201
# File 'lib/claude_agent_sdk/types.rb', line 1194

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.



1191
1192
1193
# File 'lib/claude_agent_sdk/types.rb', line 1191

def additional_context
  @additional_context
end

#hook_event_nameObject

Returns the value of attribute hook_event_name.



1191
1192
1193
# File 'lib/claude_agent_sdk/types.rb', line 1191

def hook_event_name
  @hook_event_name
end

#permission_decisionObject

Returns the value of attribute permission_decision.



1191
1192
1193
# File 'lib/claude_agent_sdk/types.rb', line 1191

def permission_decision
  @permission_decision
end

#permission_decision_reasonObject

Returns the value of attribute permission_decision_reason.



1191
1192
1193
# File 'lib/claude_agent_sdk/types.rb', line 1191

def permission_decision_reason
  @permission_decision_reason
end

#updated_inputObject

Returns the value of attribute updated_input.



1191
1192
1193
# File 'lib/claude_agent_sdk/types.rb', line 1191

def updated_input
  @updated_input
end

Instance Method Details

#to_hObject



1203
1204
1205
1206
1207
1208
1209
1210
# File 'lib/claude_agent_sdk/types.rb', line 1203

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