telnyx 4.1.0 → 4.2.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 (95) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/README.md +1 -1
  4. data/lib/telnyx/models/calls/action_start_transcription_params.rb +3 -3
  5. data/lib/telnyx/models/calls/transcription_start_request.rb +56 -56
  6. data/lib/telnyx/models/messaging_profile.rb +9 -1
  7. data/lib/telnyx/models/messaging_profile_create_params.rb +9 -1
  8. data/lib/telnyx/models/messaging_profile_update_params.rb +9 -1
  9. data/lib/telnyx/models/network_list_interfaces_response.rb +114 -0
  10. data/lib/telnyx/models/public_internet_gateway_create_response.rb +115 -0
  11. data/lib/telnyx/models/public_internet_gateway_delete_response.rb +115 -0
  12. data/lib/telnyx/models/public_internet_gateway_list_response.rb +114 -0
  13. data/lib/telnyx/models/public_internet_gateway_retrieve_response.rb +115 -0
  14. data/lib/telnyx/models/texml/accounts/call_calls_params.rb +33 -1
  15. data/lib/telnyx/models/texml/accounts/conferences/participant_participants_params.rb +33 -1
  16. data/lib/telnyx/models/virtual_cross_connect_create_response.rb +275 -0
  17. data/lib/telnyx/models/virtual_cross_connect_delete_response.rb +275 -0
  18. data/lib/telnyx/models/virtual_cross_connect_list_response.rb +274 -0
  19. data/lib/telnyx/models/virtual_cross_connect_retrieve_response.rb +275 -0
  20. data/lib/telnyx/models/virtual_cross_connect_update_response.rb +275 -0
  21. data/lib/telnyx/models/wireguard_interface_create_response.rb +131 -0
  22. data/lib/telnyx/models/wireguard_interface_delete_response.rb +131 -0
  23. data/lib/telnyx/models/wireguard_interface_list_response.rb +130 -0
  24. data/lib/telnyx/models/wireguard_interface_retrieve_response.rb +131 -0
  25. data/lib/telnyx/models/wireguard_peer_create_response.rb +78 -0
  26. data/lib/telnyx/models/wireguard_peer_delete_response.rb +78 -0
  27. data/lib/telnyx/models/wireguard_peer_list_response.rb +77 -0
  28. data/lib/telnyx/models/wireguard_peer_retrieve_response.rb +78 -0
  29. data/lib/telnyx/models/wireguard_peer_update_response.rb +78 -0
  30. data/lib/telnyx/resources/calls/actions.rb +1 -1
  31. data/lib/telnyx/resources/messaging_profiles.rb +6 -2
  32. data/lib/telnyx/resources/texml/accounts/calls.rb +3 -1
  33. data/lib/telnyx/resources/texml/accounts/conferences/participants.rb +3 -1
  34. data/lib/telnyx/version.rb +1 -1
  35. data/rbi/telnyx/models/calls/action_start_transcription_params.rbi +6 -6
  36. data/rbi/telnyx/models/calls/transcription_start_request.rbi +266 -263
  37. data/rbi/telnyx/models/messaging_profile.rbi +11 -0
  38. data/rbi/telnyx/models/messaging_profile_create_params.rbi +11 -0
  39. data/rbi/telnyx/models/messaging_profile_update_params.rbi +11 -0
  40. data/rbi/telnyx/models/network_list_interfaces_response.rbi +202 -0
  41. data/rbi/telnyx/models/public_internet_gateway_create_response.rbi +202 -0
  42. data/rbi/telnyx/models/public_internet_gateway_delete_response.rbi +202 -0
  43. data/rbi/telnyx/models/public_internet_gateway_list_response.rbi +202 -0
  44. data/rbi/telnyx/models/public_internet_gateway_retrieve_response.rbi +202 -0
  45. data/rbi/telnyx/models/texml/accounts/call_calls_params.rbi +65 -0
  46. data/rbi/telnyx/models/texml/accounts/conferences/participant_participants_params.rbi +67 -0
  47. data/rbi/telnyx/models/virtual_cross_connect_create_response.rbi +444 -0
  48. data/rbi/telnyx/models/virtual_cross_connect_delete_response.rbi +444 -0
  49. data/rbi/telnyx/models/virtual_cross_connect_list_response.rbi +444 -0
  50. data/rbi/telnyx/models/virtual_cross_connect_retrieve_response.rbi +444 -0
  51. data/rbi/telnyx/models/virtual_cross_connect_update_response.rbi +444 -0
  52. data/rbi/telnyx/models/wireguard_interface_create_response.rbi +224 -0
  53. data/rbi/telnyx/models/wireguard_interface_delete_response.rbi +224 -0
  54. data/rbi/telnyx/models/wireguard_interface_list_response.rbi +224 -0
  55. data/rbi/telnyx/models/wireguard_interface_retrieve_response.rbi +224 -0
  56. data/rbi/telnyx/models/wireguard_peer_create_response.rbi +125 -0
  57. data/rbi/telnyx/models/wireguard_peer_delete_response.rbi +125 -0
  58. data/rbi/telnyx/models/wireguard_peer_list_response.rbi +125 -0
  59. data/rbi/telnyx/models/wireguard_peer_retrieve_response.rbi +125 -0
  60. data/rbi/telnyx/models/wireguard_peer_update_response.rbi +125 -0
  61. data/rbi/telnyx/resources/calls/actions.rbi +5 -5
  62. data/rbi/telnyx/resources/messaging_profiles.rbi +6 -0
  63. data/rbi/telnyx/resources/texml/accounts/calls.rbi +7 -0
  64. data/rbi/telnyx/resources/texml/accounts/conferences/participants.rbi +7 -0
  65. data/sig/telnyx/models/calls/action_start_transcription_params.rbs +5 -5
  66. data/sig/telnyx/models/calls/transcription_start_request.rbs +83 -83
  67. data/sig/telnyx/models/messaging_profile.rbs +7 -0
  68. data/sig/telnyx/models/messaging_profile_create_params.rbs +7 -0
  69. data/sig/telnyx/models/messaging_profile_update_params.rbs +7 -0
  70. data/sig/telnyx/models/network_list_interfaces_response.rbs +110 -0
  71. data/sig/telnyx/models/public_internet_gateway_create_response.rbs +110 -0
  72. data/sig/telnyx/models/public_internet_gateway_delete_response.rbs +110 -0
  73. data/sig/telnyx/models/public_internet_gateway_list_response.rbs +110 -0
  74. data/sig/telnyx/models/public_internet_gateway_retrieve_response.rbs +110 -0
  75. data/sig/telnyx/models/texml/accounts/call_calls_params.rbs +21 -0
  76. data/sig/telnyx/models/texml/accounts/conferences/participant_participants_params.rbs +21 -0
  77. data/sig/telnyx/models/virtual_cross_connect_create_response.rbs +219 -0
  78. data/sig/telnyx/models/virtual_cross_connect_delete_response.rbs +219 -0
  79. data/sig/telnyx/models/virtual_cross_connect_list_response.rbs +219 -0
  80. data/sig/telnyx/models/virtual_cross_connect_retrieve_response.rbs +219 -0
  81. data/sig/telnyx/models/virtual_cross_connect_update_response.rbs +219 -0
  82. data/sig/telnyx/models/wireguard_interface_create_response.rbs +124 -0
  83. data/sig/telnyx/models/wireguard_interface_delete_response.rbs +124 -0
  84. data/sig/telnyx/models/wireguard_interface_list_response.rbs +124 -0
  85. data/sig/telnyx/models/wireguard_interface_retrieve_response.rbs +124 -0
  86. data/sig/telnyx/models/wireguard_peer_create_response.rbs +68 -0
  87. data/sig/telnyx/models/wireguard_peer_delete_response.rbs +68 -0
  88. data/sig/telnyx/models/wireguard_peer_list_response.rbs +68 -0
  89. data/sig/telnyx/models/wireguard_peer_retrieve_response.rbs +68 -0
  90. data/sig/telnyx/models/wireguard_peer_update_response.rbs +68 -0
  91. data/sig/telnyx/resources/calls/actions.rbs +1 -1
  92. data/sig/telnyx/resources/messaging_profiles.rbs +2 -0
  93. data/sig/telnyx/resources/texml/accounts/calls.rbs +1 -0
  94. data/sig/telnyx/resources/texml/accounts/conferences/participants.rbs +1 -0
  95. metadata +2 -2
