fastpixapi 1.1.4 → 1.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/metadata_fields.rb +2 -0
  3. data/lib/crystalline/module.rb +12 -13
  4. data/lib/fastpix_client/live_playback.rb +253 -0
  5. data/lib/fastpix_client/models/components/addtrackresponse.rb +1 -1
  6. data/lib/fastpix_client/models/components/audiotrack.rb +1 -1
  7. data/lib/fastpix_client/models/components/createmediaresponse.rb +1 -1
  8. data/lib/fastpix_client/models/components/createplaybackid.rb +1 -1
  9. data/lib/fastpix_client/models/components/createplaybackid_domains.rb +1 -1
  10. data/lib/fastpix_client/models/components/createplaybackid_useragents.rb +1 -1
  11. data/lib/fastpix_client/models/components/directupload.rb +1 -1
  12. data/lib/fastpix_client/models/components/directuploadresponse.rb +1 -1
  13. data/lib/fastpix_client/models/components/generatetrackresponse.rb +1 -1
  14. data/lib/fastpix_client/models/components/getallmediaresponse.rb +3 -3
  15. data/lib/fastpix_client/models/components/getallmediaresponse.rbi +1 -1
  16. data/lib/fastpix_client/models/components/getmediadetailresponse.rb +3 -3
  17. data/lib/fastpix_client/models/components/getmediadetailresponse.rbi +1 -1
  18. data/lib/fastpix_client/models/components/inputmediasettings.rb +7 -2
  19. data/lib/fastpix_client/models/components/inputmediasettings.rbi +2 -0
  20. data/lib/fastpix_client/models/components/live_media_clips.rb +3 -3
  21. data/lib/fastpix_client/models/components/live_media_clips.rbi +1 -1
  22. data/lib/fastpix_client/models/components/media.rb +3 -3
  23. data/lib/fastpix_client/models/components/media.rbi +1 -1
  24. data/lib/fastpix_client/models/components/mediaclipresponse_data.rb +2 -2
  25. data/lib/fastpix_client/models/components/mediaclipresponse_data.rbi +1 -1
  26. data/lib/fastpix_client/models/components/playbackid.rb +1 -1
  27. data/lib/fastpix_client/models/components/playbackid_domains.rb +1 -1
  28. data/lib/fastpix_client/models/components/playbackid_useragents.rb +1 -1
  29. data/lib/fastpix_client/models/components/playbackidrequest.rb +6 -2
  30. data/lib/fastpix_client/models/components/playbackidrequest.rbi +3 -1
  31. data/lib/fastpix_client/models/components/playbackidresponse.rb +6 -2
  32. data/lib/fastpix_client/models/components/playbackidresponse.rbi +3 -1
  33. data/lib/fastpix_client/models/components/playbackidsuccessresponse_data.rb +6 -2
  34. data/lib/fastpix_client/models/components/playbackidsuccessresponse_data.rbi +3 -1
  35. data/lib/fastpix_client/models/components/playbacksettings.rb +6 -2
  36. data/lib/fastpix_client/models/components/playbacksettings.rbi +3 -1
  37. data/lib/fastpix_client/models/components/playlistbyidresponsedatamanual.rb +1 -1
  38. data/lib/fastpix_client/models/components/playlistbyidresponsedatasmart.rb +1 -1
  39. data/lib/fastpix_client/models/components/playlistbyidresponsemedialistitem.rb +2 -2
  40. data/lib/fastpix_client/models/components/playlistbyidresponsemedialistitem.rbi +1 -1
  41. data/lib/fastpix_client/models/components/playlistitem.rb +1 -1
  42. data/lib/fastpix_client/models/components/sourceaccessmedia.rb +3 -3
  43. data/lib/fastpix_client/models/components/sourceaccessmedia.rbi +1 -1
  44. data/lib/fastpix_client/models/components/subtitletrack.rb +1 -1
  45. data/lib/fastpix_client/models/components/unused_uploads_playbackid.rb +1 -1
  46. data/lib/fastpix_client/models/components/unused_uploads_playbackid_domains.rb +1 -1
  47. data/lib/fastpix_client/models/components/unused_uploads_playbackid_useragents.rb +1 -1
  48. data/lib/fastpix_client/models/components/unuseddirectupload.rb +1 -1
  49. data/lib/fastpix_client/models/components/unuseddirectuploadresponse.rb +1 -1
  50. data/lib/fastpix_client/models/components/update_media.rb +3 -3
  51. data/lib/fastpix_client/models/components/update_media.rbi +1 -1
  52. data/lib/fastpix_client/models/components/updatetrackresponse.rb +1 -1
  53. data/lib/fastpix_client/models/operations/get_playback_id_data.rb +1 -1
  54. data/lib/fastpix_client/models/operations/get_playback_id_domains.rb +1 -1
  55. data/lib/fastpix_client/models/operations/get_playback_id_useragents.rb +1 -1
  56. data/lib/fastpix_client/models/operations/list_playback_ids_data.rb +1 -1
  57. data/lib/fastpix_client/models/operations/list_playback_ids_domains.rb +1 -1
  58. data/lib/fastpix_client/models/operations/list_playback_ids_useragents.rb +1 -1
  59. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_data.rb +40 -0
  60. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_data.rbi +17 -0
  61. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_defaultpolicy.rb +21 -0
  62. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_defaultpolicy.rbi +11 -0
  63. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_request.rb +40 -0
  64. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_request.rbi +17 -0
  65. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_requestbody.rb +40 -0
  66. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_requestbody.rbi +17 -0
  67. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_response.rb +48 -0
  68. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_response.rbi +21 -0
  69. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_responsebody.rb +36 -0
  70. data/lib/fastpix_client/models/operations/update_live_stream_domain_restrictions_responsebody.rbi +15 -0
  71. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_data.rb +40 -0
  72. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_data.rbi +17 -0
  73. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_defaultpolicy.rb +21 -0
  74. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_defaultpolicy.rbi +11 -0
  75. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_request.rb +40 -0
  76. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_request.rbi +17 -0
  77. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_requestbody.rb +40 -0
  78. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_requestbody.rbi +17 -0
  79. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_response.rb +48 -0
  80. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_response.rbi +21 -0
  81. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_responsebody.rb +36 -0
  82. data/lib/fastpix_client/models/operations/update_live_stream_user_agent_restrictions_responsebody.rbi +15 -0
  83. data/lib/fastpix_client/models/operations.rb +12 -0
  84. data/lib/fastpix_client/sdkconfiguration.rb +3 -3
  85. data/lib/fastpix_client/utils/utils.rb +3 -2
  86. metadata +44 -40
