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.



447
448
449
450
451
452
453
454
# File 'lib/claude_agent_sdk/types.rb', line 447

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.



444
445
446
# File 'lib/claude_agent_sdk/types.rb', line 444

def additional_context
  @additional_context
end

#hook_event_nameObject

Returns the value of attribute hook_event_name.



444
445
446
# File 'lib/claude_agent_sdk/types.rb', line 444

def hook_event_name
  @hook_event_name
end

#permission_decisionObject

Returns the value of attribute permission_decision.



444
445
446
# File 'lib/claude_agent_sdk/types.rb', line 444

def permission_decision
  @permission_decision
end

#permission_decision_reasonObject

Returns the value of attribute permission_decision_reason.



444
445
446
# File 'lib/claude_agent_sdk/types.rb', line 444

def permission_decision_reason
  @permission_decision_reason
end

#updated_inputObject

Returns the value of attribute updated_input.



444
445
446
# File 'lib/claude_agent_sdk/types.rb', line 444

def updated_input
  @updated_input
end

Instance Method Details

#to_hObject



456
457
458
459
460
461
462
463
# File 'lib/claude_agent_sdk/types.rb', line 456

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