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

# typed: true
# frozen_string_literal: true


module PlexRubySDK
  module Operations
  

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

      # the media key
      field :key, ::String, { 'query_param': { 'field_name': 'key', 'style': 'form', 'explode': true } }
      # The playback state of the media item.
      field :state, ::String, { 'query_param': { 'field_name': 'state', 'style': 'form', 'explode': true } }
      # The time, in milliseconds, used to set the media playback progress.
      field :time, ::Float, { 'query_param': { 'field_name': 'time', 'style': 'form', 'explode': true } }


      sig { params(key: ::String, state: ::String, time: ::Float).void }
      def initialize(key: nil, state: nil, time: nil)
        @key = key
        @state = state
        @time = time
      end
    end
  end
end