@@ -15,7 +15,7 @@ module FastpixClient
15
15
  # The unique identifier assigned to the media by FastPix.
16
16
  field :id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('id') } }
17
17
  # Duration of the media in HH:MM:SS format.
18
- field :duration, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('duration') } }
18
+ field :duration, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('duration') } }
19
19
  # The current processing status of the media.
20
20
  field :status, Crystalline::Nilable.new(Models::Components::MediaClipResponseStatus), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('status'), 'decoder': Utils.enum_from_string(Models::Components::MediaClipResponseStatus, true) } }
21
21
  # A video thumbnail that acts as a preview image for the video.
@@ -25,7 +25,7 @@ module FastpixClient
25
25
 
26
26
  field :playback_ids, Crystalline::Nilable.new(Crystalline::Array.new(Models::Components::MediaClipResponsePlaybackId)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('playbackIds') } }
27
27
 
28
- sig { params(id: T.nilable(::String), duration: T.nilable(::String), status: T.nilable(Models::Components::MediaClipResponseStatus), thumbnail: T.nilable(::String), created_at: T.nilable(::DateTime), playback_ids: T.nilable(T::Array[Models::Components::MediaClipResponsePlaybackId])).void }
28
+ sig { params(id: T.nilable(::String), duration: T.nilable(::Float), status: T.nilable(T.any(Models::Components::MediaClipResponseStatus, String)), thumbnail: T.nilable(::String), created_at: T.nilable(::DateTime), playback_ids: T.nilable(T::Array[Models::Components::MediaClipResponsePlaybackId])).void }
29
29
  def initialize(id: nil, duration: nil, status: nil, thumbnail: nil, created_at: nil, playback_ids: nil)
30
30
  @id = id
31
31
  @duration = duration
@@ -11,7 +11,7 @@ class FastpixClient::Models::Components::MediaClipResponseData
11
11
  def id(); end
12
12
  def id=(str_); end
13
13
  def duration(); end
14
- def duration=(str_); end
14
+ def duration=(float_); end
15
15
  def status(); end
16
16
  def status=(str_); end
17
17
  def thumbnail(); end
@@ -19,7 +19,7 @@ module FastpixClient
19
19
  # A unique identifier is generated by FastPix for the playbacks.
20
20
  field :id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('id') } }
21
21
 
22
- sig { params(access_policy: T.nilable(Models::Components::AccessPolicy), access_restrictions: T.nilable(Models::Components::PlaybackIdAccessRestrictions), id: T.nilable(::String)).void }
22
+ sig { params(access_policy: T.nilable(T.any(Models::Components::AccessPolicy, String)), access_restrictions: T.nilable(Models::Components::PlaybackIdAccessRestrictions), id: T.nilable(::String)).void }
23
23
  def initialize(access_policy: nil, access_restrictions: nil, id: nil)
24
24
  @access_policy = access_policy
25
25
  @access_restrictions = access_restrictions
@@ -19,7 +19,7 @@ module FastpixClient
19
19
  # A list of domains that are explicitly blocked from accessing the resource.
20
20
  field :deny, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('deny') } }
21
21
 
22
- sig { params(default_policy: T.nilable(Models::Components::PolicyAction), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
22
+ sig { params(default_policy: T.nilable(T.any(Models::Components::PolicyAction, String)), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
23
23
  def initialize(default_policy: nil, allow: nil, deny: nil)
24
24
  @default_policy = default_policy
25
25
  @allow = allow
@@ -19,7 +19,7 @@ module FastpixClient
19
19
  # A list of specific user agents that are blocked.
20
20
  field :deny, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('deny') } }
21
21
 
22
- sig { params(default_policy: T.nilable(Models::Components::PolicyAction), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
22
+ sig { params(default_policy: T.nilable(T.any(Models::Components::PolicyAction, String)), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
23
23
  def initialize(default_policy: nil, allow: nil, deny: nil)
24
24
  @default_policy = default_policy
25
25
  @allow = allow
@@ -14,16 +14,20 @@ module FastpixClient
14
14
 
15
15
  # Basic access policy for media content
16
16
  field :access_policy, Crystalline::Nilable.new(Models::Components::BasicAccessPolicy), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('accessPolicy'), 'decoder': Utils.enum_from_string(Models::Components::BasicAccessPolicy, true) } }
17
+ # Domain and user-agent access restrictions applied to the live playback ID.
18
+ field :access_restrictions, Crystalline::Nilable.new(Models::Components::PlaybackIdAccessRestrictions), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('accessRestrictions') } }
17
19
 
18
- sig { params(access_policy: T.nilable(Models::Components::BasicAccessPolicy)).void }
19
- def initialize(access_policy: Models::Components::BasicAccessPolicy::PUBLIC)
20
+ sig { params(access_policy: T.nilable(Models::Components::BasicAccessPolicy), access_restrictions: T.nilable(Models::Components::PlaybackIdAccessRestrictions)).void }
21
+ def initialize(access_policy: Models::Components::BasicAccessPolicy::PUBLIC, access_restrictions: nil)
20
22
  @access_policy = access_policy
23
+ @access_restrictions = access_restrictions
21
24
  end
22
25
 
23
26
  sig { params(other: T.untyped).returns(T::Boolean) }
24
27
  def ==(other)
25
28
  return false unless other.is_a? self.class
26
29
  return false unless @access_policy == other.access_policy
30
+ return false unless @access_restrictions == other.access_restrictions
27
31
  true
28
32
  end
29
33
  end
@@ -10,4 +10,6 @@ end
10
10
  class FastpixClient::Models::Components::PlaybackIdRequest
11
11
  def access_policy(); end
12
12
  def access_policy=(str_); end
13
- end
13
+ def access_restrictions(); end
14
+ def access_restrictions=(str_); end
15
+ end
@@ -16,11 +16,14 @@ module FastpixClient
16
16
  field :id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('id') } }