@@ -49,6 +49,13 @@ module Telnyx
49
49
  sig { params(mms_transcoding: T::Boolean).void }
50
50
  attr_writer :mms_transcoding
51
51
 
52
+ # Send messages only to mobile phone numbers.
53
+ sig { returns(T.nilable(T::Boolean)) }
54
+ attr_reader :mobile_only
55
+
56
+ sig { params(mobile_only: T::Boolean).void }
57
+ attr_writer :mobile_only
58
+
52
59
  # A user friendly name for the messaging profile.
53
60
  sig { returns(T.nilable(String)) }
54
61
  attr_reader :name
@@ -173,6 +180,7 @@ module Telnyx
173
180
  enabled: T::Boolean,
174
181
  mms_fall_back_to_sms: T::Boolean,
175
182
  mms_transcoding: T::Boolean,
183
+ mobile_only: T::Boolean,
176
184
  name: String,
177
185
  number_pool_settings: T.nilable(Telnyx::NumberPoolSettings::OrHash),
178
186
  record_type: Telnyx::MessagingProfile::RecordType::OrSymbol,
@@ -206,6 +214,8 @@ module Telnyx
206
214
  mms_fall_back_to_sms: nil,
207
215
  # enables automated resizing of MMS media.
208
216
  mms_transcoding: nil,
