Files
plexruby/lib/plex_ruby_sdk/models/operations/friend.rb

61 lines
3.1 KiB
Ruby

# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
FRIEND_SERVERS = [
'https://plex.tv/api/v2'
].freeze
class Friend < ::Crystalline::FieldAugmented
extend T::Sig
# The account email address
field :email, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('email') } }
# The account full name
field :friendly_name, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('friendlyName') } }
# If the account is a Plex Home user
field :home, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('home') } }
# The Plex account ID
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# If the account is a Plex Home managed user
field :restricted, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('restricted') } }
field :shared_servers, T::Array[::PlexRubySDK::Operations::SharedServers], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('sharedServers') } }
field :shared_sources, T::Array[::PlexRubySDK::Operations::SharedSources], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('sharedSources') } }
# Current friend request status
field :status, ::PlexRubySDK::Operations::Status, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('status'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::Status, false) } }
# URL of the account thumbnail
field :thumb, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('thumb') } }
# The title of the account (username or friendly name)
field :title, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('title') } }
# The account username
field :username, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('username') } }
# The account Universally Unique Identifier (UUID)
field :uuid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('uuid') } }
sig { params(email: ::String, friendly_name: ::String, home: T::Boolean, id: ::Integer, restricted: T::Boolean, shared_servers: T::Array[::PlexRubySDK::Operations::SharedServers], shared_sources: T::Array[::PlexRubySDK::Operations::SharedSources], status: ::PlexRubySDK::Operations::Status, thumb: ::String, title: ::String, username: ::String, uuid: ::String).void }
def initialize(email: nil, friendly_name: nil, home: nil, id: nil, restricted: nil, shared_servers: nil, shared_sources: nil, status: nil, thumb: nil, title: nil, username: nil, uuid: nil)
@email = email
@friendly_name = friendly_name
@home = home
@id = id
@restricted = restricted
@shared_servers = shared_servers
@shared_sources = shared_sources
@status = status
@thumb = thumb
@title = title
@username = username
@uuid = uuid
end
end
end
end