17
17
  # Determines if access to the streamed content is kept private or available to all.
18
18
  field :access_policy, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('accessPolicy') } }
19
+ # Domain and user-agent access restrictions applied to the live playback ID.
20
+ field :access_restrictions, Crystalline::Nilable.new(Models::Components::PlaybackIdAccessRestrictions), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('accessRestrictions') } }
19
21
 
20
- sig { params(id: T.nilable(::String), access_policy: T.nilable(::String)).void }
21
- def initialize(id: nil, access_policy: nil)
22
+ sig { params(id: T.nilable(::String), access_policy: T.nilable(::String), access_restrictions: T.nilable(Models::Components::PlaybackIdAccessRestrictions)).void }
23
+ def initialize(id: nil, access_policy: nil, access_restrictions: nil)
22
24
  @id = id
23
25
  @access_policy = access_policy
26
+ @access_restrictions = access_restrictions
24
27
  end
25
28
 
26
29
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -28,6 +31,7 @@ module FastpixClient
28
31
  return false unless other.is_a? self.class
29
32
  return false unless @id == other.id
30
33
  return false unless @access_policy == other.access_policy
34
+ return false unless @access_restrictions == other.access_restrictions
31
35
  true
32
36
  end
33
37
  end
@@ -12,4 +12,6 @@ class FastpixClient::Models::Components::PlaybackIdResponse
12
12
  def id=(str_); end
13
13
  def access_policy(); end
14
14
  def access_policy=(str_); end
15
- end
15
+ def access_restrictions(); end
16
+ def access_restrictions=(str_); end
17
+ end
@@ -16,11 +16,14 @@ module FastpixClient
16
16
  field :id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('id') } }
17
17
  # Determines if access to the streamed content is kept private or available to all.
18
18
  field :access_policy, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('accessPolicy') } }
19
+ # Domain and user-agent access restrictions applied to the live playback ID.
20
+ field :access_restrictions, Crystalline::Nilable.new(Models::Components::PlaybackIdAccessRestrictions), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('accessRestrictions') } }
19
21
 
20
- sig { params(id: T.nilable(::String), access_policy: T.nilable(::String)).void }
21
- def initialize(id: nil, access_policy: nil)
22
+ sig { params(id: T.nilable(::String), access_policy: T.nilable(::String), access_restrictions: T.nilable(Models::Components::PlaybackIdAccessRestrictions)).void }
23
+ def initialize(id: nil, access_policy: nil, access_restrictions: nil)
22
24
  @id = id
23
25
  @access_policy = access_policy
26
+ @access_restrictions = access_restrictions
24
27
  end
25
28
 
26
29
  sig { params(other: T.untyped).returns(T::Boolean) }
@@ -28,6 +31,7 @@ module FastpixClient
28
31
  return false unless other.is_a? self.class
29
32
  return false unless @id == other.id
30
33
  return false unless @access_policy == other.access_policy
34
+ return false unless @access_restrictions == other.access_restrictions
31
35
  true
32
36
  end
33
37
  end
@@ -12,4 +12,6 @@ class FastpixClient::Models::Components::PlaybackIdSuccessResponseData
12
12
  def id=(str_); end
13
13
  def access_policy(); end
14
14
  def access_policy=(str_); end
15
- end
15
+ def access_restrictions(); end
16
+ def access_restrictions=(str_); end
17
+ end
@@ -14,16 +14,20 @@ module FastpixClient
14
14
 
15
15
  # Basic access policy for media content
16
16
  field :access_policy, Crystalline::Nilable.new(Models::Components::BasicAccessPolicy), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('accessPolicy'), 'decoder': Utils.enum_from_string(Models::Components::BasicAccessPolicy, true) } }
17
+ # Domain and user-agent access restrictions applied to the live playback ID.
18
+ field :access_restrictions, Crystalline::Nilable.new(Models::Components::PlaybackIdAccessRestrictions), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('accessRestrictions') } }
17
19
 
18
- sig { params(access_policy: T.nilable(Models::Components::BasicAccessPolicy)).void }
19
- def initialize(access_policy: Models::Components::BasicAccessPolicy::PUBLIC)
20
+ sig { params(access_policy: T.nilable(Models::Components::BasicAccessPolicy), access_restrictions: T.nilable(Models::Components::PlaybackIdAccessRestrictions)).void }
21
+ def initialize(access_policy: Models::Components::BasicAccessPolicy::PUBLIC, access_restrictions: nil)
20
22
  @access_policy = access_policy
23
+ @access_restrictions = access_restrictions
21
24
  end
22
25
 
23
26
  sig { params(other: T.untyped).returns(T::Boolean) }
24
27
  def ==(other)
25
28
  return false unless other.is_a? self.class
26
29
  return false unless @access_policy == other.access_policy
30
+ return false unless @access_restrictions == other.access_restrictions
27
31
  true
28
32
  end
29
33
  end