217
+ # Send messages only to mobile phone numbers.
218
+ mobile_only: nil,
209
219
  # A user friendly name for the messaging profile.
210
220
  name: nil,
211
221
  # Number Pool allows you to send messages from a pool of numbers of different
@@ -254,6 +264,7 @@ module Telnyx
254
264
  enabled: T::Boolean,
255
265
  mms_fall_back_to_sms: T::Boolean,
256
266
  mms_transcoding: T::Boolean,
267
+ mobile_only: T::Boolean,
257
268
  name: String,
258
269
  number_pool_settings: T.nilable(Telnyx::NumberPoolSettings),
259
270
  record_type: Telnyx::MessagingProfile::RecordType::TaggedSymbol,
@@ -62,6 +62,13 @@ module Telnyx
62
62
  sig { params(mms_transcoding: T::Boolean).void }
63
63
  attr_writer :mms_transcoding
64
64
 
65
+ # Send messages only to mobile phone numbers.
66
+ sig { returns(T.nilable(T::Boolean)) }
67
+ attr_reader :mobile_only
68
+
69
+ sig { params(mobile_only: T::Boolean).void }
70
+ attr_writer :mobile_only
71
+
65
72
  # Number Pool allows you to send messages from a pool of numbers of different
66
73
  # types, assigning weights to each type. The pool consists of all the long code
67
74
  # and toll free numbers assigned to the messaging profile.
@@ -133,6 +140,7 @@ module Telnyx
133
140
  enabled: T::Boolean,
134
141
  mms_fall_back_to_sms: T::Boolean,
135
142
  mms_transcoding: T::Boolean,
143
+ mobile_only: T::Boolean,
136
144
  number_pool_settings: T.nilable(Telnyx::NumberPoolSettings::OrHash),
137
145
  url_shortener_settings:
138
146
  T.nilable(Telnyx::URLShortenerSettings::OrHash),
@@ -164,6 +172,8 @@ module Telnyx
164
172
  mms_fall_back_to_sms: nil,
165
173
  # enables automated resizing of MMS media.
166
174
  mms_transcoding: nil,
