@sentdm/sentdm 0.40.0 → 0.42.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 (139) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/client.d.mts +18 -3
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +18 -3
  5. package/client.d.ts.map +1 -1
  6. package/client.js +13 -0
  7. package/client.js.map +1 -1
  8. package/client.mjs +13 -0
  9. package/client.mjs.map +1 -1
  10. package/core/pagination.d.mts +25 -0
  11. package/core/pagination.d.mts.map +1 -1
  12. package/core/pagination.d.ts +25 -0
  13. package/core/pagination.d.ts.map +1 -1
  14. package/core/pagination.js +28 -1
  15. package/core/pagination.js.map +1 -1
  16. package/core/pagination.mjs +26 -0
  17. package/core/pagination.mjs.map +1 -1
  18. package/package.json +1 -1
  19. package/resources/calls/calls.d.mts +386 -0
  20. package/resources/calls/calls.d.mts.map +1 -0
  21. package/resources/calls/calls.d.ts +386 -0
  22. package/resources/calls/calls.d.ts.map +1 -0
  23. package/resources/calls/calls.js +158 -0
  24. package/resources/calls/calls.js.map +1 -0
  25. package/resources/calls/calls.mjs +153 -0
  26. package/resources/calls/calls.mjs.map +1 -0
  27. package/resources/calls/index.d.mts +3 -0
  28. package/resources/calls/index.d.mts.map +1 -0
  29. package/resources/calls/index.d.ts +3 -0
  30. package/resources/calls/index.d.ts.map +1 -0
  31. package/resources/calls/index.js +9 -0
  32. package/resources/calls/index.js.map +1 -0
  33. package/resources/calls/index.mjs +4 -0
  34. package/resources/calls/index.mjs.map +1 -0
  35. package/resources/calls/participants.d.mts +258 -0
  36. package/resources/calls/participants.d.mts.map +1 -0
  37. package/resources/calls/participants.d.ts +258 -0
  38. package/resources/calls/participants.d.ts.map +1 -0
  39. package/resources/calls/participants.js +158 -0
  40. package/resources/calls/participants.js.map +1 -0
  41. package/resources/calls/participants.mjs +154 -0
  42. package/resources/calls/participants.mjs.map +1 -0
  43. package/resources/calls.d.mts +2 -0
  44. package/resources/calls.d.mts.map +1 -0
  45. package/resources/calls.d.ts +2 -0
  46. package/resources/calls.d.ts.map +1 -0
  47. package/resources/calls.js +6 -0
  48. package/resources/calls.js.map +1 -0
  49. package/resources/calls.mjs +3 -0
  50. package/resources/calls.mjs.map +1 -0
  51. package/resources/channels/channels.d.mts +10 -0
  52. package/resources/channels/channels.d.mts.map +1 -0
  53. package/resources/channels/channels.d.ts +10 -0
  54. package/resources/channels/channels.d.ts.map +1 -0
  55. package/resources/channels/channels.js +17 -0
  56. package/resources/channels/channels.js.map +1 -0
  57. package/resources/channels/channels.mjs +12 -0
  58. package/resources/channels/channels.mjs.map +1 -0
  59. package/resources/channels/index.d.mts +3 -0
  60. package/resources/channels/index.d.mts.map +1 -0
  61. package/resources/channels/index.d.ts +3 -0
  62. package/resources/channels/index.d.ts.map +1 -0
  63. package/resources/channels/index.js +9 -0
  64. package/resources/channels/index.js.map +1 -0
  65. package/resources/channels/index.mjs +4 -0
  66. package/resources/channels/index.mjs.map +1 -0
  67. package/resources/channels/voice.d.mts +654 -0
  68. package/resources/channels/voice.d.mts.map +1 -0
  69. package/resources/channels/voice.d.ts +654 -0
  70. package/resources/channels/voice.d.ts.map +1 -0
  71. package/resources/channels/voice.js +285 -0
  72. package/resources/channels/voice.js.map +1 -0
  73. package/resources/channels/voice.mjs +281 -0
  74. package/resources/channels/voice.mjs.map +1 -0
  75. package/resources/channels.d.mts +2 -0
  76. package/resources/channels.d.mts.map +1 -0
  77. package/resources/channels.d.ts +2 -0
  78. package/resources/channels.d.ts.map +1 -0
  79. package/resources/channels.js +6 -0
  80. package/resources/channels.js.map +1 -0
  81. package/resources/channels.mjs +3 -0
  82. package/resources/channels.mjs.map +1 -0
  83. package/resources/conversations.d.mts +63 -8
  84. package/resources/conversations.d.mts.map +1 -1
  85. package/resources/conversations.d.ts +63 -8
  86. package/resources/conversations.d.ts.map +1 -1
  87. package/resources/index.d.mts +3 -1
  88. package/resources/index.d.mts.map +1 -1
  89. package/resources/index.d.ts +3 -1
  90. package/resources/index.d.ts.map +1 -1
  91. package/resources/index.js +5 -1
  92. package/resources/index.js.map +1 -1
  93. package/resources/index.mjs +2 -0
  94. package/resources/index.mjs.map +1 -1
  95. package/resources/me.d.mts +21 -0
  96. package/resources/me.d.mts.map +1 -1
  97. package/resources/me.d.ts +21 -0
  98. package/resources/me.d.ts.map +1 -1
  99. package/resources/me.js +5 -0
  100. package/resources/me.js.map +1 -1
  101. package/resources/me.mjs +5 -0
  102. package/resources/me.mjs.map +1 -1
  103. package/resources/messages.d.mts +76 -8
  104. package/resources/messages.d.mts.map +1 -1
  105. package/resources/messages.d.ts +76 -8
  106. package/resources/messages.d.ts.map +1 -1
  107. package/resources/templates.d.mts +7 -0
  108. package/resources/templates.d.mts.map +1 -1
  109. package/resources/templates.d.ts +7 -0
  110. package/resources/templates.d.ts.map +1 -1
  111. package/resources/webhooks.d.mts +212 -8
  112. package/resources/webhooks.d.mts.map +1 -1
  113. package/resources/webhooks.d.ts +212 -8
  114. package/resources/webhooks.d.ts.map +1 -1
  115. package/resources/webhooks.js +3 -1
  116. package/resources/webhooks.js.map +1 -1
  117. package/resources/webhooks.mjs +3 -1
  118. package/resources/webhooks.mjs.map +1 -1
  119. package/src/client.ts +60 -0
  120. package/src/core/pagination.ts +59 -0
  121. package/src/resources/calls/calls.ts +554 -0
  122. package/src/resources/calls/index.ts +31 -0
  123. package/src/resources/calls/participants.ts +367 -0
  124. package/src/resources/calls.ts +3 -0
  125. package/src/resources/channels/channels.ts +61 -0
  126. package/src/resources/channels/index.ts +27 -0
  127. package/src/resources/channels/voice.ts +864 -0
  128. package/src/resources/channels.ts +3 -0
  129. package/src/resources/conversations.ts +70 -8
  130. package/src/resources/index.ts +21 -0
  131. package/src/resources/me.ts +22 -0
  132. package/src/resources/messages.ts +85 -8
  133. package/src/resources/templates.ts +8 -0
  134. package/src/resources/webhooks.ts +238 -7
  135. package/src/version.ts +1 -1
  136. package/version.d.mts +1 -1
  137. package/version.d.ts +1 -1
  138. package/version.js +1 -1
  139. package/version.mjs +1 -1