@@ -10,4 +10,6 @@ end
10
10
  class FastpixClient::Models::Components::PlaybackSettings
11
11
  def access_policy(); end
12
12
  def access_policy=(str_); end
13
- end
13
+ def access_restrictions(); end
14
+ def access_restrictions=(str_); end
15
+ end
@@ -33,7 +33,7 @@ module FastpixClient
33
33
  # No. of media present in the playlist
34
34
  field :media_count, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('mediaCount') } }
35
35
 
36
- sig { params(type: Models::Components::PlaylistByIdResponseDataManualType, id: T.nilable(::String), name: T.nilable(::String), reference_id: T.nilable(::String), description: T.nilable(::String), media_list: T.nilable(T::Array[Models::Components::PlaylistByIdResponseMediaListItem]), workspace_id: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), media_count: T.nilable(::Integer)).void }
36
+ sig { params(type: T.any(Models::Components::PlaylistByIdResponseDataManualType, String), id: T.nilable(::String), name: T.nilable(::String), reference_id: T.nilable(::String), description: T.nilable(::String), media_list: T.nilable(T::Array[Models::Components::PlaylistByIdResponseMediaListItem]), workspace_id: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), media_count: T.nilable(::Integer)).void }
37
37
  def initialize(type:, id: nil, name: nil, reference_id: nil, description: nil, media_list: nil, workspace_id: nil, created_at: nil, updated_at: nil, media_count: nil)
38
38
  @type = type
39
39
  @id = id
@@ -37,7 +37,7 @@ module FastpixClient
37
37
  # No. of media present in the playlist
38
38
  field :media_count, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('mediaCount') } }
39
39
 
40
- sig { params(type: Models::Components::PlaylistByIdResponseDataSmartType, play_order: Models::Components::PlaylistOrder, metadata: Models::Components::PlaylistByIdResponseMetadata, id: T.nilable(::String), name: T.nilable(::String), reference_id: T.nilable(::String), description: T.nilable(::String), media_list: T.nilable(T::Array[Models::Components::PlaylistByIdResponseMediaListItem]), workspace_id: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), media_count: T.nilable(::Integer)).void }
40
+ sig { params(type: T.any(Models::Components::PlaylistByIdResponseDataSmartType, String), play_order: T.any(Models::Components::PlaylistOrder, String), metadata: Models::Components::PlaylistByIdResponseMetadata, id: T.nilable(::String), name: T.nilable(::String), reference_id: T.nilable(::String), description: T.nilable(::String), media_list: T.nilable(T::Array[Models::Components::PlaylistByIdResponseMediaListItem]), workspace_id: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), media_count: T.nilable(::Integer)).void }
41
41
  def initialize(type:, play_order:, metadata:, id: nil, name: nil, reference_id: nil, description: nil, media_list: nil, workspace_id: nil, created_at: nil, updated_at: nil, media_count: nil)
42
42
  @type = type
43
43
  @play_order = play_order
@@ -15,7 +15,7 @@ module FastpixClient
15
15
  # Timestamp of media creation in the workspace.
16
16
  field :created_at, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('createdAt'), 'decoder': Utils.datetime_from_iso_format(true) } }
17
17
  # Duration of the media in hh:mm:ss format.
18
- field :duration, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('duration') } }
18
+ field :duration, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('duration') } }
19
19
  # unique id of the particular media.
20
20
  field :id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('id') } }
21
21
  # source resolution of the media.
@@ -29,7 +29,7 @@ module FastpixClient
29
29
  # Title of the media.
30
30
  field :title, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('title') } }
31
31
 
32
- sig { params(created_at: T.nilable(::DateTime), duration: T.nilable(::String), id: T.nilable(::String), source_resolution: T.nilable(::String), status: T.nilable(::String), thumbnail: T.nilable(::String), creator_id: T.nilable(::String), title: T.nilable(::String)).void }
32
+ sig { params(created_at: T.nilable(::DateTime), duration: T.nilable(::Float), id: T.nilable(::String), source_resolution: T.nilable(::String), status: T.nilable(::String), thumbnail: T.nilable(::String), creator_id: T.nilable(::String), title: T.nilable(::String)).void }
33
33
  def initialize(created_at: nil, duration: nil, id: nil, source_resolution: nil, status: nil, thumbnail: nil, creator_id: nil, title: nil)
34
34
  @created_at = created_at
35
35
  @duration = duration
@@ -11,7 +11,7 @@ class FastpixClient::Models::Components::PlaylistByIdResponseMediaListItem
11
11
  def created_at(); end
12
12
  def created_at=(str_); end
13
13
  def duration(); end
14
- def duration=(str_); end
14
+ def duration=(float_); end
15
15
  def id(); end
16
16
  def id=(str_); end
17
17
  def source_resolution(); end
@@ -25,7 +25,7 @@ module FastpixClient
25
25
  # No. of media present in the playlist
26
26
  field :media_count, Crystalline::Nilable.new(::Integer), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('mediaCount') } }
27
27
 
28
- sig { params(id: T.nilable(::String), name: T.nilable(::String), type: T.nilable(Models::Components::PlaylistItemType), reference_id: T.nilable(::String), created_at: T.nilable(::DateTime), media_count: T.nilable(::Integer)).void }
28
+ sig { params(id: T.nilable(::String), name: T.nilable(::String), type: T.nilable(T.any(Models::Components::PlaylistItemType, String)), reference_id: T.nilable(::String), created_at: T.nilable(::DateTime), media_count: T.nilable(::Integer)).void }
29
29
  def initialize(id: nil, name: nil, type: nil, reference_id: nil, created_at: nil, media_count: nil)
30
30
  @id = id
31
31
  @name = name
@@ -36,8 +36,8 @@ module FastpixClient
36
36
  field :named_entities, Crystalline::Nilable.new(Models::Components::AiResponseRecord), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('namedEntities') } }