175
+ # Send messages only to mobile phone numbers.
176
+ mobile_only: nil,
167
177
  # Number Pool allows you to send messages from a pool of numbers of different
168
178
  # types, assigning weights to each type. The pool consists of all the long code
169
179
  # and toll free numbers assigned to the messaging profile.
@@ -201,6 +211,7 @@ module Telnyx
201
211
  enabled: T::Boolean,
202
212
  mms_fall_back_to_sms: T::Boolean,
203
213
  mms_transcoding: T::Boolean,
214
+ mobile_only: T::Boolean,
204
215
  number_pool_settings: T.nilable(Telnyx::NumberPoolSettings),
205
216
  url_shortener_settings: T.nilable(Telnyx::URLShortenerSettings),
206
217
  webhook_api_version:
@@ -52,6 +52,13 @@ module Telnyx
52
52
  sig { params(mms_transcoding: T::Boolean).void }
53
53
  attr_writer :mms_transcoding
54
54
 
55
+ # Send messages only to mobile phone numbers.
56
+ sig { returns(T.nilable(T::Boolean)) }
57
+ attr_reader :mobile_only
58
+
59
+ sig { params(mobile_only: T::Boolean).void }
60
+ attr_writer :mobile_only
61
+
55
62
  # A user friendly name for the messaging profile.
56
63
  sig { returns(T.nilable(String)) }
57
64
  attr_reader :name
@@ -146,6 +153,7 @@ module Telnyx
146
153
  enabled: T::Boolean,
147
154
  mms_fall_back_to_sms: T::Boolean,
148
155
  mms_transcoding: T::Boolean,
156
+ mobile_only: T::Boolean,
149
157
  name: String,
150
158
  number_pool_settings: T.nilable(Telnyx::NumberPoolSettings::OrHash),
151
159
  url_shortener_settings:
@@ -174,6 +182,8 @@ module Telnyx
174
182
  mms_fall_back_to_sms: nil,
175
183
  # enables automated resizing of MMS media.
176
184
  mms_transcoding: nil,
185
+ # Send messages only to mobile phone numbers.
186
+ mobile_only: nil,
177
187
  # A user friendly name for the messaging profile.
178
188
  name: nil,
179
189
  # Number Pool allows you to send messages from a pool of numbers of different
@@ -219,6 +229,7 @@ module Telnyx
219
229
  enabled: T::Boolean,
220
230
  mms_fall_back_to_sms: T::Boolean,
221
231
  mms_transcoding: T::Boolean,
232
+ mobile_only: T::Boolean,
222
233
  name: String,
223
234
  number_pool_settings: T.nilable(Telnyx::NumberPoolSettings),
224
235
  url_shortener_settings: T.nilable(Telnyx::URLShortenerSettings),
@@ -58,6 +58,208 @@ module Telnyx
58
58
  end
59
59
  def to_hash
60
60
  end