@@ -0,0 +1,367 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../core/resource';
4
+ import * as WebhooksAPI from '../webhooks';
5
+ import * as CallsAPI from './calls';
6
+ import { APIPromise } from '../../core/api-promise';
7
+ import { buildHeaders } from '../../internal/headers';
8
+ import { RequestOptions } from '../../internal/request-options';
9
+ import { path } from '../../internal/utils/path';
10
+
11
+ /**
12
+ * Phone calls from the numbers you hold, driven by your own callback URL.
13
+ *
14
+ * `POST /v3/channels/voice` enables a number for calls, with the callback URL Sent asks what to do with each call on it, and `POST /v3/channels/voice/tokens` mints a short-lived token that lets a user of your app place and receive calls as that number. When a call arrives or a caller presses a key, a signed question is POSTed to the callback URL and the answer decides the call; `POST /v3/channels/voice/{number}/test` checks the URL answers the way we need before a real call reaches it, and `POST /v3/channels/voice/{number}/rotate-secret` replaces the signing secret. The call events themselves (`call.completed` and the rest) arrive through your webhooks.
15
+ *
16
+ * Every call is a record under `/v3/calls`: read it, list its recordings once one is ready, hang it up, start or stop recording, and add, mute or remove conference participants while it is live. A leg to a phone number runs for at most what your balance affords at the destination's rate.
17
+ */
18
+ export class Participants extends APIResource {
19
+ /**
20
+ * Mutes or unmutes one participant of the conference room a live call is in, named
21
+ * by the participant's own call id from the participants list: send muted true to
22
+ * silence them, muted false to let them be heard again. Muting a participant who
23
+ * is already muted succeeds, as does unmuting one who is not. A participant who is
24
+ * not in this call's room answers 404. A call that has ended answers 409, as does
25
+ * a call that is not in a conference.
26
+ *
27
+ * @example
28
+ * ```ts
29
+ * await client.calls.participants.update(
30
+ * 'call_9f2ab000-0000-4000-8000-000000000002',
31
+ * { id: 'call_9f2ab000-0000-4000-8000-000000000001' },
32
+ * );
33
+ * ```
34
+ */
35
+ update(participantID: string, params: ParticipantUpdateParams, options?: RequestOptions): APIPromise<void> {
36
+ const { id, 'Idempotency-Key': idempotencyKey, 'x-profile-id': xProfileID, ...body } = params;
37
+ return this._client.patch(path`/v3/calls/${id}/participants/${participantID}`, {
38
+ body,
39
+ ...options,
40
+ headers: buildHeaders([
41
+ {
42
+ Accept: '*/*',
43
+ ...(idempotencyKey != null ? { 'Idempotency-Key': idempotencyKey } : undefined),
44
+ ...(xProfileID != null ? { 'x-profile-id': xProfileID } : undefined),
45
+ },
46
+ options?.headers,
47
+ ]),
48
+ });
49
+ }
50
+
51
+ /**
52
+ * Lists who is in the conference room one of your live calls is in: each
53
+ * participant's own call id, who they are, whether the room mutes them, and how
54
+ * long they have been connected. The call itself is one of the participants. Use a
55
+ * participant's id to mute or remove them; it is also a call id, so GET
56
+ * /v3/calls/{id} accepts it. A call that has ended answers 409, as does a call
57
+ * that is not in a conference.
58
+ *
59
+ * @example
60
+ * ```ts
61
+ * const apiResponseOfListOfCallParticipant =
62
+ * await client.calls.participants.list(
63
+ * 'call_9f2ab000-0000-4000-8000-000000000001',
64
+ * );
65
+ * ```
66
+ */
67
+ list(
68
+ id: string,
69
+ params: ParticipantListParams | null | undefined = {},
70
+ options?: RequestOptions,
71
+ ): APIPromise<APIResponseOfListOfCallParticipant> {
72
+ const { 'x-profile-id': xProfileID } = params ?? {};
73
+ return this._client.get(path`/v3/calls/${id}/participants`, {
74
+ ...options,
75
+ headers: buildHeaders([
76
+ { ...(xProfileID != null ? { 'x-profile-id': xProfileID } : undefined) },
77
+ options?.headers,
78
+ ]),
79
+ });
80
+ }
81
+
82
+ /**
83
+ * Dials one of your app users or a phone number into a call that is in a
84
+ * conference room, and answers with the participant's own call record. The
85
+ * participant is a call of their own: it has its own id, can be looked up and hung
86
+ * up, and is billed and reported through call.completed and call.failed like any
87
+ * other call. A phone participant is called from caller_id, which must be one of
88
+ * your numbers, or from the call's owning number when omitted, and needs a
89
+ * destination you may call and a positive balance. Only a call your answer
90
+ * connected to a conference can take participants: a call connected to a user or a
91
+ * number answers 409.
92
+ *
93
+ * @example
94
+ * ```ts
95
+ * const apiResponseOfCall =
96
+ * await client.calls.participants.add(
97
+ * 'call_9f2ab000-0000-4000-8000-000000000001',
98
+ * );
99
+ * ```
100
+ */
101
+ add(
102
+ id: string,
103
+ params: ParticipantAddParams,
104
+ options?: RequestOptions,
105
+ ): APIPromise<CallsAPI.APIResponseOfCall> {
106
+ const { 'Idempotency-Key': idempotencyKey, 'x-profile-id': xProfileID, ...body } = params;
107
+ return this._client.post(path`/v3/calls/${id}/participants`, {
108
+ body,
109
+ ...options,
110
+ headers: buildHeaders([
111
+ {
112
+ ...(idempotencyKey != null ? { 'Idempotency-Key': idempotencyKey } : undefined),
113
+ ...(xProfileID != null ? { 'x-profile-id': xProfileID } : undefined),
114
+ },
115
+ options?.headers,
116
+ ]),
117
+ });
118
+ }
119
+
120
+ /**
121
+ * Removes one participant from the conference room a live call is in, named by the
122
+ * participant's own call id from the participants list. Their leg ends and is
123
+ * reported through call.completed like any other call; everyone else stays
124
+ * connected. A participant who is not in this call's room answers 404. A call that
125
+ * has ended answers 409, as does a call that is not in a conference.
126
+ *
127
+ * @example
128
+ * ```ts
129
+ * await client.calls.participants.remove(
130
+ * 'call_9f2ab000-0000-4000-8000-000000000002',
131
+ * { id: 'call_9f2ab000-0000-4000-8000-000000000001' },
132
+ * );
133
+ * ```
134
+ */
135
+ remove(participantID: string, params: ParticipantRemoveParams, options?: RequestOptions): APIPromise<void> {
136
+ const { id, 'x-profile-id': xProfileID, ...body } = params;
137
+ return this._client.delete(path`/v3/calls/${id}/participants/${participantID}`, {
138
+ body,
139
+ ...options,
140
+ headers: buildHeaders([
141
+ { Accept: '*/*', ...(xProfileID != null ? { 'x-profile-id': xProfileID } : undefined) },
142
+ options?.headers,
143
+ ]),
144
+ });
145
+ }
146
+
147
+ /**
148
+ * Removes every participant from the conference room a live call is in, the call
149
+ * itself included. Every leg ends and is reported through call.completed like any
150
+ * other call. A room that is already empty answers 204 as well. A call that has
151
+ * ended answers 409, as does a call that is not in a conference.
152
+ *
153
+ * @example
154
+ * ```ts
155
+ * await client.calls.participants.removeAll(
156
+ * 'call_9f2ab000-0000-4000-8000-000000000001',
157
+ * );
158
+ * ```
159
+ */
160
+ removeAll(id: string, params: ParticipantRemoveAllParams, options?: RequestOptions): APIPromise<void> {
161
+ const { 'x-profile-id': xProfileID, ...body } = params;
162
+ return this._client.delete(path`/v3/calls/${id}/participants`, {
163
+ body,
164
+ ...options,
165
+ headers: buildHeaders([
166
+ { Accept: '*/*', ...(xProfileID != null ? { 'x-profile-id': xProfileID } : undefined) },
167
+ options?.headers,
168
+ ]),
169
+ });
170
+ }
171
+ }
172
+
173
+ /**
174
+ * Standard API response envelope for all v3 endpoints
175
+ */
176
+ export interface APIResponseOfListOfCallParticipant {
177
+ /**
178
+ * The response data (null if error)
179
+ */
180
+ data?: Array<CallParticipant> | null;
181
+
182
+ /**
183
+ * Error information
184
+ */
185
+ error?: WebhooksAPI.ErrorDetail | null;
186
+
187
+ /**
188
+ * Request and response metadata
189
+ */
190
+ meta?: WebhooksAPI.APIMeta;
191
+
192
+ /**
193
+ * Indicates whether the request was successful
194
+ */
195
+ success?: boolean;
196
+ }
197
+
198
+ /**
199
+ * A participant of a conference call
200
+ */
201
+ export interface CallParticipant {
202
+ /**
203
+ * The participant's own call id: what the mute and remove endpoints take, and what
204
+ * GET /v3/calls/{id} accepts
205
+ */
206
+ id?: string;
207
+
208
+ /**
209
+ * How long the participant has been connected to the room, in seconds
210
+ */
211
+ duration_seconds?: number;
212
+
213
+ /**
214
+ * user for one of your app users, number for a phone number, anonymous for a
215
+ * caller who withheld their number
216
+ */
217
+ kind?: string;
218
+
219
+ /**
220
+ * True while the room mutes this participant
221
+ */
222
+ muted?: boolean;
223
+
224
+ /**
225
+ * The app user's identity or the phone number in E.164 format. Null when the kind
226
+ * is anonymous
227
+ */
228
+ value?: string | null;
229
+ }
230
+
231
+ /**
232
+ * A participant to add to a call
233
+ */
234
+ export interface CallParticipantTarget {
235
+ /**
236
+ * user for one of your app users, number for a phone number
237
+ */
238
+ kind?: string;
239
+
240
+ /**
241
+ * The app user's identity, or the phone number in E.164 format
242
+ */
243
+ value?: string;
244
+ }
245
+
246
+ export interface ParticipantUpdateParams {
247
+ /**
248
+ * Path param: The call id from the route, as carried by call webhooks and the
249
+ * calls list, for example call_9f2ab000-0000-4000-8000-000000000001
250
+ */
251
+ id: string;
252
+
253
+ /**
254
+ * Body param: true to mute the participant, false to unmute them
255
+ */
256
+ muted?: boolean;
257
+
258
+ /**
259
+ * Body param: Sandbox flag - when true, the operation is simulated without side
260
+ * effects Useful for testing integrations without actual execution
261
+ */
262
+ sandbox?: boolean;
263
+
264
+ /**
265
+ * Header param: Unique key to ensure idempotent request processing. Must be 1-255
266
+ * alphanumeric characters, hyphens, or underscores. Responses are cached for 24
267
+ * hours per key per customer.
268
+ */
269
+ 'Idempotency-Key'?: string;
270
+
271
+ /**
272
+ * Header param: Profile UUID to scope the request to a child profile. Only
273
+ * organization API keys can use this header. The profile must belong to the
274
+ * calling organization.
275
+ */
276
+ 'x-profile-id'?: string;
277
+ }
278
+
279
+ export interface ParticipantListParams {
280
+ /**
281
+ * Profile UUID to scope the request to a child profile. Only organization API keys
282
+ * can use this header. The profile must belong to the calling organization.
283
+ */
284
+ 'x-profile-id'?: string;
285
+ }
286
+
287
+ export interface ParticipantAddParams {
288
+ /**
289
+ * Body param: The number shown to a phone participant as the caller, in E.164
290
+ * format. Must be one of your numbers. The call's owning number when omitted
291
+ */
292
+ caller_id?: string | null;
293
+
294
+ /**
295
+ * Body param: Sandbox flag - when true, the operation is simulated without side
296
+ * effects Useful for testing integrations without actual execution
297
+ */
298
+ sandbox?: boolean;
299
+
300
+ /**
301
+ * Body param: A participant to add to a call
302
+ */
303
+ to?: CallParticipantTarget;
304
+
305
+ /**
306
+ * Header param: Unique key to ensure idempotent request processing. Must be 1-255
307
+ * alphanumeric characters, hyphens, or underscores. Responses are cached for 24
308
+ * hours per key per customer.
309
+ */
310
+ 'Idempotency-Key'?: string;
311
+
312
+ /**
313
+ * Header param: Profile UUID to scope the request to a child profile. Only
314
+ * organization API keys can use this header. The profile must belong to the
315
+ * calling organization.
316
+ */
317
+ 'x-profile-id'?: string;
318
+ }
319
+
320
+ export interface ParticipantRemoveParams {
321
+ /**
322
+ * Path param: The call id from the route, as carried by call webhooks and the
323
+ * calls list, for example call_9f2ab000-0000-4000-8000-000000000001
324
+ */
325
+ id: string;
326
+
327
+ /**
328
+ * Body param: Sandbox flag - when true, the operation is simulated without side
329
+ * effects Useful for testing integrations without actual execution
330
+ */
331
+ sandbox?: boolean;
332
+
333
+ /**
334
+ * Header param: Profile UUID to scope the request to a child profile. Only
335
+ * organization API keys can use this header. The profile must belong to the
336
+ * calling organization.
337
+ */
338
+ 'x-profile-id'?: string;
339
+ }
340
+
341
+ export interface ParticipantRemoveAllParams {
342
+ /**
343
+ * Body param: Sandbox flag - when true, the operation is simulated without side
344
+ * effects Useful for testing integrations without actual execution
345
+ */
346
+ sandbox?: boolean;
347
+
348
+ /**
349
+ * Header param: Profile UUID to scope the request to a child profile. Only
350
+ * organization API keys can use this header. The profile must belong to the
351
+ * calling organization.
352
+ */
353
+ 'x-profile-id'?: string;
354
+ }
355
+
356
+ export declare namespace Participants {
357
+ export {
358
+ type APIResponseOfListOfCallParticipant as APIResponseOfListOfCallParticipant,
359
+ type CallParticipant as CallParticipant,
360
+ type CallParticipantTarget as CallParticipantTarget,
361
+ type ParticipantUpdateParams as ParticipantUpdateParams,
362
+ type ParticipantListParams as ParticipantListParams,
363
+ type ParticipantAddParams as ParticipantAddParams,
364
+ type ParticipantRemoveParams as ParticipantRemoveParams,
365
+ type ParticipantRemoveAllParams as ParticipantRemoveAllParams,
366
+ };
367
+ }
@@ -0,0 +1,3 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export * from './calls/index';
@@ -0,0 +1,61 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../core/resource';
4
+ import * as VoiceAPI from './voice';
5
+ import {
6
+ APIResponseOfListOfVoiceNumber,
7
+ APIResponseOfVoiceCallbackTest,
8
+ APIResponseOfVoiceNumber,
9
+ APIResponseOfVoiceNumberCreated,
10
+ APIResponseOfVoiceSecret,
11
+ APIResponseOfVoiceToken,
12
+ Voice,
13
+ VoiceCallbackTest,
14
+ VoiceCallbackTestErrorInfo,
15
+ VoiceCallbackTestRequestInfo,
16
+ VoiceCallbackTestResponseInfo,
17
+ VoiceCreateParams,
18
+ VoiceCreateTokenParams,
19
+ VoiceListParams,
20
+ VoiceNumber,
21
+ VoiceNumberCreated,
22
+ VoiceRetrieveParams,
23
+ VoiceRotateSecretParams,
24
+ VoiceSecret,
25
+ VoiceTestParams,
26
+ VoiceToken,
27
+ VoiceUpdateParams,
28
+ } from './voice';
29
+
30
+ export class Channels extends APIResource {
31
+ voice: VoiceAPI.Voice = new VoiceAPI.Voice(this._client);
32
+ }
33
+
34
+ Channels.Voice = Voice;
35
+
36
+ export declare namespace Channels {
37
+ export {
38
+ Voice as Voice,
39
+ type APIResponseOfListOfVoiceNumber as APIResponseOfListOfVoiceNumber,
40
+ type APIResponseOfVoiceCallbackTest as APIResponseOfVoiceCallbackTest,
41
+ type APIResponseOfVoiceNumber as APIResponseOfVoiceNumber,
42
+ type APIResponseOfVoiceNumberCreated as APIResponseOfVoiceNumberCreated,
43
+ type APIResponseOfVoiceSecret as APIResponseOfVoiceSecret,
44
+ type APIResponseOfVoiceToken as APIResponseOfVoiceToken,
45
+ type VoiceCallbackTest as VoiceCallbackTest,
46
+ type VoiceCallbackTestErrorInfo as VoiceCallbackTestErrorInfo,
47
+ type VoiceCallbackTestRequestInfo as VoiceCallbackTestRequestInfo,
48
+ type VoiceCallbackTestResponseInfo as VoiceCallbackTestResponseInfo,
49
+ type VoiceNumber as VoiceNumber,
50
+ type VoiceNumberCreated as VoiceNumberCreated,
51
+ type VoiceSecret as VoiceSecret,
52
+ type VoiceToken as VoiceToken,
53
+ type VoiceCreateParams as VoiceCreateParams,
54
+ type VoiceRetrieveParams as VoiceRetrieveParams,
55
+ type VoiceUpdateParams as VoiceUpdateParams,
56
+ type VoiceListParams as VoiceListParams,
57
+ type VoiceCreateTokenParams as VoiceCreateTokenParams,
58
+ type VoiceRotateSecretParams as VoiceRotateSecretParams,
59
+ type VoiceTestParams as VoiceTestParams,
60
+ };
61
+ }
@@ -0,0 +1,27 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export { Channels } from './channels';
4
+ export {
5
+ Voice,
6
+ type APIResponseOfListOfVoiceNumber,
7
+ type APIResponseOfVoiceCallbackTest,
8
+ type APIResponseOfVoiceNumber,
9
+ type APIResponseOfVoiceNumberCreated,
10
+ type APIResponseOfVoiceSecret,
11
+ type APIResponseOfVoiceToken,
12
+ type VoiceCallbackTest,
13
+ type VoiceCallbackTestErrorInfo,
14
+ type VoiceCallbackTestRequestInfo,
15
+ type VoiceCallbackTestResponseInfo,
16
+ type VoiceNumber,
17
+ type VoiceNumberCreated,
18
+ type VoiceSecret,
19
+ type VoiceToken,
20
+ type VoiceCreateParams,
21
+ type VoiceRetrieveParams,
22
+ type VoiceUpdateParams,
23
+ type VoiceListParams,
24
+ type VoiceCreateTokenParams,
25
+ type VoiceRotateSecretParams,
26
+ type VoiceTestParams,
27
+ } from './voice';