telnyx 5.69.0 → 5.71.0

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 (181) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +50 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/internal/util.rb +3 -1
  5. data/lib/telnyx/models/ai/assistant.rb +6 -149
  6. data/lib/telnyx/models/ai/assistant_create_params.rb +3 -42
  7. data/lib/telnyx/models/ai/assistant_update_params.rb +3 -42
  8. data/lib/telnyx/models/ai/assistants/update_assistant.rb +3 -43
  9. data/lib/telnyx/models/ai/conversation_add_message_params.rb +4 -4
  10. data/lib/telnyx/models/ai/inference_embedding.rb +3 -43
  11. data/lib/telnyx/models/ai/observability.rb +46 -0
  12. data/lib/telnyx/models/ai/observability_req.rb +46 -0
  13. data/lib/telnyx/models/book_appointment_tool.rb +31 -0
  14. data/lib/telnyx/models/book_appointment_tool_params.rb +51 -0
  15. data/lib/telnyx/models/call_assistant_request.rb +176 -0
  16. data/lib/telnyx/models/call_control_bucket_ids.rb +23 -0
  17. data/lib/telnyx/models/call_control_retrieval_tool.rb +31 -0
  18. data/lib/telnyx/models/call_dial_params.rb +34 -1
  19. data/lib/telnyx/models/calls/action_answer_params.rb +11 -1
  20. data/lib/telnyx/models/calls/action_start_ai_assistant_params.rb +6 -39
  21. data/lib/telnyx/models/calls/action_transfer_params.rb +24 -1
  22. data/lib/telnyx/models/check_availability_tool.rb +31 -0
  23. data/lib/telnyx/models/check_availability_tool_params.rb +31 -0
  24. data/lib/telnyx/models/enterprise_create_params.rb +1 -1
  25. data/lib/telnyx/models/enterprise_public.rb +1 -1
  26. data/lib/telnyx/models/enterprise_update_params.rb +1 -1
  27. data/lib/telnyx/models/enterprises/reputation/{number_create_params.rb → number_associate_params.rb} +2 -2
  28. data/lib/telnyx/models/enterprises/reputation/{number_create_response.rb → number_associate_response.rb} +5 -5
  29. data/lib/telnyx/models/enterprises/reputation/{number_delete_params.rb → number_disassociate_params.rb} +2 -2
  30. data/lib/telnyx/models/enterprises/{reputation_list_params.rb → reputation_disable_params.rb} +2 -2
  31. data/lib/telnyx/models/enterprises/{reputation_create_params.rb → reputation_enable_params.rb} +6 -6
  32. data/lib/telnyx/models/enterprises/{reputation_create_response.rb → reputation_enable_response.rb} +2 -2
  33. data/lib/telnyx/models/enterprises/{reputation_delete_all_params.rb → reputation_retrieve_params.rb} +2 -2
  34. data/lib/telnyx/models/enterprises/{reputation_list_response.rb → reputation_retrieve_response.rb} +2 -2
  35. data/lib/telnyx/models/porting_orders/phone_number_block_list_params.rb +9 -9
  36. data/lib/telnyx/models/pronunciation_dict_alias_item.rb +51 -0
  37. data/lib/telnyx/models/pronunciation_dict_create_params.rb +5 -93
  38. data/lib/telnyx/models/pronunciation_dict_create_response.rb +3 -191
  39. data/lib/telnyx/models/pronunciation_dict_data.rb +101 -0
  40. data/lib/telnyx/models/pronunciation_dict_phoneme_item.rb +71 -0
  41. data/lib/telnyx/models/pronunciation_dict_retrieve_response.rb +3 -191
  42. data/lib/telnyx/models/pronunciation_dict_update_params.rb +5 -93
  43. data/lib/telnyx/models/pronunciation_dict_update_response.rb +3 -191
  44. data/lib/telnyx/models/texml/accounts/call_calls_params.rb +203 -191
  45. data/lib/telnyx/models/voice_clone_create_from_design_params.rb +3 -3
  46. data/lib/telnyx/models/voice_clone_create_from_upload_params.rb +371 -71
  47. data/lib/telnyx/models/voice_clone_create_params.rb +161 -51
  48. data/lib/telnyx/models/voice_clone_data.rb +51 -4
  49. data/lib/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_params.rb +26 -0
  50. data/lib/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_response.rb +54 -0
  51. data/lib/telnyx/models.rb +20 -0
  52. data/lib/telnyx/resources/ai/assistants/versions.rb +1 -1
  53. data/lib/telnyx/resources/ai/assistants.rb +2 -2
  54. data/lib/telnyx/resources/calls/actions.rb +7 -3
  55. data/lib/telnyx/resources/calls.rb +5 -1
  56. data/lib/telnyx/resources/enterprises/reputation/numbers.rb +42 -42
  57. data/lib/telnyx/resources/enterprises/reputation.rb +61 -61
  58. data/lib/telnyx/resources/pronunciation_dicts.rb +4 -4
  59. data/lib/telnyx/resources/texml/accounts/calls.rb +3 -3
  60. data/lib/telnyx/resources/voice_clones.rb +7 -27
  61. data/lib/telnyx/resources/whatsapp/phone_numbers/profile/photo.rb +20 -0
  62. data/lib/telnyx/version.rb +1 -1
  63. data/lib/telnyx.rb +22 -9
  64. data/rbi/telnyx/models/ai/assistant.rbi +15 -329
  65. data/rbi/telnyx/models/ai/assistant_create_params.rbi +4 -121
  66. data/rbi/telnyx/models/ai/assistant_update_params.rbi +4 -121
  67. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +4 -123
  68. data/rbi/telnyx/models/ai/conversation_add_message_params.rbi +5 -5
  69. data/rbi/telnyx/models/ai/inference_embedding.rbi +4 -123
  70. data/rbi/telnyx/models/ai/observability.rbi +90 -0
  71. data/rbi/telnyx/models/ai/observability_req.rbi +92 -0
  72. data/rbi/telnyx/models/book_appointment_tool.rbi +65 -0
  73. data/rbi/telnyx/models/book_appointment_tool_params.rbi +83 -0
  74. data/rbi/telnyx/models/call_assistant_request.rbi +322 -0
  75. data/rbi/telnyx/models/call_control_bucket_ids.rbi +42 -0
  76. data/rbi/telnyx/models/call_control_retrieval_tool.rbi +63 -0
  77. data/rbi/telnyx/models/call_dial_params.rbi +52 -0
  78. data/rbi/telnyx/models/calls/action_answer_params.rbi +15 -0
  79. data/rbi/telnyx/models/calls/action_start_ai_assistant_params.rbi +10 -77
  80. data/rbi/telnyx/models/calls/action_transfer_params.rbi +57 -0
  81. data/rbi/telnyx/models/check_availability_tool.rbi +67 -0
  82. data/rbi/telnyx/models/check_availability_tool_params.rbi +45 -0
  83. data/rbi/telnyx/models/enterprise_create_params.rbi +1 -1
  84. data/rbi/telnyx/models/enterprise_public.rbi +1 -1
  85. data/rbi/telnyx/models/enterprise_update_params.rbi +1 -1
  86. data/rbi/telnyx/models/enterprises/reputation/{number_create_params.rbi → number_associate_params.rbi} +2 -2
  87. data/rbi/telnyx/models/enterprises/reputation/{number_create_response.rbi → number_associate_response.rbi} +7 -7
  88. data/rbi/telnyx/models/enterprises/reputation/{number_delete_params.rbi → number_disassociate_params.rbi} +2 -2
  89. data/rbi/telnyx/models/enterprises/{reputation_list_params.rbi → reputation_disable_params.rbi} +2 -2
  90. data/rbi/telnyx/models/enterprises/{reputation_create_params.rbi → reputation_enable_params.rbi} +14 -14
  91. data/rbi/telnyx/models/enterprises/{reputation_create_response.rbi → reputation_enable_response.rbi} +2 -2
  92. data/rbi/telnyx/models/enterprises/{reputation_delete_all_params.rbi → reputation_retrieve_params.rbi} +2 -2
  93. data/rbi/telnyx/models/enterprises/{reputation_list_response.rbi → reputation_retrieve_response.rbi} +2 -2
  94. data/rbi/telnyx/models/porting_orders/phone_number_block_list_params.rbi +34 -34
  95. data/rbi/telnyx/models/pronunciation_dict_alias_item.rbi +79 -0
  96. data/rbi/telnyx/models/pronunciation_dict_create_params.rbi +8 -154
  97. data/rbi/telnyx/models/pronunciation_dict_create_response.rbi +6 -366
  98. data/rbi/telnyx/models/pronunciation_dict_data.rbi +186 -0
  99. data/rbi/telnyx/models/pronunciation_dict_phoneme_item.rbi +117 -0
  100. data/rbi/telnyx/models/pronunciation_dict_retrieve_response.rbi +6 -366
  101. data/rbi/telnyx/models/pronunciation_dict_update_params.rbi +10 -156
  102. data/rbi/telnyx/models/pronunciation_dict_update_response.rbi +6 -366
  103. data/rbi/telnyx/models/texml/accounts/call_calls_params.rbi +391 -403
  104. data/rbi/telnyx/models/voice_clone_create_from_design_params.rbi +10 -10
  105. data/rbi/telnyx/models/voice_clone_create_from_upload_params.rbi +711 -134
  106. data/rbi/telnyx/models/voice_clone_create_params.rbi +345 -79
  107. data/rbi/telnyx/models/voice_clone_data.rbi +77 -4
  108. data/rbi/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_params.rbi +47 -0
  109. data/rbi/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_response.rbi +118 -0
  110. data/rbi/telnyx/models.rbi +20 -0
  111. data/rbi/telnyx/resources/ai/assistants/versions.rbi +1 -2
  112. data/rbi/telnyx/resources/ai/assistants.rbi +2 -4
  113. data/rbi/telnyx/resources/calls/actions.rbi +14 -3
  114. data/rbi/telnyx/resources/calls.rbi +10 -0
  115. data/rbi/telnyx/resources/enterprises/reputation/numbers.rbi +34 -34
  116. data/rbi/telnyx/resources/enterprises/reputation.rbi +44 -44
  117. data/rbi/telnyx/resources/pronunciation_dicts.rbi +5 -7
  118. data/rbi/telnyx/resources/texml/accounts/calls.rbi +5 -5
  119. data/rbi/telnyx/resources/voice_clones.rbi +17 -41
  120. data/rbi/telnyx/resources/whatsapp/phone_numbers/profile/photo.rbi +16 -0
  121. data/sig/telnyx/models/ai/assistant.rbs +3 -142
  122. data/sig/telnyx/models/ai/assistant_create_params.rbs +6 -59
  123. data/sig/telnyx/models/ai/assistant_update_params.rbs +6 -59
  124. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +6 -59
  125. data/sig/telnyx/models/ai/conversation_add_message_params.rbs +5 -5
  126. data/sig/telnyx/models/ai/inference_embedding.rbs +6 -59
  127. data/sig/telnyx/models/ai/observability.rbs +58 -0
  128. data/sig/telnyx/models/ai/observability_req.rbs +58 -0
  129. data/sig/telnyx/models/book_appointment_tool.rbs +35 -0
  130. data/sig/telnyx/models/book_appointment_tool_params.rbs +39 -0
  131. data/sig/telnyx/models/call_assistant_request.rbs +132 -0
  132. data/sig/telnyx/models/call_control_bucket_ids.rbs +21 -0
  133. data/sig/telnyx/models/call_control_retrieval_tool.rbs +35 -0
  134. data/sig/telnyx/models/call_dial_params.rbs +29 -0
  135. data/sig/telnyx/models/calls/action_answer_params.rbs +9 -0
  136. data/sig/telnyx/models/calls/action_start_ai_assistant_params.rbs +6 -35
  137. data/sig/telnyx/models/calls/action_transfer_params.rbs +20 -0
  138. data/sig/telnyx/models/check_availability_tool.rbs +35 -0
  139. data/sig/telnyx/models/check_availability_tool_params.rbs +16 -0
  140. data/sig/telnyx/models/enterprise_create_params.rbs +1 -1
  141. data/sig/telnyx/models/enterprise_public.rbs +1 -1
  142. data/sig/telnyx/models/enterprise_update_params.rbs +1 -1
  143. data/sig/telnyx/models/enterprises/reputation/{number_create_params.rbs → number_associate_params.rbs} +2 -2
  144. data/sig/telnyx/models/enterprises/reputation/{number_create_response.rbs → number_associate_response.rbs} +8 -8
  145. data/sig/telnyx/models/enterprises/reputation/{number_delete_params.rbs → number_disassociate_params.rbs} +2 -2
  146. data/sig/telnyx/models/enterprises/{reputation_list_params.rbs → reputation_disable_params.rbs} +2 -2
  147. data/sig/telnyx/models/enterprises/{reputation_create_params.rbs → reputation_enable_params.rbs} +9 -9
  148. data/sig/telnyx/models/enterprises/{reputation_create_response.rbs → reputation_enable_response.rbs} +2 -2
  149. data/sig/telnyx/models/enterprises/{reputation_delete_all_params.rbs → reputation_retrieve_params.rbs} +2 -2
  150. data/sig/telnyx/models/enterprises/{reputation_list_response.rbs → reputation_retrieve_response.rbs} +2 -2
  151. data/sig/telnyx/models/porting_orders/phone_number_block_list_params.rbs +9 -9
  152. data/sig/telnyx/models/pronunciation_dict_alias_item.rbs +40 -0
  153. data/sig/telnyx/models/pronunciation_dict_create_params.rbs +2 -58
  154. data/sig/telnyx/models/pronunciation_dict_create_response.rbs +6 -155
  155. data/sig/telnyx/models/pronunciation_dict_data.rbs +88 -0
  156. data/sig/telnyx/models/pronunciation_dict_phoneme_item.rbs +55 -0
  157. data/sig/telnyx/models/pronunciation_dict_retrieve_response.rbs +6 -155
  158. data/sig/telnyx/models/pronunciation_dict_update_params.rbs +2 -58
  159. data/sig/telnyx/models/pronunciation_dict_update_response.rbs +6 -155
  160. data/sig/telnyx/models/texml/accounts/call_calls_params.rbs +317 -325
  161. data/sig/telnyx/models/voice_clone_create_from_design_params.rbs +7 -7
  162. data/sig/telnyx/models/voice_clone_create_from_upload_params.rbs +269 -56
  163. data/sig/telnyx/models/voice_clone_create_params.rbs +129 -44
  164. data/sig/telnyx/models/voice_clone_data.rbs +43 -0
  165. data/sig/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_params.rbs +30 -0
  166. data/sig/telnyx/models/whatsapp/phone_numbers/profile/photo_retrieve_response.rbs +63 -0
  167. data/sig/telnyx/models.rbs +20 -0
  168. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -1
  169. data/sig/telnyx/resources/ai/assistants.rbs +2 -2
  170. data/sig/telnyx/resources/calls/actions.rbs +3 -1
  171. data/sig/telnyx/resources/calls.rbs +2 -0
  172. data/sig/telnyx/resources/enterprises/reputation/numbers.rbs +7 -7
  173. data/sig/telnyx/resources/enterprises/reputation.rbs +8 -8
  174. data/sig/telnyx/resources/pronunciation_dicts.rbs +1 -1
  175. data/sig/telnyx/resources/texml/accounts/calls.rbs +1 -1
  176. data/sig/telnyx/resources/voice_clones.rbs +2 -12
  177. data/sig/telnyx/resources/whatsapp/phone_numbers/profile/photo.rbs +5 -0
  178. metadata +68 -29
  179. data/lib/telnyx/models/pronunciation_dict_list_response.rb +0 -190
  180. data/rbi/telnyx/models/pronunciation_dict_list_response.rbi +0 -353
  181. data/sig/telnyx/models/pronunciation_dict_list_response.rbs +0 -144