61
+
62
+ class Data < Telnyx::Internal::Type::BaseModel
63
+ OrHash =
64
+ T.type_alias do
65
+ T.any(
66
+ Telnyx::Models::NetworkListInterfacesResponse::Data,
67
+ Telnyx::Internal::AnyHash
68
+ )
69
+ end
70
+
71
+ # A user specified name for the interface.
72
+ sig { returns(T.nilable(String)) }
73
+ attr_reader :name
74
+
75
+ sig { params(name: String).void }
76
+ attr_writer :name
77
+
78
+ # The id of the network associated with the interface.
79
+ sig { returns(T.nilable(String)) }
80
+ attr_reader :network_id
81
+
82
+ sig { params(network_id: String).void }
83
+ attr_writer :network_id
84
+
85
+ sig do
86
+ returns(
87
+ T.nilable(
88
+ Telnyx::Models::NetworkListInterfacesResponse::Data::Region
89
+ )
90
+ )
91
+ end
92
+ attr_reader :region
93
+
94
+ sig do
95
+ params(
96
+ region:
97
+ Telnyx::Models::NetworkListInterfacesResponse::Data::Region::OrHash
98
+ ).void
99
+ end
100
+ attr_writer :region
101
+
102
+ # The region interface is deployed to.
103
+ sig { returns(T.nilable(String)) }
104
+ attr_reader :region_code
105
+
106
+ sig { params(region_code: String).void }
107
+ attr_writer :region_code
108
+
109
+ # Identifies the resource.
110
+ sig { returns(T.nilable(String)) }
111
+ attr_reader :id
112
+
113
+ sig { params(id: String).void }
114
+ attr_writer :id
115
+
116
+ # ISO 8601 formatted date-time indicating when the resource was created.
117
+ sig { returns(T.nilable(String)) }
118
+ attr_reader :created_at
119
+
120
+ sig { params(created_at: String).void }
121
+ attr_writer :created_at
122
+
123
+ # Identifies the type of the resource.
124
+ sig { returns(T.nilable(String)) }
125
+ attr_reader :record_type
126
+
127
+ sig { params(record_type: String).void }
128
+ attr_writer :record_type
129
+
130
+ # ISO 8601 formatted date-time indicating when the resource was updated.
131
+ sig { returns(T.nilable(String)) }
132
+ attr_reader :updated_at
133
+
134
+ sig { params(updated_at: String).void }
135
+ attr_writer :updated_at
136
+
137
+ # The current status of the interface deployment.
138
+ sig { returns(T.nilable(Telnyx::InterfaceStatus::TaggedSymbol)) }
139
+ attr_reader :status
140
+
141
+ sig { params(status: Telnyx::InterfaceStatus::OrSymbol).void }
142
+ attr_writer :status
143
+
144
+ # Identifies the type of the interface.
145
+ sig { returns(T.nilable(String)) }
146
+ attr_reader :type
147
+
148
+ sig { params(type: String).void }
149
+ attr_writer :type
150
+
151
+ sig do
152
+ params(
153
+ id: String,
154
+ created_at: String,
155
+ record_type: String,
156
+ updated_at: String,
157
+ name: String,
158
+ network_id: String,
159
+ status: Telnyx::InterfaceStatus::OrSymbol,
160
+ region:
161
+ Telnyx::Models::NetworkListInterfacesResponse::Data::Region::OrHash,
162
+ region_code: String,
163
+ type: String
164
+ ).returns(T.attached_class)
165
+ end
166
+ def self.new(
167
+ # Identifies the resource.
168
+ id: nil,
169
+ # ISO 8601 formatted date-time indicating when the resource was created.
170
+ created_at: nil,
171
+ # Identifies the type of the resource.
172
+ record_type: nil,
173
+ # ISO 8601 formatted date-time indicating when the resource was updated.
174
+ updated_at: nil,
175
+ # A user specified name for the interface.
176
+ name: nil,
177
+ # The id of the network associated with the interface.
178
+ network_id: nil,
179
+ # The current status of the interface deployment.
180
+ status: nil,
181
+ region: nil,
182
+ # The region interface is deployed to.
183
+ region_code: nil,
184
+ # Identifies the type of the interface.
185
+ type: nil
186
+ )
187
+ end
188
+
189
+ sig do
190
+ override.returns(
191
+ {
192
+ id: String,
193
+ created_at: String,
194
+ record_type: String,
195
+ updated_at: String,
196
+ name: String,
197
+ network_id: String,
198
+ status: Telnyx::InterfaceStatus::TaggedSymbol,
199
+ region:
200
+ Telnyx::Models::NetworkListInterfacesResponse::Data::Region,
201
+ region_code: String,
202
+ type: String
203
+ }
204
+ )
205
+ end
206
+ def to_hash
207
+ end
208
+
209
+ class Region < Telnyx::Internal::Type::BaseModel
210
+ OrHash =
211
+ T.type_alias do
212
+ T.any(
213
+ Telnyx::Models::NetworkListInterfacesResponse::Data::Region,
214
+ Telnyx::Internal::AnyHash
215
+ )
216
+ end
217
+
218
+ # Region code of the interface.
219
+ sig { returns(T.nilable(String)) }
220
+ attr_reader :code
221
+
222
+ sig { params(code: String).void }
223
+ attr_writer :code
224
+
225
+ # Region name of the interface.
226
+ sig { returns(T.nilable(String)) }
227
+ attr_reader :name
228
+
229
+ sig { params(name: String).void }
230
+ attr_writer :name
231
+
232
+ # Identifies the type of the resource.
233
+ sig { returns(T.nilable(String)) }
234
+ attr_reader :record_type
235
+
236
+ sig { params(record_type: String).void }
237
+ attr_writer :record_type
238
+
239
+ sig do
240
+ params(code: String, name: String, record_type: String).returns(
241
+ T.attached_class
242
+ )
243
+ end
244
+ def self.new(
245
+ # Region code of the interface.
246
+ code: nil,
247
+ # Region name of the interface.
248
+ name: nil,
249
+ # Identifies the type of the resource.
250
+ record_type: nil
251
+ )
252
+ end
253
+
254
+ sig do
255
+ override.returns(
256
+ { code: String, name: String, record_type: String }
257
+ )
258
+ end
259
+ def to_hash
260
+ end
261
+ end
262
+ end
61
263
  end
