telnyx 5.167.0 → 5.168.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 (167) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/client.rb +4 -0
  5. data/lib/telnyx/models/ai/assistant_a2_a_agent.rb +195 -0
  6. data/lib/telnyx/models/ai/assistant_create_params.rb +16 -1
  7. data/lib/telnyx/models/ai/assistant_update_params.rb +17 -1
  8. data/lib/telnyx/models/ai/assistants/update_assistant.rb +17 -1
  9. data/lib/telnyx/models/ai/chat_completion_request.rb +125 -48
  10. data/lib/telnyx/models/ai/inference_embedding.rb +16 -1
  11. data/lib/telnyx/models/ai/telephony_settings.rb +15 -1
  12. data/lib/telnyx/models/compute/func_retrieve_logs_params.rb +66 -0
  13. data/lib/telnyx/models/compute/func_retrieve_logs_response.rb +161 -0
  14. data/lib/telnyx/models/compute/func_retrieve_metric_aggregates_params.rb +69 -0
  15. data/lib/telnyx/models/compute/func_retrieve_metric_aggregates_response.rb +137 -0
  16. data/lib/telnyx/models/compute/func_retrieve_revisions_params.rb +34 -0
  17. data/lib/telnyx/models/compute/func_retrieve_revisions_response.rb +101 -0
  18. data/lib/telnyx/models/compute/func_retrieve_ship_inspection_params.rb +22 -0
  19. data/lib/telnyx/models/compute/func_retrieve_ship_inspection_response.rb +94 -0
  20. data/lib/telnyx/models/compute/functions_observability_pagination_meta.rb +35 -0
  21. data/lib/telnyx/models/compute/logs_meta.rb +23 -0
  22. data/lib/telnyx/models/credential_connection.rb +4 -1
  23. data/lib/telnyx/models/email_inboxes/email_message.rb +12 -1
  24. data/lib/telnyx/models/email_message_batch_params.rb +4 -1
  25. data/lib/telnyx/models/email_message_batch_response.rb +1 -0
  26. data/lib/telnyx/models/fqdn_connection.rb +5 -2
  27. data/lib/telnyx/models/fqdn_connections/fqdn_authentication.rb +9 -2
  28. data/lib/telnyx/models/messaging_inbound_message_payload.rb +210 -67
  29. data/lib/telnyx/models/messaging_messaging_profile.rb +11 -1
  30. data/lib/telnyx/models/messaging_profile_create_params.rb +11 -1
  31. data/lib/telnyx/models/messaging_profile_features.rb +26 -0
  32. data/lib/telnyx/models/messaging_profile_update_params.rb +11 -1
  33. data/lib/telnyx/models/uac_connection.rb +4 -1
  34. data/lib/telnyx/models/uac_external_settings.rb +6 -2
  35. data/lib/telnyx/models/unsafe_unwrap_webhook_event.rb +5 -1
  36. data/lib/telnyx/models/unwrap_webhook_event.rb +5 -1
  37. data/lib/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rb +104 -1
  38. data/lib/telnyx/models/whatsapp/phone_number_get_response.rb +103 -1
  39. data/lib/telnyx/models/whatsapp/phone_number_list_response.rb +103 -1
  40. data/lib/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rb +22 -0
  41. data/lib/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rb +207 -0
  42. data/lib/telnyx/models/whatsapp_account_update.rb +112 -0
  43. data/lib/telnyx/models/whatsapp_message_echo.rb +340 -0
  44. data/lib/telnyx/models/x402/credit_account/payment_list_params.rb +34 -0
  45. data/lib/telnyx/models/x402/credit_account/payment_retrieve_params.rb +24 -0
  46. data/lib/telnyx/models/x402/credit_account/payment_retrieve_response.rb +21 -0
  47. data/lib/telnyx/models/x402/credit_account/x402_transaction_record.rb +113 -0
  48. data/lib/telnyx/models.rb +8 -0
  49. data/lib/telnyx/resources/ai/assistants/versions.rb +3 -1
  50. data/lib/telnyx/resources/ai/assistants.rb +6 -2
  51. data/lib/telnyx/resources/ai/openai/chat.rb +2 -8
  52. data/lib/telnyx/resources/compute/funcs.rb +141 -0
  53. data/lib/telnyx/resources/compute.rb +18 -0
  54. data/lib/telnyx/resources/email_messages.rb +4 -2
  55. data/lib/telnyx/resources/messaging_profiles.rb +6 -2
  56. data/lib/telnyx/resources/webhooks.rb +2 -2
  57. data/lib/telnyx/resources/whatsapp/phone_numbers.rb +22 -0
  58. data/lib/telnyx/resources/x402/credit_account/payments.rb +71 -0
  59. data/lib/telnyx/resources/x402/credit_account.rb +8 -2
  60. data/lib/telnyx/version.rb +1 -1
  61. data/lib/telnyx.rb +23 -0
  62. data/rbi/telnyx/client.rbi +3 -0
  63. data/rbi/telnyx/models/ai/assistant_a2_a_agent.rbi +345 -0
  64. data/rbi/telnyx/models/ai/assistant_create_params.rbi +29 -0
  65. data/rbi/telnyx/models/ai/assistant_update_params.rbi +31 -0
  66. data/rbi/telnyx/models/ai/assistants/update_assistant.rbi +31 -0
  67. data/rbi/telnyx/models/ai/chat_completion_request.rbi +224 -92
  68. data/rbi/telnyx/models/ai/inference_embedding.rbi +29 -0
  69. data/rbi/telnyx/models/ai/telephony_settings.rbi +23 -0
  70. data/rbi/telnyx/models/compute/func_retrieve_logs_params.rbi +130 -0
  71. data/rbi/telnyx/models/compute/func_retrieve_logs_response.rbi +410 -0
  72. data/rbi/telnyx/models/compute/func_retrieve_metric_aggregates_params.rbi +102 -0
  73. data/rbi/telnyx/models/compute/func_retrieve_metric_aggregates_response.rbi +231 -0
  74. data/rbi/telnyx/models/compute/func_retrieve_revisions_params.rbi +59 -0
  75. data/rbi/telnyx/models/compute/func_retrieve_revisions_response.rbi +213 -0
  76. data/rbi/telnyx/models/compute/func_retrieve_ship_inspection_params.rbi +40 -0
  77. data/rbi/telnyx/models/compute/func_retrieve_ship_inspection_response.rbi +252 -0
  78. data/rbi/telnyx/models/compute/functions_observability_pagination_meta.rbi +70 -0
  79. data/rbi/telnyx/models/compute/logs_meta.rbi +38 -0
  80. data/rbi/telnyx/models/credential_connection.rbi +8 -2
  81. data/rbi/telnyx/models/email_inboxes/email_message.rbi +22 -3
  82. data/rbi/telnyx/models/email_message_batch_params.rbi +6 -0
  83. data/rbi/telnyx/models/email_message_batch_response.rbi +5 -0
  84. data/rbi/telnyx/models/fqdn_connection.rbi +8 -2
  85. data/rbi/telnyx/models/fqdn_connections/fqdn_authentication.rbi +8 -2
  86. data/rbi/telnyx/models/messaging_inbound_message_payload.rbi +450 -193
  87. data/rbi/telnyx/models/messaging_messaging_profile.rbi +19 -0
  88. data/rbi/telnyx/models/messaging_profile_create_params.rbi +19 -0
  89. data/rbi/telnyx/models/messaging_profile_features.rbi +43 -0
  90. data/rbi/telnyx/models/messaging_profile_update_params.rbi +19 -0
  91. data/rbi/telnyx/models/uac_connection.rbi +8 -2
  92. data/rbi/telnyx/models/uac_external_settings.rbi +10 -2
  93. data/rbi/telnyx/models/unsafe_unwrap_webhook_event.rbi +3 -1
  94. data/rbi/telnyx/models/unwrap_webhook_event.rbi +3 -1
  95. data/rbi/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rbi +213 -0
  96. data/rbi/telnyx/models/whatsapp/phone_number_get_response.rbi +213 -0
  97. data/rbi/telnyx/models/whatsapp/phone_number_list_response.rbi +213 -0
  98. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rbi +40 -0
  99. data/rbi/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rbi +401 -0
  100. data/rbi/telnyx/models/whatsapp_account_update.rbi +236 -0
  101. data/rbi/telnyx/models/whatsapp_message_echo.rbi +611 -0
  102. data/rbi/telnyx/models/x402/credit_account/payment_list_params.rbi +64 -0
  103. data/rbi/telnyx/models/x402/credit_account/payment_retrieve_params.rbi +42 -0
  104. data/rbi/telnyx/models/x402/credit_account/payment_retrieve_response.rbi +53 -0
  105. data/rbi/telnyx/models/x402/credit_account/x402_transaction_record.rbi +219 -0
  106. data/rbi/telnyx/models.rbi +8 -0
  107. data/rbi/telnyx/resources/ai/assistants/versions.rbi +12 -0
  108. data/rbi/telnyx/resources/ai/assistants.rbi +21 -0
  109. data/rbi/telnyx/resources/ai/openai/chat.rbi +9 -13
  110. data/rbi/telnyx/resources/compute/funcs.rbi +111 -0
  111. data/rbi/telnyx/resources/compute.rbi +15 -0
  112. data/rbi/telnyx/resources/email_messages.rbi +6 -2
  113. data/rbi/telnyx/resources/messaging_profiles.rbi +10 -0
  114. data/rbi/telnyx/resources/webhooks.rbi +6 -2
  115. data/rbi/telnyx/resources/whatsapp/phone_numbers.rbi +18 -0
  116. data/rbi/telnyx/resources/x402/credit_account/payments.rbi +60 -0
  117. data/rbi/telnyx/resources/x402/credit_account.rbi +5 -0
  118. data/sig/telnyx/client.rbs +2 -0
  119. data/sig/telnyx/models/ai/assistant_a2_a_agent.rbs +140 -0
  120. data/sig/telnyx/models/ai/assistant_create_params.rbs +9 -0
  121. data/sig/telnyx/models/ai/assistant_update_params.rbs +9 -0
  122. data/sig/telnyx/models/ai/assistants/update_assistant.rbs +9 -0
  123. data/sig/telnyx/models/ai/chat_completion_request.rbs +86 -44
  124. data/sig/telnyx/models/ai/inference_embedding.rbs +9 -0
  125. data/sig/telnyx/models/ai/telephony_settings.rbs +7 -0
  126. data/sig/telnyx/models/compute/func_retrieve_logs_params.rbs +69 -0
  127. data/sig/telnyx/models/compute/func_retrieve_logs_response.rbs +210 -0
  128. data/sig/telnyx/models/compute/func_retrieve_metric_aggregates_params.rbs +66 -0
  129. data/sig/telnyx/models/compute/func_retrieve_metric_aggregates_response.rbs +149 -0
  130. data/sig/telnyx/models/compute/func_retrieve_revisions_params.rbs +38 -0
  131. data/sig/telnyx/models/compute/func_retrieve_revisions_response.rbs +131 -0
  132. data/sig/telnyx/models/compute/func_retrieve_ship_inspection_params.rbs +22 -0
  133. data/sig/telnyx/models/compute/func_retrieve_ship_inspection_response.rbs +117 -0
  134. data/sig/telnyx/models/compute/functions_observability_pagination_meta.rbs +45 -0
  135. data/sig/telnyx/models/compute/logs_meta.rbs +21 -0
  136. data/sig/telnyx/models/email_inboxes/email_message.rbs +12 -3
  137. data/sig/telnyx/models/email_message_batch_response.rbs +2 -0
  138. data/sig/telnyx/models/messaging_inbound_message_payload.rbs +207 -95
  139. data/sig/telnyx/models/messaging_messaging_profile.rbs +5 -0
  140. data/sig/telnyx/models/messaging_profile_create_params.rbs +5 -0
  141. data/sig/telnyx/models/messaging_profile_features.rbs +15 -0
  142. data/sig/telnyx/models/messaging_profile_update_params.rbs +5 -0
  143. data/sig/telnyx/models/unsafe_unwrap_webhook_event.rbs +2 -0
  144. data/sig/telnyx/models/unwrap_webhook_event.rbs +2 -0
  145. data/sig/telnyx/models/whatsapp/business_accounts/phone_number_list_response.rbs +90 -0
  146. data/sig/telnyx/models/whatsapp/phone_number_get_response.rbs +90 -0
  147. data/sig/telnyx/models/whatsapp/phone_number_list_response.rbs +90 -0
  148. data/sig/telnyx/models/whatsapp/phone_number_retrieve_phone_number_params.rbs +25 -0
  149. data/sig/telnyx/models/whatsapp/phone_number_retrieve_phone_number_response.rbs +201 -0
  150. data/sig/telnyx/models/whatsapp_account_update.rbs +107 -0
  151. data/sig/telnyx/models/whatsapp_message_echo.rbs +291 -0
  152. data/sig/telnyx/models/x402/credit_account/payment_list_params.rbs +36 -0
  153. data/sig/telnyx/models/x402/credit_account/payment_retrieve_params.rbs +27 -0
  154. data/sig/telnyx/models/x402/credit_account/payment_retrieve_response.rbs +26 -0
  155. data/sig/telnyx/models/x402/credit_account/x402_transaction_record.rbs +104 -0
  156. data/sig/telnyx/models.rbs +8 -0
  157. data/sig/telnyx/resources/ai/assistants/versions.rbs +1 -0
  158. data/sig/telnyx/resources/ai/assistants.rbs +2 -0
  159. data/sig/telnyx/resources/ai/openai/chat.rbs +1 -4
  160. data/sig/telnyx/resources/compute/funcs.rbs +41 -0
  161. data/sig/telnyx/resources/compute.rbs +9 -0
  162. data/sig/telnyx/resources/messaging_profiles.rbs +2 -0
  163. data/sig/telnyx/resources/webhooks.rbs +6 -2
  164. data/sig/telnyx/resources/whatsapp/phone_numbers.rbs +5 -0
  165. data/sig/telnyx/resources/x402/credit_account/payments.rbs +22 -0
  166. data/sig/telnyx/resources/x402/credit_account.rbs +2 -0
  167. metadata +71 -2
