# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.

# typed: true
# frozen_string_literal: true


module PlexRubySDK
  module Operations
  

    class LogLineRequest < ::PlexRubySDK::Utils::FieldAugmented
      extend T::Sig

      # An integer log level to write to the PMS log with.  
      # 0: Error  
      # 1: Warning  
      # 2: Info  
      # 3: Debug  
      # 4: Verbose
      # 
      field :level, ::PlexRubySDK::Operations::Level, { 'query_param': { 'field_name': 'level', 'style': 'form', 'explode': true } }
      # The text of the message to write to the log.
      field :message, ::String, { 'query_param': { 'field_name': 'message', 'style': 'form', 'explode': true } }
      # a string indicating the source of the message.
      field :source, ::String, { 'query_param': { 'field_name': 'source', 'style': 'form', 'explode': true } }


      sig { params(level: ::PlexRubySDK::Operations::Level, message: ::String, source: ::String).void }
      def initialize(level: nil, message: nil, source: nil)
        @level = level
        @message = message
        @source = source
      end
    end
  end
end