62
264
  end
63
265
  end
@@ -42,6 +42,208 @@ module Telnyx
42
42
  end
43
43
  def to_hash
44
44
  end
45
+
46
+ class Data < Telnyx::Internal::Type::BaseModel
47
+ OrHash =
48
+ T.type_alias do
49
+ T.any(
50
+ Telnyx::Models::PublicInternetGatewayCreateResponse::Data,
51
+ Telnyx::Internal::AnyHash
52
+ )
53
+ end
54
+
55
+ # A user specified name for the interface.
56
+ sig { returns(T.nilable(String)) }
57
+ attr_reader :name
58
+
59
+ sig { params(name: String).void }
60
+ attr_writer :name
61
+
62
+ # The id of the network associated with the interface.
63
+ sig { returns(T.nilable(String)) }
64
+ attr_reader :network_id
65
+
66
+ sig { params(network_id: String).void }
67
+ attr_writer :network_id
68
+
69
+ sig do
70
+ returns(
71
+ T.nilable(
72
+ Telnyx::Models::PublicInternetGatewayCreateResponse::Data::Region
73
+ )
74
+ )
75
+ end
76
+ attr_reader :region
77
+
78
+ sig do
79
+ params(
80
+ region:
81
+ Telnyx::Models::PublicInternetGatewayCreateResponse::Data::Region::OrHash
82
+ ).void
83
+ end
84
+ attr_writer :region
85
+
86
+ # The region interface is deployed to.
87
+ sig { returns(T.nilable(String)) }
88
+ attr_reader :region_code
89
+
90
+ sig { params(region_code: String).void }
91
+ attr_writer :region_code
92
+
93
+ # Identifies the resource.
94
+ sig { returns(T.nilable(String)) }
95
+ attr_reader :id
96
+
97
+ sig { params(id: String).void }
98
+ attr_writer :id
99
+
100
+ # ISO 8601 formatted date-time indicating when the resource was created.
101
+ sig { returns(T.nilable(String)) }
102
+ attr_reader :created_at
103
+
104
+ sig { params(created_at: String).void }
105
+ attr_writer :created_at
106
+
107
+ # Identifies the type of the resource.
108
+ sig { returns(T.nilable(String)) }
109
+ attr_reader :record_type
110
+
111
+ sig { params(record_type: String).void }
112
+ attr_writer :record_type
113
+
114
+ # ISO 8601 formatted date-time indicating when the resource was updated.
115
+ sig { returns(T.nilable(String)) }
116
+ attr_reader :updated_at
117
+
118
+ sig { params(updated_at: String).void }
119
+ attr_writer :updated_at
120
+
121
+ # The current status of the interface deployment.
122
+ sig { returns(T.nilable(Telnyx::InterfaceStatus::TaggedSymbol)) }
123
+ attr_reader :status
124
+
125
+ sig { params(status: Telnyx::InterfaceStatus::OrSymbol).void }
126
+ attr_writer :status
127
+
128
+ # The publically accessible ip for this interface.
129
+ sig { returns(T.nilable(String)) }
130
+ attr_reader :public_ip
131
+
132
+ sig { params(public_ip: String).void }
133
+ attr_writer :public_ip
134
+
135
+ sig do
136
+ params(
137
+ id: String,
138
+ created_at: String,
139
+ record_type: String,
140
+ updated_at: String,
141
+ name: String,
142
+ network_id: String,
143
+ status: Telnyx::InterfaceStatus::OrSymbol,
144
+ public_ip: String,
145
+ region:
146
+ Telnyx::Models::PublicInternetGatewayCreateResponse::Data::Region::OrHash,
147
+ region_code: String
148
+ ).returns(T.attached_class)
149
+ end
150
+ def self.new(
151
+ # Identifies the resource.
152
+ id: nil,
153
+ # ISO 8601 formatted date-time indicating when the resource was created.
154
+ created_at: nil,
155
+ # Identifies the type of the resource.
156
+ record_type: nil,
157
+ # ISO 8601 formatted date-time indicating when the resource was updated.
158
+ updated_at: nil,
159
+ # A user specified name for the interface.
160
+ name: nil,
161
+ # The id of the network associated with the interface.
162
+ network_id: nil,
163
+ # The current status of the interface deployment.
164
+ status: nil,
165
+ # The publically accessible ip for this interface.
166
+ public_ip: nil,
167
+ region: nil,
168
+ # The region interface is deployed to.
169
+ region_code: nil
170
+ )
171
+ end
172
+
173
+ sig do
174
+ override.returns(
175
+ {
176
+ id: String,
177
+ created_at: String,
178
+ record_type: String,
179
+ updated_at: String,
180
+ name: String,
181
+ network_id: String,
182
+ status: Telnyx::InterfaceStatus::TaggedSymbol,
183
+ public_ip: String,
184
+ region:
185
+ Telnyx::Models::PublicInternetGatewayCreateResponse::Data::Region,
186
+ region_code: String
187
+ }
188
+ )
189
+ end
190
+ def to_hash
191
+ end
192
+
193
+ class Region < Telnyx::Internal::Type::BaseModel
194
+ OrHash =
195
+ T.type_alias do
196
+ T.any(
197
+ Telnyx::Models::PublicInternetGatewayCreateResponse::Data::Region,
198
+ Telnyx::Internal::AnyHash
199
+ )
200
+ end
201
+
202
+ # Region code of the interface.
203
+ sig { returns(T.nilable(String)) }
204
+ attr_reader :code
205
+
206
+ sig { params(code: String).void }
207
+ attr_writer :code
208
+
209
+ # Region name of the interface.
210
+ sig { returns(T.nilable(String)) }
211
+ attr_reader :name
212
+
213
+ sig { params(name: String).void }
214
+ attr_writer :name
215
+
216
+ # Identifies the type of the resource.
217
+ sig { returns(T.nilable(String)) }
218
+ attr_reader :record_type
219
+
220
+ sig { params(record_type: String).void }
221
+ attr_writer :record_type
222
+
223
+ sig do
224
+ params(code: String, name: String, record_type: String).returns(
225
+ T.attached_class
226
+ )
227
+ end
228
+ def self.new(
229
+ # Region code of the interface.
230
+ code: nil,
231
+ # Region name of the interface.
232
+ name: nil,
233
+ # Identifies the type of the resource.
234
+ record_type: nil
235
+ )
236
+ end
237
+
238
+ sig do
239
+ override.returns(
240
+ { code: String, name: String, record_type: String }
241
+ )
242
+ end
243
+ def to_hash
244
+ end
245
+ end
246
+ end
45
247
  end
46
248
  end
47
249
  end