@@ -14,98 +14,34 @@ module Telnyx
14
14
  )
15
15
  end
16
16
 
17
- # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
18
- # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
19
- # size: 5MB for Telnyx, 20MB for Minimax.
20
- sig { returns(Telnyx::Internal::FileInput) }
21
- attr_accessor :audio_file
22
-
23
- # ISO 639-1 language code (e.g. `en`, `fr`) or `auto` for automatic detection.
24
- sig { returns(String) }
25
- attr_accessor :language
26
-
27
- # Name for the voice clone.
28
- sig { returns(String) }
29
- attr_accessor :name
30
-
31
- # Gender of the voice clone.
17
+ # Multipart form data for creating a voice clone from a direct audio upload.
18
+ # Maximum file size: 5MB for Telnyx, 20MB for Minimax.
32
19
  sig do
33
20
  returns(
34
- T.nilable(Telnyx::VoiceCloneCreateFromUploadParams::Gender::OrSymbol)
35
- )
36
- end
37
- attr_reader :gender
38
-
39
- sig do
40
- params(
41
- gender: Telnyx::VoiceCloneCreateFromUploadParams::Gender::OrSymbol
42
- ).void
43
- end
44
- attr_writer :gender
45
-
46
- # Optional custom label describing the voice style. If omitted, falls back to the
47
- # source design's prompt text.
48
- sig { returns(T.nilable(String)) }
49
- attr_reader :label
50
-
51
- sig { params(label: String).void }
52
- attr_writer :label
53
-
54
- # Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
55
- sig do
56
- returns(
57
- T.nilable(
58
- Telnyx::VoiceCloneCreateFromUploadParams::Provider::OrSymbol
21
+ T.any(
22
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone,
23
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone,
24
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone
59
25
  )
60
26
  )
61
27
  end
62
- attr_reader :provider
28
+ attr_accessor :upload_params
63
29
 
64
30
  sig do
65
31
  params(
66
- provider: Telnyx::VoiceCloneCreateFromUploadParams::Provider::OrSymbol
67
- ).void
68
- end
69
- attr_writer :provider
70
-
71
- # Optional transcript of the audio file. Providing this improves clone quality.
72
- sig { returns(T.nilable(String)) }
73
- attr_reader :ref_text
74
-
75
- sig { params(ref_text: String).void }
76
- attr_writer :ref_text
77
-
78
- sig do
79
- params(
80
- audio_file: Telnyx::Internal::FileInput,
81
- language: String,
82
- name: String,
83
- gender: Telnyx::VoiceCloneCreateFromUploadParams::Gender::OrSymbol,
84
- label: String,
85
- provider:
86
- Telnyx::VoiceCloneCreateFromUploadParams::Provider::OrSymbol,
87
- ref_text: String,
32
+ upload_params:
33
+ T.any(
34
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::OrHash,
35
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::OrHash,
36
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::OrHash
37
+ ),
88
38
  request_options: Telnyx::RequestOptions::OrHash
89
39
  ).returns(T.attached_class)
90
40
  end
91
41
  def self.new(
92
- # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
93
- # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
94
- # size: 5MB for Telnyx, 20MB for Minimax.
95
- audio_file:,
96
- # ISO 639-1 language code (e.g. `en`, `fr`) or `auto` for automatic detection.
97
- language:,
98
- # Name for the voice clone.
99
- name:,
100
- # Gender of the voice clone.
101
- gender: nil,
102
- # Optional custom label describing the voice style. If omitted, falls back to the
103
- # source design's prompt text.
104
- label: nil,
105
- # Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
106
- provider: nil,
107
- # Optional transcript of the audio file. Providing this improves clone quality.
108
- ref_text: nil,
42
+ # Multipart form data for creating a voice clone from a direct audio upload.
43
+ # Maximum file size: 5MB for Telnyx, 20MB for Minimax.
44
+ upload_params:,
109
45
  request_options: {}
110
46
  )
111
47
  end
@@ -113,14 +49,12 @@ module Telnyx
113
49
  sig do
114
50
  override.returns(
115
51
  {
116
- audio_file: Telnyx::Internal::FileInput,
117
- language: String,
118
- name: String,
119
- gender: Telnyx::VoiceCloneCreateFromUploadParams::Gender::OrSymbol,
120
- label: String,
121
- provider:
122
- Telnyx::VoiceCloneCreateFromUploadParams::Provider::OrSymbol,
123
- ref_text: String,
52
+ upload_params:
53
+ T.any(
54
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone,
55
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone,
56
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone
57
+ ),
124
58
  request_options: Telnyx::RequestOptions
125
59
  }
126
60
  )
@@ -128,72 +62,715 @@ module Telnyx
128
62
  def to_hash
129
63
  end
130
64
 
131
- # Gender of the voice clone.
132
- module Gender
133
- extend Telnyx::Internal::Type::Enum
65
+ # Multipart form data for creating a voice clone from a direct audio upload.
66
+ # Maximum file size: 5MB for Telnyx, 20MB for Minimax.
67
+ module UploadParams
68
+ extend Telnyx::Internal::Type::Union
134
69
 
135
- TaggedSymbol =
70
+ Variants =
136
71
  T.type_alias do
137
- T.all(Symbol, Telnyx::VoiceCloneCreateFromUploadParams::Gender)
72
+ T.any(
73
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone,
74
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone,
75
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone
76
+ )
138
77
  end
139
- OrSymbol = T.type_alias { T.any(Symbol, String) }
140
78
 
141
- MALE =
142
- T.let(
143
- :male,
144
- Telnyx::VoiceCloneCreateFromUploadParams::Gender::TaggedSymbol
145
- )
146
- FEMALE =
147
- T.let(
148
- :female,
149
- Telnyx::VoiceCloneCreateFromUploadParams::Gender::TaggedSymbol
150
- )
151
- NEUTRAL =
152
- T.let(
153
- :neutral,
154
- Telnyx::VoiceCloneCreateFromUploadParams::Gender::TaggedSymbol
155
- )
79
+ class TelnyxQwen3TtsClone < Telnyx::Internal::Type::BaseModel
80
+ OrHash =
81
+ T.type_alias do
82
+ T.any(
83
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone,
84
+ Telnyx::Internal::AnyHash
85
+ )
86
+ end
156
87
 
157
- sig do
158
- override.returns(
159
- T::Array[
160
- Telnyx::VoiceCloneCreateFromUploadParams::Gender::TaggedSymbol
161
- ]
88
+ # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
89
+ # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
90
+ # size: 5MB.
91
+ sig { returns(Telnyx::Internal::FileInput) }
92
+ attr_accessor :audio_file
93
+
94
+ # Gender of the voice clone.
95
+ sig do
96
+ returns(
97
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::OrSymbol
98
+ )
99
+ end
100
+ attr_accessor :gender
101
+
102
+ # ISO 639-1 language code from the Qwen language set.
103
+ sig { returns(String) }
104
+ attr_accessor :language
105
+
106
+ # Name for the voice clone.
107
+ sig { returns(String) }
108
+ attr_accessor :name
109
+
110
+ # Voice synthesis provider. Must be `telnyx`.
111
+ sig do
112
+ returns(
113
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::OrSymbol
114
+ )
115
+ end
116
+ attr_accessor :provider
117
+
118
+ # Optional custom label describing the voice style.
119
+ sig { returns(T.nilable(String)) }
120
+ attr_reader :label
121
+
122
+ sig { params(label: String).void }
123
+ attr_writer :label
124
+
125
+ # TTS model identifier. Nullable/omittable — defaults to Qwen3TTS.
126
+ sig do
127
+ returns(
128
+ T.nilable(
129
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID::OrSymbol
130
+ )
131
+ )
132
+ end
133
+ attr_accessor :model_id
134
+
135
+ # Optional transcript of the audio file. Providing this improves clone quality.
136
+ sig { returns(T.nilable(String)) }
137
+ attr_reader :ref_text
138
+
139
+ sig { params(ref_text: String).void }
140
+ attr_writer :ref_text
141
+
142
+ # Upload-based voice clone using the Telnyx Qwen3TTS model (default).
143
+ sig do
144
+ params(
145
+ audio_file: Telnyx::Internal::FileInput,
146
+ gender:
147
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::OrSymbol,
148
+ language: String,
149
+ name: String,
150
+ provider:
151
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::OrSymbol,
152
+ label: String,
153
+ model_id:
154
+ T.nilable(
155
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID::OrSymbol
156
+ ),
157
+ ref_text: String
158
+ ).returns(T.attached_class)
159
+ end
160
+ def self.new(
161
+ # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
162
+ # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
163
+ # size: 5MB.
164
+ audio_file:,
165
+ # Gender of the voice clone.
166
+ gender:,
167
+ # ISO 639-1 language code from the Qwen language set.
168
+ language:,
169
+ # Name for the voice clone.
170
+ name:,
171
+ # Voice synthesis provider. Must be `telnyx`.
172
+ provider:,
173
+ # Optional custom label describing the voice style.
174
+ label: nil,
175
+ # TTS model identifier. Nullable/omittable — defaults to Qwen3TTS.
176
+ model_id: nil,
177
+ # Optional transcript of the audio file. Providing this improves clone quality.
178
+ ref_text: nil
162
179
  )
180
+ end
181
+
182
+ sig do
183
+ override.returns(
184
+ {
185
+ audio_file: Telnyx::Internal::FileInput,
186
+ gender:
187
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::OrSymbol,
188
+ language: String,
189
+ name: String,
190
+ provider:
191
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::OrSymbol,
192
+ label: String,
193
+ model_id:
194
+ T.nilable(
195
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID::OrSymbol
196
+ ),
197
+ ref_text: String
198
+ }
199
+ )
200
+ end
201
+ def to_hash
202
+ end
203
+
204
+ # Gender of the voice clone.
205
+ module Gender
206
+ extend Telnyx::Internal::Type::Enum
207
+
208
+ TaggedSymbol =
209
+ T.type_alias do
210
+ T.all(
211
+ Symbol,
212
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender
213
+ )
214
+ end
215
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
216
+
217
+ MALE =
218
+ T.let(
219
+ :male,
220
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::TaggedSymbol
221
+ )
222
+ FEMALE =
223
+ T.let(
224
+ :female,
225
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::TaggedSymbol
226
+ )
227
+ NEUTRAL =
228
+ T.let(
229
+ :neutral,
230
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::TaggedSymbol
231
+ )
232
+
233
+ sig do
234
+ override.returns(
235
+ T::Array[
236
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Gender::TaggedSymbol
237
+ ]
238
+ )
239
+ end
240
+ def self.values
241
+ end
242
+ end
243
+
244
+ # Voice synthesis provider. Must be `telnyx`.
245
+ module Provider
246
+ extend Telnyx::Internal::Type::Enum
247
+
248
+ TaggedSymbol =
249
+ T.type_alias do
250
+ T.all(
251
+ Symbol,
252
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider
253
+ )
254
+ end
255
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
256
+
257
+ TELNYX =
258
+ T.let(
259
+ :telnyx,
260
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::TaggedSymbol
261
+ )
262
+ MINIMAX =
263
+ T.let(
264
+ :minimax,
265
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::TaggedSymbol
266
+ )
267
+
268
+ sig do
269
+ override.returns(
270
+ T::Array[
271
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::Provider::TaggedSymbol
272
+ ]
273
+ )
274
+ end
275
+ def self.values
276
+ end
277
+ end
278
+
279
+ # TTS model identifier. Nullable/omittable — defaults to Qwen3TTS.
280
+ module ModelID
281
+ extend Telnyx::Internal::Type::Enum
282
+
283
+ TaggedSymbol =
284
+ T.type_alias do
285
+ T.all(
286
+ Symbol,
287
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID
288
+ )
289
+ end
290
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
291
+
292
+ QWEN3_TTS =
293
+ T.let(
294
+ :Qwen3TTS,
295
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID::TaggedSymbol
296
+ )
297
+
298
+ sig do
299
+ override.returns(
300
+ T::Array[
301
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxQwen3TtsClone::ModelID::TaggedSymbol
302
+ ]
303
+ )
304
+ end
305
+ def self.values
306
+ end
307
+ end
163
308
  end
164
- def self.values
165
- end
166
- end
167
309
 
168
- # Voice synthesis provider. Case-insensitive. Defaults to `telnyx`.
169
- module Provider
170
- extend Telnyx::Internal::Type::Enum
310
+ class TelnyxUltraClone < Telnyx::Internal::Type::BaseModel
311
+ OrHash =
312
+ T.type_alias do
313
+ T.any(
314
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone,
315
+ Telnyx::Internal::AnyHash
316
+ )
317
+ end
171
318
 
172
- TaggedSymbol =
173
- T.type_alias do
174
- T.all(Symbol, Telnyx::VoiceCloneCreateFromUploadParams::Provider)
319
+ # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
320
+ # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
321
+ # size: 5MB.
322
+ sig { returns(Telnyx::Internal::FileInput) }
323
+ attr_accessor :audio_file
324
+
325
+ # Gender of the voice clone.
326
+ sig do
327
+ returns(
328
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::OrSymbol
329
+ )
330
+ end
331
+ attr_accessor :gender
332
+
333
+ # ISO 639-1 language code from the Ultra language set (40 languages).
334
+ sig { returns(String) }
335
+ attr_accessor :language
336
+
337
+ # TTS model identifier. Must be `Ultra`.
338
+ sig do
339
+ returns(
340
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID::OrSymbol
341
+ )
342
+ end
343
+ attr_accessor :model_id
344
+
345
+ # Name for the voice clone.
346
+ sig { returns(String) }
347
+ attr_accessor :name
348
+
349
+ # Voice synthesis provider. Must be `telnyx`.
350
+ sig do
351
+ returns(
352
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::OrSymbol
353
+ )
175
354
  end
176
- OrSymbol = T.type_alias { T.any(Symbol, String) }
355
+ attr_accessor :provider
356
+
357
+ # Optional custom label describing the voice style.
358
+ sig { returns(T.nilable(String)) }
359
+ attr_reader :label
360
+
361
+ sig { params(label: String).void }
362
+ attr_writer :label
363
+
364
+ # Optional transcript of the audio file. Providing this improves clone quality.
365
+ sig { returns(T.nilable(String)) }
366
+ attr_reader :ref_text
367
+
368
+ sig { params(ref_text: String).void }
369
+ attr_writer :ref_text
177
370
 
178
- TELNYX =
179
- T.let(
180
- :telnyx,
181
- Telnyx::VoiceCloneCreateFromUploadParams::Provider::TaggedSymbol
371
+ # Upload-based voice clone using the Telnyx Ultra model.
372
+ sig do
373
+ params(
374
+ audio_file: Telnyx::Internal::FileInput,
375
+ gender:
376
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::OrSymbol,
377
+ language: String,
378
+ model_id:
379
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID::OrSymbol,
380
+ name: String,
381
+ provider:
382
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::OrSymbol,
383
+ label: String,
384
+ ref_text: String
385
+ ).returns(T.attached_class)
386
+ end
387
+ def self.new(
388
+ # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
389
+ # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
390
+ # size: 5MB.
391
+ audio_file:,
392
+ # Gender of the voice clone.
393
+ gender:,
394
+ # ISO 639-1 language code from the Ultra language set (40 languages).
395
+ language:,
396
+ # TTS model identifier. Must be `Ultra`.
397
+ model_id:,
398
+ # Name for the voice clone.
399
+ name:,
400
+ # Voice synthesis provider. Must be `telnyx`.
401
+ provider:,
402
+ # Optional custom label describing the voice style.
403
+ label: nil,
404
+ # Optional transcript of the audio file. Providing this improves clone quality.
405
+ ref_text: nil
182
406
  )
183
- MINIMAX =
184
- T.let(
185
- :minimax,
186
- Telnyx::VoiceCloneCreateFromUploadParams::Provider::TaggedSymbol
407
+ end
408
+
409
+ sig do
410
+ override.returns(
411
+ {
412
+ audio_file: Telnyx::Internal::FileInput,
413
+ gender:
414
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::OrSymbol,
415
+ language: String,
416
+ model_id:
417
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID::OrSymbol,
418
+ name: String,
419
+ provider:
420
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::OrSymbol,
421
+ label: String,
422
+ ref_text: String
423
+ }
424
+ )
425
+ end
426
+ def to_hash
427
+ end
428
+
429
+ # Gender of the voice clone.
430
+ module Gender
431
+ extend Telnyx::Internal::Type::Enum
432
+
433
+ TaggedSymbol =
434
+ T.type_alias do
435
+ T.all(
436
+ Symbol,
437
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender
438
+ )
439
+ end
440
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
441
+
442
+ MALE =
443
+ T.let(
444
+ :male,
445
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::TaggedSymbol
446
+ )
447
+ FEMALE =
448
+ T.let(
449
+ :female,
450
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::TaggedSymbol
451
+ )
452
+ NEUTRAL =
453
+ T.let(
454
+ :neutral,
455
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::TaggedSymbol
456
+ )
457
+
458
+ sig do
459
+ override.returns(
460
+ T::Array[
461
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Gender::TaggedSymbol
462
+ ]
463
+ )
464
+ end
465
+ def self.values
466
+ end
467
+ end
468
+
469
+ # TTS model identifier. Must be `Ultra`.
470
+ module ModelID
471
+ extend Telnyx::Internal::Type::Enum
472
+
473
+ TaggedSymbol =
474
+ T.type_alias do
475
+ T.all(
476
+ Symbol,
477
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID
478
+ )
479
+ end
480
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
481
+
482
+ ULTRA =
483
+ T.let(
484
+ :Ultra,
485
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID::TaggedSymbol
486
+ )
487
+
488
+ sig do
489
+ override.returns(
490
+ T::Array[
491
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::ModelID::TaggedSymbol
492
+ ]
493
+ )
494
+ end
495
+ def self.values
496
+ end
497
+ end
498
+
499
+ # Voice synthesis provider. Must be `telnyx`.
500
+ module Provider
501
+ extend Telnyx::Internal::Type::Enum
502
+
503
+ TaggedSymbol =
504
+ T.type_alias do
505
+ T.all(
506
+ Symbol,
507
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider
508
+ )
509
+ end
510
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
511
+
512
+ TELNYX =
513
+ T.let(
514
+ :telnyx,
515
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::TaggedSymbol
516
+ )
517
+ MINIMAX =
518
+ T.let(
519
+ :minimax,
520
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::TaggedSymbol
521
+ )
522
+
523
+ sig do
524
+ override.returns(
525
+ T::Array[
526
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::TelnyxUltraClone::Provider::TaggedSymbol
527
+ ]
528
+ )
529
+ end
530
+ def self.values
531
+ end
532
+ end
533
+ end
534
+
535
+ class MinimaxClone < Telnyx::Internal::Type::BaseModel
536
+ OrHash =
537
+ T.type_alias do
538
+ T.any(
539
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone,
540
+ Telnyx::Internal::AnyHash
541
+ )
542
+ end
543
+
544
+ # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
545
+ # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
546
+ # size: 20MB.
547
+ sig { returns(Telnyx::Internal::FileInput) }
548
+ attr_accessor :audio_file
549
+
550
+ # Gender of the voice clone.
551
+ sig do
552
+ returns(
553
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::OrSymbol
554
+ )
555
+ end
556
+ attr_accessor :gender
557
+
558
+ # ISO 639-1 language code from the Minimax language set.
559
+ sig { returns(String) }
560
+ attr_accessor :language
561
+
562
+ # Name for the voice clone.
563
+ sig { returns(String) }
564
+ attr_accessor :name
565
+
566
+ # Voice synthesis provider. Must be `minimax`.
567
+ sig do
568
+ returns(
569
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::OrSymbol
570
+ )
571
+ end
572
+ attr_accessor :provider
573
+
574
+ # Optional custom label describing the voice style.
575
+ sig { returns(T.nilable(String)) }
576
+ attr_reader :label
577
+
578
+ sig { params(label: String).void }
579
+ attr_writer :label
580
+
581
+ # TTS model identifier. Nullable — defaults to speech-2.8-turbo.
582
+ sig do
583
+ returns(
584
+ T.nilable(
585
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID::OrSymbol
586
+ )
587
+ )
588
+ end
589
+ attr_accessor :model_id
590
+
591
+ # Optional transcript of the audio file. Providing this improves clone quality.
592
+ sig { returns(T.nilable(String)) }
593
+ attr_reader :ref_text
594
+
595
+ sig { params(ref_text: String).void }
596
+ attr_writer :ref_text
597
+
598
+ # Upload-based voice clone using the Minimax provider.
599
+ sig do
600
+ params(
601
+ audio_file: Telnyx::Internal::FileInput,
602
+ gender:
603
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::OrSymbol,
604
+ language: String,
605
+ name: String,
606
+ provider:
607
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::OrSymbol,
608
+ label: String,
609
+ model_id:
610
+ T.nilable(
611
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID::OrSymbol
612
+ ),
613
+ ref_text: String
614
+ ).returns(T.attached_class)
615
+ end
616
+ def self.new(
617
+ # Audio file to clone the voice from. Supported formats: WAV, MP3, FLAC, OGG, M4A.
618
+ # For best quality, provide 5–10 seconds of clear, uninterrupted speech. Maximum
619
+ # size: 20MB.
620
+ audio_file:,
621
+ # Gender of the voice clone.
622
+ gender:,
623
+ # ISO 639-1 language code from the Minimax language set.
624
+ language:,
625
+ # Name for the voice clone.
626
+ name:,
627
+ # Voice synthesis provider. Must be `minimax`.
628
+ provider:,
629
+ # Optional custom label describing the voice style.
630
+ label: nil,
631
+ # TTS model identifier. Nullable — defaults to speech-2.8-turbo.
632
+ model_id: nil,
633
+ # Optional transcript of the audio file. Providing this improves clone quality.
634
+ ref_text: nil
187
635
  )
636
+ end
637
+
638
+ sig do
639
+ override.returns(
640
+ {
641
+ audio_file: Telnyx::Internal::FileInput,
642
+ gender:
643
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::OrSymbol,
644
+ language: String,
645
+ name: String,
646
+ provider:
647
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::OrSymbol,
648
+ label: String,
649
+ model_id:
650
+ T.nilable(
651
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID::OrSymbol
652
+ ),
653
+ ref_text: String
654
+ }
655
+ )
656
+ end
657
+ def to_hash
658
+ end
659
+
660
+ # Gender of the voice clone.
661
+ module Gender
662
+ extend Telnyx::Internal::Type::Enum
663
+
664
+ TaggedSymbol =
665
+ T.type_alias do
666
+ T.all(
667
+ Symbol,
668
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender
669
+ )
670
+ end
671
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
672
+
673
+ MALE =
674
+ T.let(
675
+ :male,
676
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::TaggedSymbol
677
+ )
678
+ FEMALE =
679
+ T.let(
680
+ :female,
681
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::TaggedSymbol
682
+ )
683
+ NEUTRAL =
684
+ T.let(
685
+ :neutral,
686
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::TaggedSymbol
687
+ )
688
+
689
+ sig do
690
+ override.returns(
691
+ T::Array[
692
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Gender::TaggedSymbol
693
+ ]
694
+ )
695
+ end
696
+ def self.values
697
+ end
698
+ end
699
+
700
+ # Voice synthesis provider. Must be `minimax`.
701
+ module Provider
702
+ extend Telnyx::Internal::Type::Enum
703
+
704
+ TaggedSymbol =
705
+ T.type_alias do
706
+ T.all(
707
+ Symbol,
708
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider
709
+ )
710
+ end
711
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
712
+
713
+ TELNYX =
714
+ T.let(
715
+ :telnyx,
716
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::TaggedSymbol
717
+ )
718
+ MINIMAX =
719
+ T.let(
720
+ :minimax,
721
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::TaggedSymbol
722
+ )
723
+
724
+ sig do
725
+ override.returns(
726
+ T::Array[
727
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::Provider::TaggedSymbol
728
+ ]
729
+ )
730
+ end
731
+ def self.values
732
+ end
733
+ end
734
+
735
+ # TTS model identifier. Nullable — defaults to speech-2.8-turbo.
736
+ module ModelID
737
+ extend Telnyx::Internal::Type::Enum
738
+
739
+ TaggedSymbol =
740
+ T.type_alias do
741
+ T.all(
742
+ Symbol,
743
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID
744
+ )
745
+ end
746
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
747
+
748
+ SPEECH_2_8_TURBO =
749
+ T.let(
750
+ :"speech-2.8-turbo",
751
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID::TaggedSymbol
752
+ )
753
+
754
+ sig do
755
+ override.returns(
756
+ T::Array[
757
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::MinimaxClone::ModelID::TaggedSymbol
758
+ ]
759
+ )
760
+ end
761
+ def self.values
762
+ end
763
+ end
764
+ end
188
765
 
189
766
  sig do
190
767
  override.returns(
191
768
  T::Array[
192
- Telnyx::VoiceCloneCreateFromUploadParams::Provider::TaggedSymbol
769
+ Telnyx::VoiceCloneCreateFromUploadParams::UploadParams::Variants
193
770
  ]
194
771
  )
195
772
  end
196
- def self.values
773
+ def self.variants
197
774
  end
198
775
  end
199
776
  end