37
37
  # Represents an AI response record containing status and data for AI-generated features like summary, chapters, named entities, or moderation.
38
38
  field :moderation, Crystalline::Nilable.new(Models::Components::AiResponseRecord), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('moderation') } }
39
- # The length of the media in seconds, with a maximum allowed duration of 12 hours per individual media.
40
- field :duration, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('duration') } }
39
+ # Duration of the media in seconds.
40
+ field :duration, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('duration') } }
41
41
  # Time the media was created, defined as a localDateTime (UTC Time).
42
42
  field :created_at, Crystalline::Nilable.new(::DateTime), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('createdAt'), 'decoder': Utils.datetime_from_iso_format(true) } }
43
43
  # Time the media was updated, defined as a localDateTime (UTC Time).
@@ -66,7 +66,7 @@ module FastpixClient
66
66
  # The aspect ratio of a video describes its shape based on the relationship between its width and height.
67
67
  field :aspect_ratio, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('aspectRatio') } }
68
68
 
69
- sig { params(id: T.nilable(::String), workspace_id: T.nilable(::String), media_quality: T.nilable(Models::Components::SourceAccessMediaMediaQuality), creator_id: T.nilable(::String), status: T.nilable(Models::Components::SourceAccessMediaStatus), mp4_support: T.nilable(T::Array[Models::Components::SourceAccessMediaMp4Support]), playback_ids: T.nilable(T::Array[Models::Components::PlaybackId]), tracks: T.nilable(T::Array[T.any(Models::Components::VideoTrack, Models::Components::AudioTrack, Models::Components::SubtitleTrack)]), summary: T.nilable(Models::Components::AiSummaryRecord), chapters: T.nilable(Models::Components::AiResponseRecord), named_entities: T.nilable(Models::Components::AiResponseRecord), moderation: T.nilable(Models::Components::AiResponseRecord), duration: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), thumbnail: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), title: T.nilable(::String), max_resolution: T.nilable(Models::Components::SourceAccessMediaMaxResolution), source_resolution: T.nilable(Models::Components::SourceAccessMediaSourceResolution), source_access: T.nilable(T::Boolean), generated_subtitles: T.nilable(T::Array[Models::Components::TracksSubtitles]), is_audio_only: T.nilable(T::Boolean), subtitle_available: T.nilable(T::Boolean), optimize_audio: T.nilable(T::Boolean), aspect_ratio: T.nilable(::String)).void }
69
+ sig { params(id: T.nilable(::String), workspace_id: T.nilable(::String), media_quality: T.nilable(T.any(Models::Components::SourceAccessMediaMediaQuality, String)), creator_id: T.nilable(::String), status: T.nilable(T.any(Models::Components::SourceAccessMediaStatus, String)), mp4_support: T.nilable(T::Array[Models::Components::SourceAccessMediaMp4Support]), playback_ids: T.nilable(T::Array[Models::Components::PlaybackId]), tracks: T.nilable(T::Array[T.any(Models::Components::VideoTrack, Models::Components::AudioTrack, Models::Components::SubtitleTrack)]), summary: T.nilable(Models::Components::AiSummaryRecord), chapters: T.nilable(Models::Components::AiResponseRecord), named_entities: T.nilable(Models::Components::AiResponseRecord), moderation: T.nilable(Models::Components::AiResponseRecord), duration: T.nilable(::Float), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), thumbnail: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::String]), title: T.nilable(::String), max_resolution: T.nilable(T.any(Models::Components::SourceAccessMediaMaxResolution, String)), source_resolution: T.nilable(T.any(Models::Components::SourceAccessMediaSourceResolution, String)), source_access: T.nilable(T::Boolean), generated_subtitles: T.nilable(T::Array[Models::Components::TracksSubtitles]), is_audio_only: T.nilable(T::Boolean), subtitle_available: T.nilable(T::Boolean), optimize_audio: T.nilable(T::Boolean), aspect_ratio: T.nilable(::String)).void }
70
70
  def initialize(id: nil, workspace_id: nil, media_quality: nil, creator_id: nil, status: nil, mp4_support: nil, playback_ids: nil, tracks: nil, summary: nil, chapters: nil, named_entities: nil, moderation: nil, duration: nil, created_at: nil, updated_at: nil, thumbnail: nil, metadata: nil, title: nil, max_resolution: Models::Components::SourceAccessMediaMaxResolution::ONE_THOUSAND_AND_EIGHTYP, source_resolution: Models::Components::SourceAccessMediaSourceResolution::ONE_THOUSAND_AND_EIGHTYP, source_access: nil, generated_subtitles: nil, is_audio_only: nil, subtitle_available: nil, optimize_audio: nil, aspect_ratio: nil)
71
71
  @id = id
72
72
  @workspace_id = workspace_id
@@ -33,7 +33,7 @@ class FastpixClient::Models::Components::SourceAccessMedia
33
33
  def moderation(); end
34
34
  def moderation=(str_); end
35
35
  def duration(); end
36
- def duration=(str_); end
36
+ def duration=(float_); end
37
37
  def created_at(); end
38
38
  def created_at=(str_); end
39
39
  def updated_at(); end
@@ -27,7 +27,7 @@ module FastpixClient
27
27
  #
28
28
  field :language_code, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('languageCode') } }
29
29
 
30
- sig { params(id: T.nilable(::String), type: T.nilable(Models::Components::SubtitleTrackType), status: T.nilable(::String), title: T.nilable(::String), language_name: T.nilable(::String), language_code: T.nilable(::String)).void }
30
+ sig { params(id: T.nilable(::String), type: T.nilable(T.any(Models::Components::SubtitleTrackType, String)), status: T.nilable(::String), title: T.nilable(::String), language_name: T.nilable(::String), language_code: T.nilable(::String)).void }
31
31
  def initialize(id: nil, type: nil, status: nil, title: nil, language_name: nil, language_code: nil)
