regenerated with newest spec, reconfigured actions and adding publishing

This commit is contained in:
Luke Hagar
2024-09-16 15:42:38 +00:00
parent fa4cfa3643
commit b689f4fe66
1660 changed files with 29288 additions and 15630 deletions

View File

@@ -0,0 +1,146 @@
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
# typed: true
# frozen_string_literal: true
module PlexRubySDK
module Operations
GET_TOKEN_DETAILS_USER_PLEX_ACCOUNT_SERVERS = [
'https://plex.tv/api/v2/'
].freeze
# Logged in user details
class GetTokenDetailsUserPlexAccount < ::PlexRubySDK::Utils::FieldAugmented
extend T::Sig
# Unknown
field :ads_consent, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('adsConsent') } }
# Unknown
field :ads_consent_reminder_at, ::DateTime, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('adsConsentReminderAt'), 'decoder': Utils.datetime_from_iso_format(false) } }
# Unknown
field :ads_consent_set_at, ::DateTime, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('adsConsentSetAt'), 'decoder': Utils.datetime_from_iso_format(false) } }
# Unknown
field :anonymous, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('anonymous') } }
# The account token
field :auth_token, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('authToken') } }
# If the two-factor authentication backup codes have been created
field :backup_codes_created, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('backupCodesCreated') } }
# If the account has been confirmed
field :confirmed, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('confirmed') } }
# The account country
field :country, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('country') } }
# The account email address
field :email, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('email') } }
# If login with email only is enabled
field :email_only_auth, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('emailOnlyAuth') } }
# List of devices your allowed to use with this account
field :entitlements, T::Array[::String], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('entitlements') } }
# If experimental features are enabled
field :experimental_features, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('experimentalFeatures') } }
# Your account full name
field :friendly_name, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('friendlyName') } }
# If the account is a Plex Home guest user
field :guest, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('guest') } }
# If the account has a password
field :has_password, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('hasPassword') } }
# If the account is a Plex Home user
field :home, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('home') } }
# If the account is the Plex Home admin
field :home_admin, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('homeAdmin') } }
# The number of accounts in the Plex Home
field :home_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('homeSize') } }
# The Plex account ID
field :id, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('id') } }
# Unix epoch datetime
field :joined_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('joinedAt') } }
# The account locale
field :locale, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('locale') } }
# If you are subscribed to the Plex newsletter
field :mailing_list_active, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mailingListActive') } }
# Your current mailing list status
field :mailing_list_status, ::PlexRubySDK::Operations::MailingListStatus, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('mailingListStatus'), 'decoder': Utils.enum_from_string(::PlexRubySDK::Operations::MailingListStatus, false) } }
# The maximum number of accounts allowed in the Plex Home
field :max_home_size, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('maxHomeSize') } }
field :profile, ::PlexRubySDK::Operations::UserProfile, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('profile') } }
# If the account has a Plex Home PIN enabled
field :protected, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('protected') } }
# Unix epoch datetime
field :remember_expires_at, ::Integer, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('rememberExpiresAt') } }
# If the account is a Plex Home managed user
field :restricted, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('restricted') } }
# Unknown
field :scrobble_types, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('scrobbleTypes') } }
field :services, T::Array[::PlexRubySDK::Operations::Services], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('services') } }
# If the accounts Plex Pass subscription is active
field :subscription, ::PlexRubySDK::Operations::Subscription, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subscription') } }
# Description of the Plex Pass subscription
field :subscription_description, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subscriptionDescription') } }
field :subscriptions, T::Array[::PlexRubySDK::Operations::GetTokenDetailsSubscription], { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('subscriptions') } }
# 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') } }
# If two-factor authentication is enabled
field :two_factor_enabled, T::Boolean, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('twoFactorEnabled') } }
# The account username
field :username, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('username') } }
# The account UUID
field :uuid, ::String, { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('uuid') } }
# [Might be removed] The hashed Plex Home PIN
#
# @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
field :pin, T.nilable(::String), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('pin') } }
# [Might be removed] List of account roles. Plexpass membership listed here
field :roles, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::PlexRubySDK::Utils.field_name('roles') } }
sig { params(ads_consent: T::Boolean, ads_consent_reminder_at: ::DateTime, ads_consent_set_at: ::DateTime, anonymous: T::Boolean, auth_token: ::String, backup_codes_created: T::Boolean, confirmed: T::Boolean, country: ::String, email: ::String, email_only_auth: T::Boolean, entitlements: T::Array[::String], experimental_features: T::Boolean, friendly_name: ::String, guest: T::Boolean, has_password: T::Boolean, home: T::Boolean, home_admin: T::Boolean, home_size: ::Integer, id: ::Integer, joined_at: ::Integer, locale: ::String, mailing_list_active: T::Boolean, mailing_list_status: ::PlexRubySDK::Operations::MailingListStatus, max_home_size: ::Integer, profile: ::PlexRubySDK::Operations::UserProfile, protected: T::Boolean, remember_expires_at: ::Integer, restricted: T::Boolean, scrobble_types: ::String, services: T::Array[::PlexRubySDK::Operations::Services], subscription: ::PlexRubySDK::Operations::Subscription, subscription_description: ::String, subscriptions: T::Array[::PlexRubySDK::Operations::GetTokenDetailsSubscription], thumb: ::String, title: ::String, two_factor_enabled: T::Boolean, username: ::String, uuid: ::String, pin: T.nilable(::String), roles: T.nilable(T::Array[::String])).void }
def initialize(ads_consent: nil, ads_consent_reminder_at: nil, ads_consent_set_at: nil, anonymous: nil, auth_token: nil, backup_codes_created: nil, confirmed: nil, country: nil, email: nil, email_only_auth: nil, entitlements: nil, experimental_features: nil, friendly_name: nil, guest: nil, has_password: nil, home: nil, home_admin: nil, home_size: nil, id: nil, joined_at: nil, locale: nil, mailing_list_active: nil, mailing_list_status: nil, max_home_size: nil, profile: nil, protected: nil, remember_expires_at: nil, restricted: nil, scrobble_types: nil, services: nil, subscription: nil, subscription_description: nil, subscriptions: nil, thumb: nil, title: nil, two_factor_enabled: nil, username: nil, uuid: nil, pin: nil, roles: nil)
@ads_consent = ads_consent
@ads_consent_reminder_at = ads_consent_reminder_at
@ads_consent_set_at = ads_consent_set_at
@anonymous = anonymous
@auth_token = auth_token
@backup_codes_created = backup_codes_created
@confirmed = confirmed
@country = country
@email = email
@email_only_auth = email_only_auth
@entitlements = entitlements
@experimental_features = experimental_features
@friendly_name = friendly_name
@guest = guest
@has_password = has_password
@home = home
@home_admin = home_admin
@home_size = home_size
@id = id
@joined_at = joined_at
@locale = locale
@mailing_list_active = mailing_list_active
@mailing_list_status = mailing_list_status
@max_home_size = max_home_size
@profile = profile
@protected = protected
@remember_expires_at = remember_expires_at
@restricted = restricted
@scrobble_types = scrobble_types
@services = services
@subscription = subscription
@subscription_description = subscription_description
@subscriptions = subscriptions
@thumb = thumb
@title = title
@two_factor_enabled = two_factor_enabled
@username = username
@uuid = uuid
@pin = pin
@roles = roles
end
end
end
end