@@ -0,0 +1,401 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ module Whatsapp
6
+ class PhoneNumberRetrievePhoneNumberResponse < Telnyx::Internal::Type::BaseModel
7
+ OrHash =
8
+ T.type_alias do
9
+ T.any(
10
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse,
11
+ Telnyx::Internal::AnyHash
12
+ )
13
+ end
14
+
15
+ sig do
16
+ returns(
17
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data
18
+ )
19
+ end
20
+ attr_reader :data
21
+
22
+ sig do
23
+ params(
24
+ data:
25
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::OrHash
26
+ ).void
27
+ end
28
+ attr_writer :data
29
+
30
+ sig do
31
+ params(
32
+ data:
33
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::OrHash
34
+ ).returns(T.attached_class)
35
+ end
36
+ def self.new(data:)
37
+ end
38
+
39
+ sig do
40
+ override.returns(
41
+ {
42
+ data:
43
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data
44
+ }
45
+ )
46
+ end
47
+ def to_hash
48
+ end
49
+
50
+ class Data < Telnyx::Internal::Type::BaseModel
51
+ OrHash =
52
+ T.type_alias do
53
+ T.any(
54
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data,
55
+ Telnyx::Internal::AnyHash
56
+ )
57
+ end
58
+
59
+ sig { returns(T.nilable(T::Boolean)) }
60
+ attr_reader :calling_enabled
61
+
62
+ sig { params(calling_enabled: T::Boolean).void }
63
+ attr_writer :calling_enabled
64
+
65
+ # Current lifecycle state for a coexistence number. This is null for a standard
66
+ # Cloud API number.
67
+ sig do
68
+ returns(
69
+ T.nilable(
70
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
71
+ )
72
+ )
73
+ end
74
+ attr_accessor :coexistence_state
75
+
76
+ sig { returns(T.nilable(Time)) }
77
+ attr_reader :created_at
78
+
79
+ sig { params(created_at: Time).void }
80
+ attr_writer :created_at
81
+
82
+ sig { returns(T.nilable(String)) }
83
+ attr_reader :display_name
84
+
85
+ sig { params(display_name: String).void }
86
+ attr_writer :display_name
87
+
88
+ sig { returns(T.nilable(T::Boolean)) }
89
+ attr_reader :enabled
90
+
91
+ sig { params(enabled: T::Boolean).void }
92
+ attr_writer :enabled
93
+
94
+ # Indicates whether the number is connected to both the WhatsApp Business app and
95
+ # Cloud API through WhatsApp Coexistence.
96
+ sig { returns(T.nilable(T::Boolean)) }
97
+ attr_reader :is_on_biz_app
98
+
99
+ sig { params(is_on_biz_app: T::Boolean).void }
100
+ attr_writer :is_on_biz_app
101
+
102
+ # Phone number in E164 format
103
+ sig { returns(T.nilable(String)) }
104
+ attr_reader :phone_number
105
+
106
+ sig { params(phone_number: String).void }
107
+ attr_writer :phone_number
108
+
109
+ # Whatsapp phone number ID
110
+ sig { returns(T.nilable(String)) }
111
+ attr_reader :phone_number_id
112
+
113
+ sig { params(phone_number_id: String).void }
114
+ attr_writer :phone_number_id
115
+
116
+ # Whatsapp quality rating
117
+ sig { returns(T.nilable(String)) }
118
+ attr_reader :quality_rating
119
+
120
+ sig { params(quality_rating: String).void }
121
+ attr_writer :quality_rating
122
+
123
+ sig { returns(T.nilable(String)) }
124
+ attr_reader :record_type
125
+
126
+ sig { params(record_type: String).void }
127
+ attr_writer :record_type
128
+
129
+ sig { returns(T.nilable(String)) }
130
+ attr_reader :status
131
+
132
+ sig { params(status: String).void }
133
+ attr_writer :status
134
+
135
+ # Deadline for initiating the current coexistence synchronization cycle. This is
136
+ # null when no deadline applies.
137
+ sig { returns(T.nilable(Time)) }
138
+ attr_accessor :sync_deadline
139
+
140
+ # Synchronization progress. This object is returned only while a coexistence
141
+ # number is synchronizing.
142
+ sig do
143
+ returns(
144
+ T.nilable(
145
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::SyncProgress
146
+ )
147
+ )
148
+ end
149
+ attr_reader :sync_progress
150
+
151
+ sig do
152
+ params(
153
+ sync_progress:
154
+ T.nilable(
155
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::SyncProgress::OrHash
156
+ )
157
+ ).void
158
+ end
159
+ attr_writer :sync_progress
160
+
161
+ # User ID
162
+ sig { returns(T.nilable(String)) }
163
+ attr_reader :user_id
164
+
165
+ sig { params(user_id: String).void }
166
+ attr_writer :user_id
167
+
168
+ # WABA ID of Whatsapp business account
169
+ sig { returns(T.nilable(String)) }
170
+ attr_reader :waba_id
171
+
172
+ sig { params(waba_id: String).void }
173
+ attr_writer :waba_id
174
+
175
+ sig do
176
+ params(
177
+ calling_enabled: T::Boolean,
178
+ coexistence_state:
179
+ T.nilable(
180
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::OrSymbol
181
+ ),
182
+ created_at: Time,
183
+ display_name: String,
184
+ enabled: T::Boolean,
185
+ is_on_biz_app: T::Boolean,
186
+ phone_number: String,
187
+ phone_number_id: String,
188
+ quality_rating: String,
189
+ record_type: String,
190
+ status: String,
191
+ sync_deadline: T.nilable(Time),
192
+ sync_progress:
193
+ T.nilable(
194
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::SyncProgress::OrHash
195
+ ),
196
+ user_id: String,
197
+ waba_id: String
198
+ ).returns(T.attached_class)
199
+ end
200
+ def self.new(
201
+ calling_enabled: nil,
202
+ # Current lifecycle state for a coexistence number. This is null for a standard
203
+ # Cloud API number.
204
+ coexistence_state: nil,
205
+ created_at: nil,
206
+ display_name: nil,
207
+ enabled: nil,
208
+ # Indicates whether the number is connected to both the WhatsApp Business app and
209
+ # Cloud API through WhatsApp Coexistence.
210
+ is_on_biz_app: nil,
211
+ # Phone number in E164 format
212
+ phone_number: nil,
213
+ # Whatsapp phone number ID
214
+ phone_number_id: nil,
215
+ # Whatsapp quality rating
216
+ quality_rating: nil,
217
+ record_type: nil,
218
+ status: nil,
219
+ # Deadline for initiating the current coexistence synchronization cycle. This is
220
+ # null when no deadline applies.
221
+ sync_deadline: nil,
222
+ # Synchronization progress. This object is returned only while a coexistence
223
+ # number is synchronizing.
224
+ sync_progress: nil,
225
+ # User ID
226
+ user_id: nil,
227
+ # WABA ID of Whatsapp business account
228
+ waba_id: nil
229
+ )
230
+ end
231
+
232
+ sig do
233
+ override.returns(
234
+ {
235
+ calling_enabled: T::Boolean,
236
+ coexistence_state:
237
+ T.nilable(
238
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
239
+ ),
240
+ created_at: Time,
241
+ display_name: String,
242
+ enabled: T::Boolean,
243
+ is_on_biz_app: T::Boolean,
244
+ phone_number: String,
245
+ phone_number_id: String,
246
+ quality_rating: String,
247
+ record_type: String,
248
+ status: String,
249
+ sync_deadline: T.nilable(Time),
250
+ sync_progress:
251
+ T.nilable(
252
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::SyncProgress
253
+ ),
254
+ user_id: String,
255
+ waba_id: String
256
+ }
257
+ )
258
+ end
259
+ def to_hash
260
+ end
261
+
262
+ # Current lifecycle state for a coexistence number. This is null for a standard
263
+ # Cloud API number.
264
+ module CoexistenceState
265
+ extend Telnyx::Internal::Type::Enum
266
+
267
+ TaggedSymbol =
268
+ T.type_alias do
269
+ T.all(
270
+ Symbol,
271
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState
272
+ )
273
+ end
274
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
275
+
276
+ PENDING_ONBOARDING =
277
+ T.let(
278
+ :pending_onboarding,
279
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
280
+ )
281
+ SYNC_PENDING =
282
+ T.let(
283
+ :sync_pending,
284
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
285
+ )
286
+ SYNCING =
287
+ T.let(
288
+ :syncing,
289
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
290
+ )
291
+ SYNC_COMPLETE =
292
+ T.let(
293
+ :sync_complete,
294
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
295
+ )
296
+ ACTIVE =
297
+ T.let(
298
+ :active,
299
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
300
+ )
301
+ HISTORY_DECLINED =
302
+ T.let(
303
+ :history_declined,
304
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
305
+ )
306
+ SYNC_DEADLINE_EXPIRED =
307
+ T.let(
308
+ :sync_deadline_expired,
309
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
310
+ )
311
+ OFFBOARDED =
312
+ T.let(
313
+ :offboarded,
314
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
315
+ )
316
+ DISCONNECTED =
317
+ T.let(
318
+ :disconnected,
319
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
320
+ )
321
+
322
+ sig do
323
+ override.returns(
324
+ T::Array[
325
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::CoexistenceState::TaggedSymbol
326
+ ]
327
+ )
328
+ end
329
+ def self.values
330
+ end
331
+ end
332
+
333
+ class SyncProgress < Telnyx::Internal::Type::BaseModel
334
+ OrHash =
335
+ T.type_alias do
336
+ T.any(
337
+ Telnyx::Models::Whatsapp::PhoneNumberRetrievePhoneNumberResponse::Data::SyncProgress,
338
+ Telnyx::Internal::AnyHash
339
+ )
340
+ end
341
+
342
+ sig { returns(T.nilable(String)) }
343
+ attr_reader :contacts_status
344
+
345
+ sig { params(contacts_status: String).void }
346
+ attr_writer :contacts_status
347
+
348
+ sig { returns(T.nilable(Integer)) }
349
+ attr_accessor :history_chunk_order
350
+
351
+ sig { returns(T.nilable(Integer)) }
352
+ attr_accessor :history_phase
353
+
354
+ sig { returns(T.nilable(Integer)) }
355
+ attr_accessor :history_progress
356
+
357
+ sig { returns(T.nilable(String)) }
358
+ attr_reader :history_status
359
+
360
+ sig { params(history_status: String).void }
361
+ attr_writer :history_status
362
+
363
+ # Synchronization progress. This object is returned only while a coexistence
364
+ # number is synchronizing.
365
+ sig do
366
+ params(
367
+ contacts_status: String,
368
+ history_chunk_order: T.nilable(Integer),
369
+ history_phase: T.nilable(Integer),
370
+ history_progress: T.nilable(Integer),
371
+ history_status: String
372
+ ).returns(T.attached_class)
373
+ end
374
+ def self.new(
375
+ contacts_status: nil,
376
+ history_chunk_order: nil,
377
+ history_phase: nil,
378
+ history_progress: nil,
379
+ history_status: nil
380
+ )
381
+ end
382
+
383
+ sig do
384
+ override.returns(
385
+ {
386
+ contacts_status: String,
387
+ history_chunk_order: T.nilable(Integer),
388
+ history_phase: T.nilable(Integer),
389
+ history_progress: T.nilable(Integer),
390
+ history_status: String
391
+ }
392
+ )
393
+ end
394
+ def to_hash
395
+ end
396
+ end
397
+ end
398
+ end
399
+ end
400
+ end
401
+ end
@@ -0,0 +1,236 @@
1
+ # typed: strong
2
+
3
+ module Telnyx
4
+ module Models
5
+ class WhatsappAccountUpdate < Telnyx::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(Telnyx::WhatsappAccountUpdate, Telnyx::Internal::AnyHash)
9
+ end
10
+
11
+ sig { returns(Telnyx::WhatsappAccountUpdate::Data) }
12
+ attr_reader :data
13
+
14
+ sig { params(data: Telnyx::WhatsappAccountUpdate::Data::OrHash).void }
15
+ attr_writer :data
16
+
17
+ sig do
18
+ params(data: Telnyx::WhatsappAccountUpdate::Data::OrHash).returns(
19
+ T.attached_class
20
+ )
21
+ end
22
+ def self.new(data:)
23
+ end
24
+
25
+ sig { override.returns({ data: Telnyx::WhatsappAccountUpdate::Data }) }
26
+ def to_hash
27
+ end
28
+
29
+ class Data < Telnyx::Internal::Type::BaseModel
30
+ OrHash =
31
+ T.type_alias do
32
+ T.any(
33
+ Telnyx::WhatsappAccountUpdate::Data,
34
+ Telnyx::Internal::AnyHash
35
+ )
36
+ end
37
+
38
+ sig { returns(String) }
39
+ attr_accessor :id
40
+
41
+ sig do
42
+ returns(Telnyx::WhatsappAccountUpdate::Data::EventType::TaggedSymbol)
43
+ end
44
+ attr_accessor :event_type
45
+
46
+ sig { returns(Time) }
47
+ attr_accessor :occurred_at
48
+
49
+ sig { returns(Telnyx::WhatsappAccountUpdate::Data::Payload) }
50
+ attr_reader :payload
51
+
52
+ sig do
53
+ params(
54
+ payload: Telnyx::WhatsappAccountUpdate::Data::Payload::OrHash
55
+ ).void
56
+ end
57
+ attr_writer :payload
58
+
59
+ sig do
60
+ returns(Telnyx::WhatsappAccountUpdate::Data::RecordType::TaggedSymbol)
61
+ end
62
+ attr_accessor :record_type
63
+
64
+ sig do
65
+ params(
66
+ id: String,
67
+ event_type:
68
+ Telnyx::WhatsappAccountUpdate::Data::EventType::OrSymbol,
69
+ occurred_at: Time,
70
+ payload: Telnyx::WhatsappAccountUpdate::Data::Payload::OrHash,
71
+ record_type:
72
+ Telnyx::WhatsappAccountUpdate::Data::RecordType::OrSymbol
73
+ ).returns(T.attached_class)
74
+ end
75
+ def self.new(id:, event_type:, occurred_at:, payload:, record_type:)
76
+ end
77
+
78
+ sig do
79
+ override.returns(
80
+ {
81
+ id: String,
82
+ event_type:
83
+ Telnyx::WhatsappAccountUpdate::Data::EventType::TaggedSymbol,
84
+ occurred_at: Time,
85
+ payload: Telnyx::WhatsappAccountUpdate::Data::Payload,
86
+ record_type:
87
+ Telnyx::WhatsappAccountUpdate::Data::RecordType::TaggedSymbol
88
+ }
89
+ )
90
+ end
91
+ def to_hash
92
+ end
93
+
94
+ module EventType
95
+ extend Telnyx::Internal::Type::Enum
96
+
97
+ TaggedSymbol =
98
+ T.type_alias do
99
+ T.all(Symbol, Telnyx::WhatsappAccountUpdate::Data::EventType)
100
+ end
101
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
102
+
103
+ WHATSAPP_ACCOUNT_UPDATE =
104
+ T.let(
105
+ :"whatsapp.account.update",
106
+ Telnyx::WhatsappAccountUpdate::Data::EventType::TaggedSymbol
107
+ )
108
+
109
+ sig do
110
+ override.returns(
111
+ T::Array[
112
+ Telnyx::WhatsappAccountUpdate::Data::EventType::TaggedSymbol
113
+ ]
114
+ )
115
+ end
116
+ def self.values
117
+ end
118
+ end
119
+
120
+ class Payload < Telnyx::Internal::Type::BaseModel
121
+ OrHash =
122
+ T.type_alias do
123
+ T.any(
124
+ Telnyx::WhatsappAccountUpdate::Data::Payload,
125
+ Telnyx::Internal::AnyHash
126
+ )
127
+ end
128
+
129
+ # Account event reported by Meta. Coexistence lifecycle values include
130
+ # `ACCOUNT_OFFBOARDED`, `ACCOUNT_RECONNECTED`, and `PARTNER_REMOVED`. Preserve
131
+ # unknown values for forward compatibility.
132
+ sig { returns(String) }
133
+ attr_accessor :event
134
+
135
+ sig do
136
+ returns(
137
+ Telnyx::WhatsappAccountUpdate::Data::Payload::RecordType::TaggedSymbol
138
+ )
139
+ end
140
+ attr_accessor :record_type
141
+
142
+ # Meta WhatsApp Business Account identifier.
143
+ sig { returns(String) }
144
+ attr_accessor :waba_id
145
+
146
+ sig do
147
+ params(
148
+ event: String,
149
+ record_type:
150
+ Telnyx::WhatsappAccountUpdate::Data::Payload::RecordType::OrSymbol,
151
+ waba_id: String
152
+ ).returns(T.attached_class)
153
+ end
154
+ def self.new(
155
+ # Account event reported by Meta. Coexistence lifecycle values include
156
+ # `ACCOUNT_OFFBOARDED`, `ACCOUNT_RECONNECTED`, and `PARTNER_REMOVED`. Preserve
157
+ # unknown values for forward compatibility.
158
+ event:,
159
+ record_type:,
160
+ # Meta WhatsApp Business Account identifier.
161
+ waba_id:
162
+ )
163
+ end
164
+
165
+ sig do
166
+ override.returns(
167
+ {
168
+ event: String,
169
+ record_type:
170
+ Telnyx::WhatsappAccountUpdate::Data::Payload::RecordType::TaggedSymbol,
171
+ waba_id: String
172
+ }
173
+ )
174
+ end
175
+ def to_hash
176
+ end
177
+
178
+ module RecordType
179
+ extend Telnyx::Internal::Type::Enum
180
+
181
+ TaggedSymbol =
182
+ T.type_alias do
183
+ T.all(
184
+ Symbol,
185
+ Telnyx::WhatsappAccountUpdate::Data::Payload::RecordType
186
+ )
187
+ end
188
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
189
+
190
+ WHATSAPP_ACCOUNT =
191
+ T.let(
192
+ :whatsapp_account,
193
+ Telnyx::WhatsappAccountUpdate::Data::Payload::RecordType::TaggedSymbol
194
+ )
195
+
196
+ sig do
197
+ override.returns(
198
+ T::Array[
199
+ Telnyx::WhatsappAccountUpdate::Data::Payload::RecordType::TaggedSymbol
200
+ ]
201
+ )
202
+ end
203
+ def self.values
204
+ end
205
+ end
206
+ end
207
+
208
+ module RecordType
209
+ extend Telnyx::Internal::Type::Enum
210
+
211
+ TaggedSymbol =
212
+ T.type_alias do
213
+ T.all(Symbol, Telnyx::WhatsappAccountUpdate::Data::RecordType)
214
+ end
215
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
216
+
217
+ EVENT =
218
+ T.let(
219
+ :event,
220
+ Telnyx::WhatsappAccountUpdate::Data::RecordType::TaggedSymbol
221
+ )
222
+
223
+ sig do
224
+ override.returns(
225
+ T::Array[
226
+ Telnyx::WhatsappAccountUpdate::Data::RecordType::TaggedSymbol
227
+ ]
228
+ )
229
+ end
230
+ def self.values
231
+ end
232
+ end
233
+ end
234
+ end
235
+ end
236
+ end