32
32
  @id = id
33
33
  @type = type
@@ -17,7 +17,7 @@ module FastpixClient
17
17
  # Controls access based on domains and user agents. Defines a default policy (either "allow" or "deny") and provides lists for explicitly allowed or denied domains and user agents.
18
18
  field :access_restrictions, Crystalline::Nilable.new(Models::Components::UnusedUploadsPlaybackIdAccessRestrictions), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('accessRestrictions') } }
19
19
 
20
- sig { params(access_policy: T.nilable(Models::Components::AccessPolicy), access_restrictions: T.nilable(Models::Components::UnusedUploadsPlaybackIdAccessRestrictions)).void }
20
+ sig { params(access_policy: T.nilable(T.any(Models::Components::AccessPolicy, String)), access_restrictions: T.nilable(Models::Components::UnusedUploadsPlaybackIdAccessRestrictions)).void }
21
21
  def initialize(access_policy: nil, access_restrictions: nil)
22
22
  @access_policy = access_policy
23
23
  @access_restrictions = access_restrictions
@@ -19,7 +19,7 @@ module FastpixClient
19
19
  # A list of domains that are explicitly blocked from accessing the resource.
20
20
  field :deny, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('deny') } }
21
21
 
22
- sig { params(default_policy: T.nilable(Models::Components::PolicyAction), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
22
+ sig { params(default_policy: T.nilable(T.any(Models::Components::PolicyAction, String)), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
23
23
  def initialize(default_policy: nil, allow: nil, deny: nil)
24
24
  @default_policy = default_policy
25
25
  @allow = allow
@@ -19,7 +19,7 @@ module FastpixClient
19
19
  # A list of specific user agents that are blocked.
20
20
  field :deny, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('deny') } }
21
21
 
22
- sig { params(default_policy: T.nilable(Models::Components::PolicyAction), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
22
+ sig { params(default_policy: T.nilable(T.any(Models::Components::PolicyAction, String)), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
23
23
  def initialize(default_policy: nil, allow: nil, deny: nil)
24
24
  @default_policy = default_policy
25
25
  @allow = allow
@@ -28,7 +28,7 @@ module FastpixClient
28
28
  #
29
29
  field :timeout, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('timeout') } }
30
30
 
31
- sig { params(upload_id: T.nilable(::String), trial: T.nilable(T::Boolean), status: T.nilable(Models::Components::UnusedDirectUploadStatus), url: T.nilable(::String), cors_origin: T.nilable(::String), push_media_settings: T.nilable(Models::Components::UnusedDirectUploadResponse), timeout: T.nilable(::Float)).void }
31
+ sig { params(upload_id: T.nilable(::String), trial: T.nilable(T::Boolean), status: T.nilable(T.any(Models::Components::UnusedDirectUploadStatus, String)), url: T.nilable(::String), cors_origin: T.nilable(::String), push_media_settings: T.nilable(Models::Components::UnusedDirectUploadResponse), timeout: T.nilable(::Float)).void }
32
32
  def initialize(upload_id: nil, trial: nil, status: nil, url: nil, cors_origin: nil, push_media_settings: nil, timeout: 14_400.0)
33
33
  @upload_id = upload_id
34
34
  @trial = trial
@@ -26,7 +26,7 @@ module FastpixClient
26
26
  #
27
27
  field :optimize_audio, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('optimizeAudio') } }
28
28
 
29
- sig { params(playback_ids: T.nilable(T::Array[Models::Components::UnusedUploadsPlaybackId]), metadata: T.nilable(T::Hash[Symbol, ::String]), media_quality: T.nilable(Models::Components::UnusedDirectUploadResponseMediaQuality), source_access: T.nilable(T::Boolean), optimize_audio: T.nilable(T::Boolean)).void }
29
+ sig { params(playback_ids: T.nilable(T::Array[Models::Components::UnusedUploadsPlaybackId]), metadata: T.nilable(T::Hash[Symbol, ::String]), media_quality: T.nilable(T.any(Models::Components::UnusedDirectUploadResponseMediaQuality, String)), source_access: T.nilable(T::Boolean), optimize_audio: T.nilable(T::Boolean)).void }
30
30
  def initialize(playback_ids: nil, metadata: nil, media_quality: nil, source_access: nil, optimize_audio: nil)
31
31
  @playback_ids = playback_ids
32
32
  @metadata = metadata
@@ -42,8 +42,8 @@ module FastpixClient
42
42
  field :subtitle_available, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('subtitleAvailable') } }
43
43
  # Enhance the quality and volume of the audio track. This is available for pre-recorded content only.
44
44
  field :optimize_audio, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('optimizeAudio') } }
45
- # The length of the media in seconds, with a maximum allowed duration of 12 hours per individual media.
46
- field :duration, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('duration') } }
45
+ # Duration of the media in seconds.
46
+ field :duration, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('duration') } }
47
47
  # The aspect ratio of a video is a value that describes the relative shape of a video based on its width and height.
48
48
  field :aspect_ratio, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('aspectRatio') } }
49
49
  # Time the media was created, defined as a localDateTime (UTC Time).
@@ -65,7 +65,7 @@ module FastpixClient
65
65
  # Indicates whether the media contains only audio (no video track).
66
66
  field :is_audio_only, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('isAudioOnly') } }
67
67
 
68
- sig { params(thumbnail: T.nilable(::String), id: T.nilable(::String), workspace_id: T.nilable(::String), media_quality: T.nilable(Models::Components::UpdateMediaMediaQuality), status: T.nilable(Models::Components::UpdateMediaStatus), mp4_support: T.nilable(T::Array[Models::Components::UpdateMediaMp4Support]), source_access: T.nilable(T::Boolean), playback_ids: T.nilable(T::Array[Models::Components::PlaybackId]), tracks: T.nilable(T::Array[T.any(Models::Components::VideoTrack, Models::Components::AudioTrack, Models::Components::SubtitleTrack)]), summary: T.nilable(Models::Components::AiSummaryRecord), chapters: T.nilable(Models::Components::AiResponseRecord), named_entities: T.nilable(Models::Components::AiResponseRecord), moderation: T.nilable(Models::Components::AiResponseRecord), subtitle_available: T.nilable(T::Boolean), optimize_audio: T.nilable(T::Boolean), duration: T.nilable(::String), aspect_ratio: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), metadata: T.nilable(T::Hash[Symbol, ::String]), creator_id: T.nilable(::String), title: T.nilable(::String), max_resolution: T.nilable(Models::Components::UpdateMediaMaxResolution), source_resolution: T.nilable(Models::Components::UpdateMediaSourceResolution), generated_subtitles: T.nilable(T::Array[Models::Components::TracksSubtitles]), is_audio_only: T.nilable(T::Boolean)).void }
68
+ sig { params(thumbnail: T.nilable(::String), id: T.nilable(::String), workspace_id: T.nilable(::String), media_quality: T.nilable(T.any(Models::Components::UpdateMediaMediaQuality, String)), status: T.nilable(T.any(Models::Components::UpdateMediaStatus, String)), mp4_support: T.nilable(T::Array[Models::Components::UpdateMediaMp4Support]), source_access: T.nilable(T::Boolean), playback_ids: T.nilable(T::Array[Models::Components::PlaybackId]), tracks: T.nilable(T::Array[T.any(Models::Components::VideoTrack, Models::Components::AudioTrack, Models::Components::SubtitleTrack)]), summary: T.nilable(Models::Components::AiSummaryRecord), chapters: T.nilable(Models::Components::AiResponseRecord), named_entities: T.nilable(Models::Components::AiResponseRecord), moderation: T.nilable(Models::Components::AiResponseRecord), subtitle_available: T.nilable(T::Boolean), optimize_audio: T.nilable(T::Boolean), duration: T.nilable(::Float), aspect_ratio: T.nilable(::String), created_at: T.nilable(::DateTime), updated_at: T.nilable(::DateTime), metadata: T.nilable(T::Hash[Symbol, ::String]), creator_id: T.nilable(::String), title: T.nilable(::String), max_resolution: T.nilable(T.any(Models::Components::UpdateMediaMaxResolution, String)), source_resolution: T.nilable(T.any(Models::Components::UpdateMediaSourceResolution, String)), generated_subtitles: T.nilable(T::Array[Models::Components::TracksSubtitles]), is_audio_only: T.nilable(T::Boolean)).void }
69
69
  def initialize(thumbnail: nil, id: nil, workspace_id: nil, media_quality: nil, status: nil, mp4_support: nil, source_access: nil, playback_ids: nil, tracks: nil, summary: nil, chapters: nil, named_entities: nil, moderation: nil, subtitle_available: nil, optimize_audio: nil, duration: nil, aspect_ratio: nil, created_at: nil, updated_at: nil, metadata: nil, creator_id: '8fa85f64-5717-4562-b3fc-2c963f66afa6', title: 'My Video Title', max_resolution: Models::Components::UpdateMediaMaxResolution::ONE_THOUSAND_AND_EIGHTYP, source_resolution: Models::Components::UpdateMediaSourceResolution::ONE_THOUSAND_AND_EIGHTYP, generated_subtitles: nil, is_audio_only: nil)
70
70
  @thumbnail = thumbnail
71
71
  @id = id
@@ -39,7 +39,7 @@ class FastpixClient::Models::Components::UpdateMedia
39
39
  def optimize_audio(); end
40
40
  def optimize_audio=(str_); end
41
41
  def duration(); end
42
- def duration=(str_); end
42
+ def duration=(float_); end
43
43
  def aspect_ratio(); end
44
44
  def aspect_ratio=(str_); end
45
45
  def created_at(); end
@@ -25,7 +25,7 @@ module FastpixClient
25
25
  # Title of the track.
26
26
  field :title, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('title') } }
27
27
 
28
- sig { params(id: T.nilable(::String), type: T.nilable(Models::Components::UpdateTrackResponseType), url: T.nilable(::String), language_code: T.nilable(::String), language_name: T.nilable(::String), title: T.nilable(::String)).void }
28
+ sig { params(id: T.nilable(::String), type: T.nilable(T.any(Models::Components::UpdateTrackResponseType, String)), url: T.nilable(::String), language_code: T.nilable(::String), language_name: T.nilable(::String), title: T.nilable(::String)).void }
29
29
  def initialize(id: nil, type: nil, url: nil, language_code: nil, language_name: nil, title: nil)
30
30
  @id = id
31
31
  @type = type
@@ -19,7 +19,7 @@ module FastpixClient
19
19
  # Restrictions applied to this playback ID.
20
20
  field :access_restrictions, Crystalline::Nilable.new(Models::Operations::GetPlaybackIdAccessRestrictions), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('accessRestrictions') } }
21
21
 
22
- sig { params(id: T.nilable(::String), access_policy: T.nilable(Models::Operations::GetPlaybackIdAccessPolicy), access_restrictions: T.nilable(Models::Operations::GetPlaybackIdAccessRestrictions)).void }
22
+ sig { params(id: T.nilable(::String), access_policy: T.nilable(T.any(Models::Operations::GetPlaybackIdAccessPolicy, String)), access_restrictions: T.nilable(Models::Operations::GetPlaybackIdAccessRestrictions)).void }
23
23
  def initialize(id: nil, access_policy: nil, access_restrictions: nil)
24
24
  @id = id
25
25
  @access_policy = access_policy
@@ -19,7 +19,7 @@ module FastpixClient
19
19
 
20
20
  field :deny, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('deny') } }
21
21
 
22
- sig { params(default_policy: T.nilable(Models::Operations::GetPlaybackIdDomainsDefaultPolicy), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
22
+ sig { params(default_policy: T.nilable(T.any(Models::Operations::GetPlaybackIdDomainsDefaultPolicy, String)), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
23
23
  def initialize(default_policy: nil, allow: nil, deny: nil)
24
24
  @default_policy = default_policy
25
25
  @allow = allow
@@ -19,7 +19,7 @@ module FastpixClient
19
19
 
20
20
  field :deny, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('deny') } }
21
21
 
22
- sig { params(default_policy: T.nilable(Models::Operations::GetPlaybackIdUserAgentsDefaultPolicy), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
22
+ sig { params(default_policy: T.nilable(T.any(Models::Operations::GetPlaybackIdUserAgentsDefaultPolicy, String)), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
23
23
  def initialize(default_policy: nil, allow: nil, deny: nil)
24
24
  @default_policy = default_policy
25
25
  @allow = allow
@@ -19,7 +19,7 @@ module FastpixClient
19
19
  # Restrictions applied to this playback ID.
20
20
  field :access_restrictions, Crystalline::Nilable.new(Models::Operations::ListPlaybackIdsAccessRestrictions), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('accessRestrictions') } }
21
21
 
22
- sig { params(id: T.nilable(::String), access_policy: T.nilable(Models::Operations::ListPlaybackIdsAccessPolicy), access_restrictions: T.nilable(Models::Operations::ListPlaybackIdsAccessRestrictions)).void }
22
+ sig { params(id: T.nilable(::String), access_policy: T.nilable(T.any(Models::Operations::ListPlaybackIdsAccessPolicy, String)), access_restrictions: T.nilable(Models::Operations::ListPlaybackIdsAccessRestrictions)).void }
23
23
  def initialize(id: nil, access_policy: nil, access_restrictions: nil)
24
24
  @id = id
25
25
  @access_policy = access_policy
@@ -19,7 +19,7 @@ module FastpixClient
19
19
 
20
20
  field :deny, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('deny') } }
21
21
 
22
- sig { params(default_policy: T.nilable(Models::Operations::ListPlaybackIdsDomainsDefaultPolicy), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
22
+ sig { params(default_policy: T.nilable(T.any(Models::Operations::ListPlaybackIdsDomainsDefaultPolicy, String)), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
23
23
  def initialize(default_policy: nil, allow: nil, deny: nil)
24
24
  @default_policy = default_policy
25
25
  @allow = allow
@@ -19,7 +19,7 @@ module FastpixClient
19
19
 
20
20
  field :deny, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('deny') } }
21
21
 
22
- sig { params(default_policy: T.nilable(Models::Operations::ListPlaybackIdsUserAgentsDefaultPolicy), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
22
+ sig { params(default_policy: T.nilable(T.any(Models::Operations::ListPlaybackIdsUserAgentsDefaultPolicy, String)), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
23
23
  def initialize(default_policy: nil, allow: nil, deny: nil)
24
24
  @default_policy = default_policy
25
25
  @allow = allow
@@ -0,0 +1,40 @@
1
+ # Generated code for FastPix API SDK.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixClient
8
+ module Models
9
+ module Operations
10
+
11
+ class UpdateLiveStreamDomainRestrictionsData
12
+ extend T::Sig
13
+ include Crystalline::MetadataFields
14
+
15
+ # Specify the fallback behavior for domains that are not listed in the allow or deny lists.
16
+ field :default_policy, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('defaultPolicy') } }
17
+ # List of domains explicitly allowed to play the media.
18
+ field :allow, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('allow') } }
19
+ # List of domains explicitly denied from accessing the media.
20
+ field :deny, Crystalline::Nilable.new(Crystalline::Array.new(::String)), { 'format_json': { 'letter_case': ::FastpixClient::Utils.field_name('deny') } }
21
+
22
+ sig { params(default_policy: T.nilable(::String), allow: T.nilable(T::Array[::String]), deny: T.nilable(T::Array[::String])).void }
23
+ def initialize(default_policy: nil, allow: nil, deny: nil)
24
+ @default_policy = default_policy
25
+ @allow = allow
26
+ @deny = deny
27
+ end
28
+
29
+ sig { params(other: T.untyped).returns(T::Boolean) }
30
+ def ==(other)
31
+ return false unless other.is_a? self.class
32
+ return false unless @default_policy == other.default_policy
33
+ return false unless @allow == other.allow
34
+ return false unless @deny == other.deny
35
+ true
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,17 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class FastpixClient::Models::Operations::UpdateLiveStreamDomainRestrictionsData
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class FastpixClient::Models::Operations::UpdateLiveStreamDomainRestrictionsData
11
+ def default_policy(); end
12
+ def default_policy=(str_); end
13
+ def allow(); end
14
+ def allow=(str_); end
15
+ def deny(); end
16
+ def deny=(str_); end
17
+ end
@@ -0,0 +1,21 @@
1
+ # Generated code for FastPix API SDK.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module FastpixClient
8
+ module Models
9
+ module Operations
10
+ # UpdateLiveStreamDomainRestrictionsDefaultPolicy - Specify the fallback behavior for domains that are not listed in the `allow` or `deny` lists.
11
+ class UpdateLiveStreamDomainRestrictionsDefaultPolicy < T::Enum
12
+
13
+
14
+ enums do
15
+ ALLOW = new('allow')
16
+ DENY = new('deny')
17
+ end
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class FastpixClient::Models::Operations::UpdateLiveStreamDomainRestrictionsDefaultPolicy
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class FastpixClient::Models::Operations::UpdateLiveStreamDomainRestrictionsDefaultPolicy
11
+ end