@fishjam-cloud/js-server-sdk 0.29.0-rc.2 → 0.30.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.
- package/dist/{chunk-ZKMES6M4.mjs → chunk-VFSCWQBY.mjs} +7 -4
- package/dist/index.d.mts +3294 -174
- package/dist/index.d.ts +3294 -174
- package/dist/index.js +7729 -4131
- package/dist/index.mjs +7797 -4203
- package/dist/integrations/gemini.js +7 -4
- package/dist/integrations/gemini.mjs +1 -1
- package/package.json +9 -6
package/dist/index.d.mts
CHANGED
|
@@ -1,44 +1,16 @@
|
|
|
1
1
|
import { BinaryWriter, BinaryReader } from '@bufbuild/protobuf/wire';
|
|
2
|
-
import { AxiosError } from 'axios';
|
|
3
2
|
|
|
4
3
|
/**
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
*/
|
|
15
|
-
'audioFormat'?: AudioFormat;
|
|
16
|
-
/**
|
|
17
|
-
*
|
|
18
|
-
* @type {AudioSampleRate}
|
|
19
|
-
* @memberof AgentOutput
|
|
20
|
-
*/
|
|
21
|
-
'audioSampleRate'?: AudioSampleRate;
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* The format of the output audio
|
|
25
|
-
* @export
|
|
26
|
-
* @enum {string}
|
|
27
|
-
*/
|
|
28
|
-
declare const AudioFormat: {
|
|
29
|
-
readonly Pcm16: "pcm16";
|
|
30
|
-
};
|
|
31
|
-
type AudioFormat = typeof AudioFormat[keyof typeof AudioFormat];
|
|
32
|
-
/**
|
|
33
|
-
* The sample rate of the output audio
|
|
34
|
-
* @export
|
|
35
|
-
* @enum {string}
|
|
4
|
+
* Fishjam API
|
|
5
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
6
|
+
*
|
|
7
|
+
* The version of the OpenAPI document: 0.30.0
|
|
8
|
+
* Contact: contact@fishjam.io
|
|
9
|
+
*
|
|
10
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
11
|
+
* https://openapi-generator.tech
|
|
12
|
+
* Do not edit the class manually.
|
|
36
13
|
*/
|
|
37
|
-
declare const AudioSampleRate: {
|
|
38
|
-
readonly NUMBER_16000: 16000;
|
|
39
|
-
readonly NUMBER_24000: 24000;
|
|
40
|
-
};
|
|
41
|
-
type AudioSampleRate = typeof AudioSampleRate[keyof typeof AudioSampleRate];
|
|
42
14
|
/**
|
|
43
15
|
* Connection details for a MoQ relay client
|
|
44
16
|
* @export
|
|
@@ -50,14 +22,26 @@ interface MoqAccess {
|
|
|
50
22
|
* @type {string}
|
|
51
23
|
* @memberof MoqAccess
|
|
52
24
|
*/
|
|
53
|
-
|
|
25
|
+
connection_url: string;
|
|
54
26
|
/**
|
|
55
27
|
* JWT authorizing the MoQ relay connection, also embedded in `connection_url`
|
|
56
28
|
* @type {string}
|
|
57
29
|
* @memberof MoqAccess
|
|
58
30
|
*/
|
|
59
|
-
|
|
31
|
+
token: string;
|
|
60
32
|
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Fishjam API
|
|
36
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
37
|
+
*
|
|
38
|
+
* The version of the OpenAPI document: 0.30.0
|
|
39
|
+
* Contact: contact@fishjam.io
|
|
40
|
+
*
|
|
41
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
42
|
+
* https://openapi-generator.tech
|
|
43
|
+
* Do not edit the class manually.
|
|
44
|
+
*/
|
|
61
45
|
/**
|
|
62
46
|
* MoQ access configuration
|
|
63
47
|
* @export
|
|
@@ -69,69 +53,292 @@ interface MoqAccessConfig {
|
|
|
69
53
|
* @type {string}
|
|
70
54
|
* @memberof MoqAccessConfig
|
|
71
55
|
*/
|
|
72
|
-
|
|
56
|
+
publishPath?: string | null;
|
|
73
57
|
/**
|
|
74
58
|
* Path under the root the token grants subscribe access to
|
|
75
59
|
* @type {string}
|
|
76
60
|
* @memberof MoqAccessConfig
|
|
77
61
|
*/
|
|
78
|
-
|
|
62
|
+
subscribePath?: string | null;
|
|
79
63
|
}
|
|
64
|
+
|
|
80
65
|
/**
|
|
81
|
-
*
|
|
66
|
+
* Fishjam API
|
|
67
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
68
|
+
*
|
|
69
|
+
* The version of the OpenAPI document: 0.30.0
|
|
70
|
+
* Contact: contact@fishjam.io
|
|
71
|
+
*
|
|
72
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
73
|
+
* https://openapi-generator.tech
|
|
74
|
+
* Do not edit the class manually.
|
|
75
|
+
*/
|
|
76
|
+
/**
|
|
77
|
+
* The source for the recording
|
|
82
78
|
* @export
|
|
83
|
-
* @interface
|
|
79
|
+
* @interface RecordingSource
|
|
84
80
|
*/
|
|
85
|
-
interface
|
|
81
|
+
interface RecordingSource {
|
|
86
82
|
/**
|
|
87
|
-
*
|
|
83
|
+
* URL of the composition to record
|
|
88
84
|
* @type {string}
|
|
89
|
-
* @memberof
|
|
85
|
+
* @memberof RecordingSource
|
|
90
86
|
*/
|
|
91
|
-
|
|
87
|
+
compositionURL: string;
|
|
92
88
|
/**
|
|
93
|
-
*
|
|
94
|
-
* @type {
|
|
95
|
-
* @memberof
|
|
89
|
+
* Id of the output being recorded
|
|
90
|
+
* @type {string}
|
|
91
|
+
* @memberof RecordingSource
|
|
92
|
+
*/
|
|
93
|
+
outputId: string;
|
|
94
|
+
/**
|
|
95
|
+
* Scale factor for the recording relative to the source output (>0; may upscale or downscale). Defaults to 1.
|
|
96
|
+
* @type {number}
|
|
97
|
+
* @memberof RecordingSource
|
|
98
|
+
*/
|
|
99
|
+
scaleRatio?: number;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Fishjam API
|
|
104
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
105
|
+
*
|
|
106
|
+
* The version of the OpenAPI document: 0.30.0
|
|
107
|
+
* Contact: contact@fishjam.io
|
|
108
|
+
*
|
|
109
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
110
|
+
* https://openapi-generator.tech
|
|
111
|
+
* Do not edit the class manually.
|
|
112
|
+
*/
|
|
113
|
+
|
|
114
|
+
/**
|
|
115
|
+
* Recording configuration
|
|
116
|
+
* @export
|
|
117
|
+
* @interface RecordingConfig
|
|
118
|
+
*/
|
|
119
|
+
interface RecordingConfig {
|
|
120
|
+
/**
|
|
121
|
+
* Free-form, user-supplied metadata used to organize and filter recordings
|
|
122
|
+
* @type {{ [key: string]: any; }}
|
|
123
|
+
* @memberof RecordingConfig
|
|
96
124
|
*/
|
|
97
|
-
|
|
125
|
+
metadata?: {
|
|
126
|
+
[key: string]: any;
|
|
127
|
+
} | null;
|
|
98
128
|
/**
|
|
99
129
|
*
|
|
100
|
-
* @type {
|
|
101
|
-
* @memberof
|
|
130
|
+
* @type {RecordingSource}
|
|
131
|
+
* @memberof RecordingConfig
|
|
132
|
+
*/
|
|
133
|
+
source: RecordingSource;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* Fishjam API
|
|
138
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
139
|
+
*
|
|
140
|
+
* The version of the OpenAPI document: 0.30.0
|
|
141
|
+
* Contact: contact@fishjam.io
|
|
142
|
+
*
|
|
143
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
144
|
+
* https://openapi-generator.tech
|
|
145
|
+
* Do not edit the class manually.
|
|
146
|
+
*/
|
|
147
|
+
/**
|
|
148
|
+
* Lifecycle status of a recording
|
|
149
|
+
* @export
|
|
150
|
+
*/
|
|
151
|
+
declare const RecordingStatus$1: {
|
|
152
|
+
readonly Active: "active";
|
|
153
|
+
readonly Finished: "finished";
|
|
154
|
+
readonly Available: "available";
|
|
155
|
+
readonly Failed: "failed";
|
|
156
|
+
};
|
|
157
|
+
type RecordingStatus$1 = typeof RecordingStatus$1[keyof typeof RecordingStatus$1];
|
|
158
|
+
|
|
159
|
+
/**
|
|
160
|
+
* Fishjam API
|
|
161
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
162
|
+
*
|
|
163
|
+
* The version of the OpenAPI document: 0.30.0
|
|
164
|
+
* Contact: contact@fishjam.io
|
|
165
|
+
*
|
|
166
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
167
|
+
* https://openapi-generator.tech
|
|
168
|
+
* Do not edit the class manually.
|
|
169
|
+
*/
|
|
170
|
+
/**
|
|
171
|
+
* A single media file of a recording
|
|
172
|
+
* @export
|
|
173
|
+
* @interface RecordingFile
|
|
174
|
+
*/
|
|
175
|
+
interface RecordingFile {
|
|
176
|
+
/**
|
|
177
|
+
* Public URL the file is served at
|
|
178
|
+
* @type {string}
|
|
179
|
+
* @memberof RecordingFile
|
|
180
|
+
*/
|
|
181
|
+
url: string;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
/**
|
|
185
|
+
* Fishjam API
|
|
186
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
187
|
+
*
|
|
188
|
+
* The version of the OpenAPI document: 0.30.0
|
|
189
|
+
* Contact: contact@fishjam.io
|
|
190
|
+
*
|
|
191
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
192
|
+
* https://openapi-generator.tech
|
|
193
|
+
* Do not edit the class manually.
|
|
194
|
+
*/
|
|
195
|
+
|
|
196
|
+
/**
|
|
197
|
+
* A recording and its current lifecycle status
|
|
198
|
+
* @export
|
|
199
|
+
* @interface Recording
|
|
200
|
+
*/
|
|
201
|
+
interface Recording$1 {
|
|
202
|
+
/**
|
|
203
|
+
* Media files of the recording, in playback order. Empty until the recording is `available`.
|
|
204
|
+
* @type {Array<RecordingFile>}
|
|
205
|
+
* @memberof Recording
|
|
206
|
+
*/
|
|
207
|
+
files: Array<RecordingFile>;
|
|
208
|
+
/**
|
|
209
|
+
* Assigned recording id
|
|
210
|
+
* @type {string}
|
|
211
|
+
* @memberof Recording
|
|
212
|
+
*/
|
|
213
|
+
id: string;
|
|
214
|
+
/**
|
|
215
|
+
* Free-form, user-supplied metadata used to organize and filter recordings
|
|
216
|
+
* @type {{ [key: string]: any; }}
|
|
217
|
+
* @memberof Recording
|
|
102
218
|
*/
|
|
103
|
-
|
|
219
|
+
metadata?: {
|
|
220
|
+
[key: string]: any;
|
|
221
|
+
} | null;
|
|
104
222
|
/**
|
|
105
223
|
*
|
|
106
|
-
* @type {
|
|
107
|
-
* @memberof
|
|
224
|
+
* @type {RecordingSource}
|
|
225
|
+
* @memberof Recording
|
|
108
226
|
*/
|
|
109
|
-
|
|
227
|
+
source: RecordingSource;
|
|
110
228
|
/**
|
|
111
229
|
*
|
|
112
|
-
* @type {
|
|
113
|
-
* @memberof
|
|
230
|
+
* @type {RecordingStatus}
|
|
231
|
+
* @memberof Recording
|
|
114
232
|
*/
|
|
115
|
-
|
|
233
|
+
status: RecordingStatus$1;
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
/**
|
|
237
|
+
* Fishjam API
|
|
238
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
239
|
+
*
|
|
240
|
+
* The version of the OpenAPI document: 0.30.0
|
|
241
|
+
* Contact: contact@fishjam.io
|
|
242
|
+
*
|
|
243
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
244
|
+
* https://openapi-generator.tech
|
|
245
|
+
* Do not edit the class manually.
|
|
246
|
+
*/
|
|
247
|
+
/**
|
|
248
|
+
* The sample rate of the output audio
|
|
249
|
+
* @export
|
|
250
|
+
*/
|
|
251
|
+
declare const AudioSampleRate: {
|
|
252
|
+
readonly NUMBER_16000: 16000;
|
|
253
|
+
readonly NUMBER_24000: 24000;
|
|
254
|
+
};
|
|
255
|
+
type AudioSampleRate = typeof AudioSampleRate[keyof typeof AudioSampleRate];
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* Fishjam API
|
|
259
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
260
|
+
*
|
|
261
|
+
* The version of the OpenAPI document: 0.30.0
|
|
262
|
+
* Contact: contact@fishjam.io
|
|
263
|
+
*
|
|
264
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
265
|
+
* https://openapi-generator.tech
|
|
266
|
+
* Do not edit the class manually.
|
|
267
|
+
*/
|
|
268
|
+
/**
|
|
269
|
+
* The format of the output audio
|
|
270
|
+
* @export
|
|
271
|
+
*/
|
|
272
|
+
declare const AudioFormat: {
|
|
273
|
+
readonly Pcm16: "pcm16";
|
|
274
|
+
};
|
|
275
|
+
type AudioFormat = typeof AudioFormat[keyof typeof AudioFormat];
|
|
276
|
+
|
|
277
|
+
/**
|
|
278
|
+
* Fishjam API
|
|
279
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
280
|
+
*
|
|
281
|
+
* The version of the OpenAPI document: 0.30.0
|
|
282
|
+
* Contact: contact@fishjam.io
|
|
283
|
+
*
|
|
284
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
285
|
+
* https://openapi-generator.tech
|
|
286
|
+
* Do not edit the class manually.
|
|
287
|
+
*/
|
|
288
|
+
|
|
289
|
+
/**
|
|
290
|
+
* Output audio options
|
|
291
|
+
* @export
|
|
292
|
+
* @interface AgentOutput
|
|
293
|
+
*/
|
|
294
|
+
interface AgentOutput {
|
|
116
295
|
/**
|
|
117
|
-
*
|
|
118
|
-
* @type {
|
|
119
|
-
* @memberof
|
|
296
|
+
*
|
|
297
|
+
* @type {AudioFormat}
|
|
298
|
+
* @memberof AgentOutput
|
|
120
299
|
*/
|
|
121
|
-
|
|
300
|
+
audioFormat?: AudioFormat;
|
|
122
301
|
/**
|
|
123
302
|
*
|
|
124
|
-
* @type {
|
|
125
|
-
* @memberof
|
|
303
|
+
* @type {AudioSampleRate}
|
|
304
|
+
* @memberof AgentOutput
|
|
126
305
|
*/
|
|
127
|
-
|
|
306
|
+
audioSampleRate?: AudioSampleRate;
|
|
128
307
|
}
|
|
308
|
+
|
|
129
309
|
/**
|
|
130
|
-
*
|
|
131
|
-
*
|
|
310
|
+
* Fishjam API
|
|
311
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
312
|
+
*
|
|
313
|
+
* The version of the OpenAPI document: 0.30.0
|
|
314
|
+
* Contact: contact@fishjam.io
|
|
315
|
+
*
|
|
316
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
317
|
+
* https://openapi-generator.tech
|
|
318
|
+
* Do not edit the class manually.
|
|
319
|
+
*/
|
|
320
|
+
/**
|
|
321
|
+
* Configuration of peer's subscribing policy
|
|
132
322
|
* @export
|
|
133
323
|
*/
|
|
134
|
-
|
|
324
|
+
declare const SubscribeMode: {
|
|
325
|
+
readonly Auto: "auto";
|
|
326
|
+
readonly Manual: "manual";
|
|
327
|
+
};
|
|
328
|
+
type SubscribeMode = typeof SubscribeMode[keyof typeof SubscribeMode];
|
|
329
|
+
|
|
330
|
+
/**
|
|
331
|
+
* Fishjam API
|
|
332
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
333
|
+
*
|
|
334
|
+
* The version of the OpenAPI document: 0.30.0
|
|
335
|
+
* Contact: contact@fishjam.io
|
|
336
|
+
*
|
|
337
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
338
|
+
* https://openapi-generator.tech
|
|
339
|
+
* Do not edit the class manually.
|
|
340
|
+
*/
|
|
341
|
+
|
|
135
342
|
/**
|
|
136
343
|
* Options specific to the Agent peer
|
|
137
344
|
* @export
|
|
@@ -143,14 +350,27 @@ interface PeerOptionsAgent {
|
|
|
143
350
|
* @type {AgentOutput}
|
|
144
351
|
* @memberof PeerOptionsAgent
|
|
145
352
|
*/
|
|
146
|
-
|
|
353
|
+
output?: AgentOutput;
|
|
147
354
|
/**
|
|
148
355
|
*
|
|
149
356
|
* @type {SubscribeMode}
|
|
150
357
|
* @memberof PeerOptionsAgent
|
|
151
358
|
*/
|
|
152
|
-
|
|
359
|
+
subscribeMode?: SubscribeMode;
|
|
153
360
|
}
|
|
361
|
+
|
|
362
|
+
/**
|
|
363
|
+
* Fishjam API
|
|
364
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
365
|
+
*
|
|
366
|
+
* The version of the OpenAPI document: 0.30.0
|
|
367
|
+
* Contact: contact@fishjam.io
|
|
368
|
+
*
|
|
369
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
370
|
+
* https://openapi-generator.tech
|
|
371
|
+
* Do not edit the class manually.
|
|
372
|
+
*/
|
|
373
|
+
|
|
154
374
|
/**
|
|
155
375
|
* Options specific to the VAPI peer
|
|
156
376
|
* @export
|
|
@@ -162,20 +382,33 @@ interface PeerOptionsVapi {
|
|
|
162
382
|
* @type {string}
|
|
163
383
|
* @memberof PeerOptionsVapi
|
|
164
384
|
*/
|
|
165
|
-
|
|
385
|
+
apiKey: string;
|
|
166
386
|
/**
|
|
167
387
|
* VAPI call ID
|
|
168
388
|
* @type {string}
|
|
169
389
|
* @memberof PeerOptionsVapi
|
|
170
390
|
*/
|
|
171
|
-
|
|
391
|
+
callId: string;
|
|
172
392
|
/**
|
|
173
393
|
*
|
|
174
394
|
* @type {SubscribeMode}
|
|
175
395
|
* @memberof PeerOptionsVapi
|
|
176
396
|
*/
|
|
177
|
-
|
|
397
|
+
subscribeMode?: SubscribeMode;
|
|
178
398
|
}
|
|
399
|
+
|
|
400
|
+
/**
|
|
401
|
+
* Fishjam API
|
|
402
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
403
|
+
*
|
|
404
|
+
* The version of the OpenAPI document: 0.30.0
|
|
405
|
+
* Contact: contact@fishjam.io
|
|
406
|
+
*
|
|
407
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
408
|
+
* https://openapi-generator.tech
|
|
409
|
+
* Do not edit the class manually.
|
|
410
|
+
*/
|
|
411
|
+
|
|
179
412
|
/**
|
|
180
413
|
* Options specific to the WebRTC peer
|
|
181
414
|
* @export
|
|
@@ -187,7 +420,7 @@ interface PeerOptionsWebRTC {
|
|
|
187
420
|
* @type {{ [key: string]: any; }}
|
|
188
421
|
* @memberof PeerOptionsWebRTC
|
|
189
422
|
*/
|
|
190
|
-
|
|
423
|
+
metadata?: {
|
|
191
424
|
[key: string]: any;
|
|
192
425
|
};
|
|
193
426
|
/**
|
|
@@ -195,22 +428,75 @@ interface PeerOptionsWebRTC {
|
|
|
195
428
|
* @type {SubscribeMode}
|
|
196
429
|
* @memberof PeerOptionsWebRTC
|
|
197
430
|
*/
|
|
198
|
-
|
|
431
|
+
subscribeMode?: SubscribeMode;
|
|
432
|
+
}
|
|
433
|
+
|
|
434
|
+
/**
|
|
435
|
+
* Fishjam API
|
|
436
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
437
|
+
*
|
|
438
|
+
* The version of the OpenAPI document: 0.30.0
|
|
439
|
+
* Contact: contact@fishjam.io
|
|
440
|
+
*
|
|
441
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
442
|
+
* https://openapi-generator.tech
|
|
443
|
+
* Do not edit the class manually.
|
|
444
|
+
*/
|
|
445
|
+
/**
|
|
446
|
+
* Describes peer's subscriptions in manual mode
|
|
447
|
+
* @export
|
|
448
|
+
* @interface Subscriptions
|
|
449
|
+
*/
|
|
450
|
+
interface Subscriptions {
|
|
451
|
+
/**
|
|
452
|
+
* List of peer IDs this peer subscribes to
|
|
453
|
+
* @type {Array<string>}
|
|
454
|
+
* @memberof Subscriptions
|
|
455
|
+
*/
|
|
456
|
+
peers: Array<string>;
|
|
457
|
+
/**
|
|
458
|
+
* List of track IDs this peer subscribes to
|
|
459
|
+
* @type {Array<string>}
|
|
460
|
+
* @memberof Subscriptions
|
|
461
|
+
*/
|
|
462
|
+
tracks: Array<string>;
|
|
199
463
|
}
|
|
464
|
+
|
|
465
|
+
/**
|
|
466
|
+
* Fishjam API
|
|
467
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
468
|
+
*
|
|
469
|
+
* The version of the OpenAPI document: 0.30.0
|
|
470
|
+
* Contact: contact@fishjam.io
|
|
471
|
+
*
|
|
472
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
473
|
+
* https://openapi-generator.tech
|
|
474
|
+
* Do not edit the class manually.
|
|
475
|
+
*/
|
|
200
476
|
/**
|
|
201
477
|
* Informs about the peer status
|
|
202
478
|
* @export
|
|
203
|
-
* @enum {string}
|
|
204
479
|
*/
|
|
205
480
|
declare const PeerStatus: {
|
|
206
481
|
readonly Connected: "connected";
|
|
207
482
|
readonly Disconnected: "disconnected";
|
|
208
483
|
};
|
|
209
484
|
type PeerStatus = typeof PeerStatus[keyof typeof PeerStatus];
|
|
485
|
+
|
|
486
|
+
/**
|
|
487
|
+
* Fishjam API
|
|
488
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
489
|
+
*
|
|
490
|
+
* The version of the OpenAPI document: 0.30.0
|
|
491
|
+
* Contact: contact@fishjam.io
|
|
492
|
+
*
|
|
493
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
494
|
+
* https://openapi-generator.tech
|
|
495
|
+
* Do not edit the class manually.
|
|
496
|
+
*/
|
|
210
497
|
/**
|
|
211
498
|
* Peer type
|
|
212
499
|
* @export
|
|
213
|
-
* @enum {string}
|
|
214
500
|
*/
|
|
215
501
|
declare const PeerType$1: {
|
|
216
502
|
readonly Webrtc: "webrtc";
|
|
@@ -218,162 +504,2675 @@ declare const PeerType$1: {
|
|
|
218
504
|
readonly Vapi: "vapi";
|
|
219
505
|
};
|
|
220
506
|
type PeerType$1 = typeof PeerType$1[keyof typeof PeerType$1];
|
|
507
|
+
|
|
221
508
|
/**
|
|
222
|
-
*
|
|
509
|
+
* Fishjam API
|
|
510
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
511
|
+
*
|
|
512
|
+
* The version of the OpenAPI document: 0.30.0
|
|
513
|
+
* Contact: contact@fishjam.io
|
|
514
|
+
*
|
|
515
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
516
|
+
* https://openapi-generator.tech
|
|
517
|
+
* Do not edit the class manually.
|
|
518
|
+
*/
|
|
519
|
+
/**
|
|
520
|
+
* Media type carried by the track
|
|
223
521
|
* @export
|
|
224
|
-
* @interface RoomConfig
|
|
225
522
|
*/
|
|
226
|
-
|
|
523
|
+
declare const TrackType$2: {
|
|
524
|
+
readonly Audio: "audio";
|
|
525
|
+
readonly Video: "video";
|
|
526
|
+
};
|
|
527
|
+
type TrackType$2 = typeof TrackType$2[keyof typeof TrackType$2];
|
|
528
|
+
|
|
529
|
+
/**
|
|
530
|
+
* Fishjam API
|
|
531
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
532
|
+
*
|
|
533
|
+
* The version of the OpenAPI document: 0.30.0
|
|
534
|
+
* Contact: contact@fishjam.io
|
|
535
|
+
*
|
|
536
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
537
|
+
* https://openapi-generator.tech
|
|
538
|
+
* Do not edit the class manually.
|
|
539
|
+
*/
|
|
540
|
+
|
|
541
|
+
/**
|
|
542
|
+
* Media track of a Peer
|
|
543
|
+
* @export
|
|
544
|
+
* @interface Track
|
|
545
|
+
*/
|
|
546
|
+
interface Track$2 {
|
|
227
547
|
/**
|
|
228
|
-
*
|
|
229
|
-
* @type {
|
|
230
|
-
* @memberof
|
|
231
|
-
*/
|
|
232
|
-
|
|
548
|
+
* Assigned track id
|
|
549
|
+
* @type {string}
|
|
550
|
+
* @memberof Track
|
|
551
|
+
*/
|
|
552
|
+
id?: string;
|
|
553
|
+
/**
|
|
554
|
+
* Metadata attached to the track by the peer
|
|
555
|
+
* @type {object}
|
|
556
|
+
* @memberof Track
|
|
557
|
+
*/
|
|
558
|
+
metadata?: object | null;
|
|
559
|
+
/**
|
|
560
|
+
*
|
|
561
|
+
* @type {TrackType}
|
|
562
|
+
* @memberof Track
|
|
563
|
+
*/
|
|
564
|
+
type?: TrackType$2;
|
|
565
|
+
}
|
|
566
|
+
|
|
567
|
+
/**
|
|
568
|
+
* Fishjam API
|
|
569
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
570
|
+
*
|
|
571
|
+
* The version of the OpenAPI document: 0.30.0
|
|
572
|
+
* Contact: contact@fishjam.io
|
|
573
|
+
*
|
|
574
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
575
|
+
* https://openapi-generator.tech
|
|
576
|
+
* Do not edit the class manually.
|
|
577
|
+
*/
|
|
578
|
+
|
|
579
|
+
/**
|
|
580
|
+
* Describes peer status
|
|
581
|
+
* @export
|
|
582
|
+
* @interface Peer
|
|
583
|
+
*/
|
|
584
|
+
interface Peer$1 {
|
|
585
|
+
/**
|
|
586
|
+
* Assigned peer id
|
|
587
|
+
* @type {string}
|
|
588
|
+
* @memberof Peer
|
|
589
|
+
*/
|
|
590
|
+
id: string;
|
|
591
|
+
/**
|
|
592
|
+
* Custom metadata set by the peer
|
|
593
|
+
* @type {object}
|
|
594
|
+
* @memberof Peer
|
|
595
|
+
*/
|
|
596
|
+
metadata: object | null;
|
|
597
|
+
/**
|
|
598
|
+
*
|
|
599
|
+
* @type {PeerStatus}
|
|
600
|
+
* @memberof Peer
|
|
601
|
+
*/
|
|
602
|
+
status: PeerStatus;
|
|
603
|
+
/**
|
|
604
|
+
*
|
|
605
|
+
* @type {SubscribeMode}
|
|
606
|
+
* @memberof Peer
|
|
607
|
+
*/
|
|
608
|
+
subscribeMode: SubscribeMode;
|
|
609
|
+
/**
|
|
610
|
+
*
|
|
611
|
+
* @type {Subscriptions}
|
|
612
|
+
* @memberof Peer
|
|
613
|
+
*/
|
|
614
|
+
subscriptions: Subscriptions;
|
|
615
|
+
/**
|
|
616
|
+
* List of all peer's tracks
|
|
617
|
+
* @type {Array<Track>}
|
|
618
|
+
* @memberof Peer
|
|
619
|
+
*/
|
|
620
|
+
tracks: Array<Track$2>;
|
|
621
|
+
/**
|
|
622
|
+
*
|
|
623
|
+
* @type {PeerType}
|
|
624
|
+
* @memberof Peer
|
|
625
|
+
*/
|
|
626
|
+
type: PeerType$1;
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
/**
|
|
630
|
+
* Fishjam API
|
|
631
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
632
|
+
*
|
|
633
|
+
* The version of the OpenAPI document: 0.30.0
|
|
634
|
+
* Contact: contact@fishjam.io
|
|
635
|
+
*
|
|
636
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
637
|
+
* https://openapi-generator.tech
|
|
638
|
+
* Do not edit the class manually.
|
|
639
|
+
*/
|
|
640
|
+
/**
|
|
641
|
+
* The use-case of the room. If not provided, this defaults to conference.
|
|
642
|
+
* @export
|
|
643
|
+
*/
|
|
644
|
+
declare const RoomType: {
|
|
645
|
+
readonly FullFeature: "full_feature";
|
|
646
|
+
readonly AudioOnly: "audio_only";
|
|
647
|
+
readonly Broadcaster: "broadcaster";
|
|
648
|
+
readonly Livestream: "livestream";
|
|
649
|
+
readonly Conference: "conference";
|
|
650
|
+
readonly AudioOnlyLivestream: "audio_only_livestream";
|
|
651
|
+
};
|
|
652
|
+
type RoomType = typeof RoomType[keyof typeof RoomType];
|
|
653
|
+
|
|
654
|
+
/**
|
|
655
|
+
* Fishjam API
|
|
656
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
657
|
+
*
|
|
658
|
+
* The version of the OpenAPI document: 0.30.0
|
|
659
|
+
* Contact: contact@fishjam.io
|
|
660
|
+
*
|
|
661
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
662
|
+
* https://openapi-generator.tech
|
|
663
|
+
* Do not edit the class manually.
|
|
664
|
+
*/
|
|
665
|
+
/**
|
|
666
|
+
* Enforces video codec for each peer in the room
|
|
667
|
+
* @export
|
|
668
|
+
*/
|
|
669
|
+
declare const VideoCodec: {
|
|
670
|
+
readonly H264: "h264";
|
|
671
|
+
readonly Vp8: "vp8";
|
|
672
|
+
};
|
|
673
|
+
type VideoCodec = typeof VideoCodec[keyof typeof VideoCodec];
|
|
674
|
+
|
|
675
|
+
/**
|
|
676
|
+
* Fishjam API
|
|
677
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
678
|
+
*
|
|
679
|
+
* The version of the OpenAPI document: 0.30.0
|
|
680
|
+
* Contact: contact@fishjam.io
|
|
681
|
+
*
|
|
682
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
683
|
+
* https://openapi-generator.tech
|
|
684
|
+
* Do not edit the class manually.
|
|
685
|
+
*/
|
|
686
|
+
|
|
687
|
+
/**
|
|
688
|
+
* Room configuration
|
|
689
|
+
* @export
|
|
690
|
+
* @interface RoomConfig
|
|
691
|
+
*/
|
|
692
|
+
interface RoomConfig {
|
|
693
|
+
/**
|
|
694
|
+
* If true, webhook notifications for this room are coalesced into a single NotificationBatch per HTTP send instead of one request per notification. VAD notifications are unaffected.
|
|
695
|
+
* @type {boolean}
|
|
696
|
+
* @memberof RoomConfig
|
|
697
|
+
*/
|
|
698
|
+
batchWebhookNotifications?: boolean;
|
|
233
699
|
/**
|
|
234
700
|
* Maximum amount of peers allowed into the room
|
|
235
701
|
* @type {number}
|
|
236
702
|
* @memberof RoomConfig
|
|
237
703
|
*/
|
|
238
|
-
|
|
704
|
+
maxPeers?: number | null;
|
|
239
705
|
/**
|
|
240
706
|
* True if livestream viewers can omit specifying a token.
|
|
241
707
|
* @type {boolean}
|
|
242
708
|
* @memberof RoomConfig
|
|
243
709
|
*/
|
|
244
|
-
|
|
710
|
+
public?: boolean;
|
|
711
|
+
/**
|
|
712
|
+
*
|
|
713
|
+
* @type {RoomType}
|
|
714
|
+
* @memberof RoomConfig
|
|
715
|
+
*/
|
|
716
|
+
roomType?: RoomType;
|
|
717
|
+
/**
|
|
718
|
+
*
|
|
719
|
+
* @type {VideoCodec}
|
|
720
|
+
* @memberof RoomConfig
|
|
721
|
+
*/
|
|
722
|
+
videoCodec?: VideoCodec;
|
|
723
|
+
/**
|
|
724
|
+
* Deprecated: configure the webhook in the Dashboard instead. URL where Fishjam notifications will be sent; overrides the Dashboard-configured webhook URL
|
|
725
|
+
* @type {string}
|
|
726
|
+
* @memberof RoomConfig
|
|
727
|
+
* @deprecated
|
|
728
|
+
*/
|
|
729
|
+
webhookUrl?: string | null;
|
|
730
|
+
}
|
|
731
|
+
|
|
732
|
+
/**
|
|
733
|
+
* Fishjam API
|
|
734
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
735
|
+
*
|
|
736
|
+
* The version of the OpenAPI document: 0.30.0
|
|
737
|
+
* Contact: contact@fishjam.io
|
|
738
|
+
*
|
|
739
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
740
|
+
* https://openapi-generator.tech
|
|
741
|
+
* Do not edit the class manually.
|
|
742
|
+
*/
|
|
743
|
+
/**
|
|
744
|
+
* Streamer authorization token
|
|
745
|
+
* @export
|
|
746
|
+
* @interface StreamerToken
|
|
747
|
+
*/
|
|
748
|
+
interface StreamerToken {
|
|
749
|
+
/**
|
|
750
|
+
* Token streamer should authorize with
|
|
751
|
+
* @type {string}
|
|
752
|
+
* @memberof StreamerToken
|
|
753
|
+
*/
|
|
754
|
+
token: string;
|
|
755
|
+
}
|
|
756
|
+
|
|
757
|
+
/**
|
|
758
|
+
* Fishjam API
|
|
759
|
+
* API for managing Fishjam real-time media resources. ## Authentication ## Credentials (Fishjam ID, Fishjam Management Token) can be obtained at https://fishjam.io/app. All requests require HTTP Bearer authorization using the Fishjam Management Token. ## Fishjam SDKs ## For TypeScript and Python users, we provide SDKs that simplify using this API. We recommend using them instead of manually consuming the API in these languages. You can learn more about our SDKs in our [SDK Docs](http://fishjam.swmansion.com/docs/how-to/backend/server-setup)
|
|
760
|
+
*
|
|
761
|
+
* The version of the OpenAPI document: 0.30.0
|
|
762
|
+
* Contact: contact@fishjam.io
|
|
763
|
+
*
|
|
764
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
765
|
+
* https://openapi-generator.tech
|
|
766
|
+
* Do not edit the class manually.
|
|
767
|
+
*/
|
|
768
|
+
/**
|
|
769
|
+
* Viewer authorization token
|
|
770
|
+
* @export
|
|
771
|
+
* @interface ViewerToken
|
|
772
|
+
*/
|
|
773
|
+
interface ViewerToken {
|
|
774
|
+
/**
|
|
775
|
+
* Token viewer should authorize with
|
|
776
|
+
* @type {string}
|
|
777
|
+
* @memberof ViewerToken
|
|
778
|
+
*/
|
|
779
|
+
token: string;
|
|
780
|
+
}
|
|
781
|
+
|
|
782
|
+
/**
|
|
783
|
+
* Composition API
|
|
784
|
+
* Real-time video compositing
|
|
785
|
+
*
|
|
786
|
+
* The version of the OpenAPI document: 0.1.0
|
|
787
|
+
*
|
|
788
|
+
*
|
|
789
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
790
|
+
* https://openapi-generator.tech
|
|
791
|
+
* Do not edit the class manually.
|
|
792
|
+
*/
|
|
793
|
+
/**
|
|
794
|
+
*
|
|
795
|
+
* @export
|
|
796
|
+
* @interface CompositionCreatedResponse
|
|
797
|
+
*/
|
|
798
|
+
interface CompositionCreatedResponse {
|
|
799
|
+
/**
|
|
800
|
+
*
|
|
801
|
+
* @type {string}
|
|
802
|
+
* @memberof CompositionCreatedResponse
|
|
803
|
+
*/
|
|
804
|
+
compositionId: string;
|
|
805
|
+
/**
|
|
806
|
+
*
|
|
807
|
+
* @type {string}
|
|
808
|
+
* @memberof CompositionCreatedResponse
|
|
809
|
+
*/
|
|
810
|
+
apiUrl: string;
|
|
811
|
+
}
|
|
812
|
+
|
|
813
|
+
/**
|
|
814
|
+
* Composition API
|
|
815
|
+
* Real-time video compositing
|
|
816
|
+
*
|
|
817
|
+
* The version of the OpenAPI document: 0.1.0
|
|
818
|
+
*
|
|
819
|
+
*
|
|
820
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
821
|
+
* https://openapi-generator.tech
|
|
822
|
+
* Do not edit the class manually.
|
|
823
|
+
*/
|
|
824
|
+
/**
|
|
825
|
+
*
|
|
826
|
+
* @export
|
|
827
|
+
* @interface CreateCompositionRequest
|
|
828
|
+
*/
|
|
829
|
+
interface CreateCompositionRequest {
|
|
830
|
+
/**
|
|
831
|
+
* If true, outputs will immediately start producing audio and video.
|
|
832
|
+
* If false, call `POST /api/composition/{composition_id}/start` to start the composition.
|
|
833
|
+
* @type {boolean}
|
|
834
|
+
* @memberof CreateCompositionRequest
|
|
835
|
+
*/
|
|
836
|
+
autostart?: boolean;
|
|
837
|
+
/**
|
|
838
|
+
* If true (default), the composition will be cleaned up after 5 minutes when all **inputs**
|
|
839
|
+
* have zero bitrate, regardless of output bitrate. This prevents circular liveness when
|
|
840
|
+
* composition output is sent to a stream.
|
|
841
|
+
* If false, cleanup only triggers when both inputs and outputs have zero bitrate.
|
|
842
|
+
* @type {boolean}
|
|
843
|
+
* @memberof CreateCompositionRequest
|
|
844
|
+
*/
|
|
845
|
+
cleanupWithoutInputs?: boolean;
|
|
846
|
+
}
|
|
847
|
+
|
|
848
|
+
/**
|
|
849
|
+
* Composition API
|
|
850
|
+
* Real-time video compositing
|
|
851
|
+
*
|
|
852
|
+
* The version of the OpenAPI document: 0.1.0
|
|
853
|
+
*
|
|
854
|
+
*
|
|
855
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
856
|
+
* https://openapi-generator.tech
|
|
857
|
+
* Do not edit the class manually.
|
|
858
|
+
*/
|
|
859
|
+
/**
|
|
860
|
+
*
|
|
861
|
+
* @export
|
|
862
|
+
* @interface SendCompositionEventRequest
|
|
863
|
+
*/
|
|
864
|
+
interface SendCompositionEventRequest {
|
|
865
|
+
/**
|
|
866
|
+
* Name of the event delivered to the composition's templates.
|
|
867
|
+
* @type {string}
|
|
868
|
+
* @memberof SendCompositionEventRequest
|
|
869
|
+
*/
|
|
870
|
+
eventName: string;
|
|
871
|
+
/**
|
|
872
|
+
*
|
|
873
|
+
* @type {any}
|
|
874
|
+
* @memberof SendCompositionEventRequest
|
|
875
|
+
*/
|
|
876
|
+
data?: any | null;
|
|
877
|
+
}
|
|
878
|
+
|
|
879
|
+
/**
|
|
880
|
+
* Composition API
|
|
881
|
+
* Real-time video compositing
|
|
882
|
+
*
|
|
883
|
+
* The version of the OpenAPI document: 0.1.0
|
|
884
|
+
*
|
|
885
|
+
*
|
|
886
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
887
|
+
* https://openapi-generator.tech
|
|
888
|
+
* Do not edit the class manually.
|
|
889
|
+
*/
|
|
890
|
+
/**
|
|
891
|
+
* Input stream from an MP4 file.
|
|
892
|
+
* @export
|
|
893
|
+
* @interface Mp4Input
|
|
894
|
+
*/
|
|
895
|
+
interface Mp4Input {
|
|
896
|
+
/**
|
|
897
|
+
* URL of the MP4 file.
|
|
898
|
+
* @type {string}
|
|
899
|
+
* @memberof Mp4Input
|
|
900
|
+
*/
|
|
901
|
+
url: string;
|
|
902
|
+
/**
|
|
903
|
+
* (**default=`false`**) If input should be played in the loop. <span class="badge badge--primary">Added in v0.4.0</span>
|
|
904
|
+
* @type {boolean}
|
|
905
|
+
* @memberof Mp4Input
|
|
906
|
+
*/
|
|
907
|
+
loop?: boolean | null;
|
|
908
|
+
/**
|
|
909
|
+
*
|
|
910
|
+
* @type {Mp4InputTypeEnum}
|
|
911
|
+
* @memberof Mp4Input
|
|
912
|
+
*/
|
|
913
|
+
type: Mp4InputTypeEnum;
|
|
914
|
+
}
|
|
915
|
+
/**
|
|
916
|
+
* @export
|
|
917
|
+
*/
|
|
918
|
+
declare const Mp4InputTypeEnum: {
|
|
919
|
+
readonly Mp4: "mp4";
|
|
920
|
+
};
|
|
921
|
+
type Mp4InputTypeEnum = (typeof Mp4InputTypeEnum)[keyof typeof Mp4InputTypeEnum];
|
|
922
|
+
|
|
923
|
+
/**
|
|
924
|
+
* Composition API
|
|
925
|
+
* Real-time video compositing
|
|
926
|
+
*
|
|
927
|
+
* The version of the OpenAPI document: 0.1.0
|
|
928
|
+
*
|
|
929
|
+
*
|
|
930
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
931
|
+
* https://openapi-generator.tech
|
|
932
|
+
* Do not edit the class manually.
|
|
933
|
+
*/
|
|
934
|
+
/**
|
|
935
|
+
*
|
|
936
|
+
* @export
|
|
937
|
+
* @interface RtmpInput
|
|
938
|
+
*/
|
|
939
|
+
interface RtmpInput {
|
|
940
|
+
/**
|
|
941
|
+
* The RTMP stream key.
|
|
942
|
+
* This is the path segment of the RTMP stream URL that Smelter listens on for incoming streams.
|
|
943
|
+
* Format: `rtmp://<ip_address>:<port>/<stream_key>`
|
|
944
|
+
* @type {string}
|
|
945
|
+
* @memberof RtmpInput
|
|
946
|
+
*/
|
|
947
|
+
streamKey: string;
|
|
948
|
+
/**
|
|
949
|
+
*
|
|
950
|
+
* @type {RtmpInputTypeEnum}
|
|
951
|
+
* @memberof RtmpInput
|
|
952
|
+
*/
|
|
953
|
+
type: RtmpInputTypeEnum;
|
|
954
|
+
}
|
|
955
|
+
/**
|
|
956
|
+
* @export
|
|
957
|
+
*/
|
|
958
|
+
declare const RtmpInputTypeEnum: {
|
|
959
|
+
readonly RtmpServer: "rtmp_server";
|
|
960
|
+
};
|
|
961
|
+
type RtmpInputTypeEnum = (typeof RtmpInputTypeEnum)[keyof typeof RtmpInputTypeEnum];
|
|
962
|
+
|
|
963
|
+
/**
|
|
964
|
+
* Composition API
|
|
965
|
+
* Real-time video compositing
|
|
966
|
+
*
|
|
967
|
+
* The version of the OpenAPI document: 0.1.0
|
|
968
|
+
*
|
|
969
|
+
*
|
|
970
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
971
|
+
* https://openapi-generator.tech
|
|
972
|
+
* Do not edit the class manually.
|
|
973
|
+
*/
|
|
974
|
+
/**
|
|
975
|
+
*
|
|
976
|
+
* @export
|
|
977
|
+
* @interface WhepInput
|
|
978
|
+
*/
|
|
979
|
+
interface WhepInput {
|
|
980
|
+
/**
|
|
981
|
+
* WHEP server endpoint URL
|
|
982
|
+
* @type {string}
|
|
983
|
+
* @memberof WhepInput
|
|
984
|
+
*/
|
|
985
|
+
endpointUrl: string;
|
|
986
|
+
/**
|
|
987
|
+
* Optional Bearer token for auth
|
|
988
|
+
* @type {string}
|
|
989
|
+
* @memberof WhepInput
|
|
990
|
+
*/
|
|
991
|
+
bearerToken?: string | null;
|
|
992
|
+
/**
|
|
993
|
+
* If `true`, requests a h264-encoded video track.
|
|
994
|
+
* If not provided, it defaults to `true`
|
|
995
|
+
* @type {boolean}
|
|
996
|
+
* @memberof WhepInput
|
|
997
|
+
*/
|
|
998
|
+
video?: boolean | null;
|
|
999
|
+
/**
|
|
1000
|
+
*
|
|
1001
|
+
* @type {WhepInputTypeEnum}
|
|
1002
|
+
* @memberof WhepInput
|
|
1003
|
+
*/
|
|
1004
|
+
type: WhepInputTypeEnum;
|
|
1005
|
+
}
|
|
1006
|
+
/**
|
|
1007
|
+
* @export
|
|
1008
|
+
*/
|
|
1009
|
+
declare const WhepInputTypeEnum: {
|
|
1010
|
+
readonly WhepClient: "whep_client";
|
|
1011
|
+
};
|
|
1012
|
+
type WhepInputTypeEnum = (typeof WhepInputTypeEnum)[keyof typeof WhepInputTypeEnum];
|
|
1013
|
+
|
|
1014
|
+
/**
|
|
1015
|
+
* Composition API
|
|
1016
|
+
* Real-time video compositing
|
|
1017
|
+
*
|
|
1018
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1019
|
+
*
|
|
1020
|
+
*
|
|
1021
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1022
|
+
* https://openapi-generator.tech
|
|
1023
|
+
* Do not edit the class manually.
|
|
1024
|
+
*/
|
|
1025
|
+
/**
|
|
1026
|
+
*
|
|
1027
|
+
* @export
|
|
1028
|
+
* @interface WhipInput
|
|
1029
|
+
*/
|
|
1030
|
+
interface WhipInput {
|
|
1031
|
+
/**
|
|
1032
|
+
* Token used for authentication in WHIP protocol. If not provided, the random value
|
|
1033
|
+
* will be generated and returned in the response.
|
|
1034
|
+
* @type {string}
|
|
1035
|
+
* @memberof WhipInput
|
|
1036
|
+
*/
|
|
1037
|
+
bearerToken?: string | null;
|
|
1038
|
+
/**
|
|
1039
|
+
* If `true`, accepts a h264-encoded video track.
|
|
1040
|
+
* If not provided, it defaults to `true`
|
|
1041
|
+
* @type {boolean}
|
|
1042
|
+
* @memberof WhipInput
|
|
1043
|
+
*/
|
|
1044
|
+
video?: boolean | null;
|
|
1045
|
+
/**
|
|
1046
|
+
*
|
|
1047
|
+
* @type {WhipInputTypeEnum}
|
|
1048
|
+
* @memberof WhipInput
|
|
1049
|
+
*/
|
|
1050
|
+
type: WhipInputTypeEnum;
|
|
1051
|
+
}
|
|
1052
|
+
/**
|
|
1053
|
+
* @export
|
|
1054
|
+
*/
|
|
1055
|
+
declare const WhipInputTypeEnum: {
|
|
1056
|
+
readonly WhipServer: "whip_server";
|
|
1057
|
+
};
|
|
1058
|
+
type WhipInputTypeEnum = (typeof WhipInputTypeEnum)[keyof typeof WhipInputTypeEnum];
|
|
1059
|
+
|
|
1060
|
+
/**
|
|
1061
|
+
* Composition API
|
|
1062
|
+
* Real-time video compositing
|
|
1063
|
+
*
|
|
1064
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1065
|
+
*
|
|
1066
|
+
*
|
|
1067
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1068
|
+
* https://openapi-generator.tech
|
|
1069
|
+
* Do not edit the class manually.
|
|
1070
|
+
*/
|
|
1071
|
+
|
|
1072
|
+
/**
|
|
1073
|
+
* @type RegisterInput
|
|
1074
|
+
*
|
|
1075
|
+
* @export
|
|
1076
|
+
*/
|
|
1077
|
+
type RegisterInput = Mp4Input | RtmpInput | WhepInput | WhipInput;
|
|
1078
|
+
|
|
1079
|
+
/**
|
|
1080
|
+
* Composition API
|
|
1081
|
+
* Real-time video compositing
|
|
1082
|
+
*
|
|
1083
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1084
|
+
*
|
|
1085
|
+
*
|
|
1086
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1087
|
+
* https://openapi-generator.tech
|
|
1088
|
+
* Do not edit the class manually.
|
|
1089
|
+
*/
|
|
1090
|
+
/**
|
|
1091
|
+
*
|
|
1092
|
+
* @export
|
|
1093
|
+
* @interface RegisterInputResponse
|
|
1094
|
+
*/
|
|
1095
|
+
interface RegisterInputResponse {
|
|
1096
|
+
/**
|
|
1097
|
+
*
|
|
1098
|
+
* @type {string}
|
|
1099
|
+
* @memberof RegisterInputResponse
|
|
1100
|
+
*/
|
|
1101
|
+
bearerToken?: string | null;
|
|
1102
|
+
/**
|
|
1103
|
+
*
|
|
1104
|
+
* @type {string}
|
|
1105
|
+
* @memberof RegisterInputResponse
|
|
1106
|
+
*/
|
|
1107
|
+
endpointRoute?: string | null;
|
|
1108
|
+
/**
|
|
1109
|
+
*
|
|
1110
|
+
* @type {number}
|
|
1111
|
+
* @memberof RegisterInputResponse
|
|
1112
|
+
*/
|
|
1113
|
+
videoDurationMs?: number | null;
|
|
1114
|
+
/**
|
|
1115
|
+
*
|
|
1116
|
+
* @type {number}
|
|
1117
|
+
* @memberof RegisterInputResponse
|
|
1118
|
+
*/
|
|
1119
|
+
audioDurationMs?: number | null;
|
|
1120
|
+
/**
|
|
1121
|
+
*
|
|
1122
|
+
* @type {number}
|
|
1123
|
+
* @memberof RegisterInputResponse
|
|
1124
|
+
*/
|
|
1125
|
+
port?: number | null;
|
|
1126
|
+
}
|
|
1127
|
+
|
|
1128
|
+
/**
|
|
1129
|
+
* Composition API
|
|
1130
|
+
* Real-time video compositing
|
|
1131
|
+
*
|
|
1132
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1133
|
+
*
|
|
1134
|
+
*
|
|
1135
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1136
|
+
* https://openapi-generator.tech
|
|
1137
|
+
* Do not edit the class manually.
|
|
1138
|
+
*/
|
|
1139
|
+
/**
|
|
1140
|
+
*
|
|
1141
|
+
* @export
|
|
1142
|
+
* @interface UnregisterInput
|
|
1143
|
+
*/
|
|
1144
|
+
interface UnregisterInput {
|
|
1145
|
+
/**
|
|
1146
|
+
* Time in milliseconds when this request should be applied. Value `0` represents
|
|
1147
|
+
* time of the start request.
|
|
1148
|
+
* @type {number}
|
|
1149
|
+
* @memberof UnregisterInput
|
|
1150
|
+
*/
|
|
1151
|
+
scheduleTimeMs?: number | null;
|
|
1152
|
+
}
|
|
1153
|
+
|
|
1154
|
+
/**
|
|
1155
|
+
* Composition API
|
|
1156
|
+
* Real-time video compositing
|
|
1157
|
+
*
|
|
1158
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1159
|
+
*
|
|
1160
|
+
*
|
|
1161
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1162
|
+
* https://openapi-generator.tech
|
|
1163
|
+
* Do not edit the class manually.
|
|
1164
|
+
*/
|
|
1165
|
+
/**
|
|
1166
|
+
*
|
|
1167
|
+
* @export
|
|
1168
|
+
* @interface Image
|
|
1169
|
+
*/
|
|
1170
|
+
interface Image {
|
|
1171
|
+
/**
|
|
1172
|
+
* Id of a component.
|
|
1173
|
+
* @type {string}
|
|
1174
|
+
* @memberof Image
|
|
1175
|
+
*/
|
|
1176
|
+
id?: string | null;
|
|
1177
|
+
/**
|
|
1178
|
+
* Id of an image. It identifies an image registered using a `register image` request.
|
|
1179
|
+
* @type {string}
|
|
1180
|
+
* @memberof Image
|
|
1181
|
+
*/
|
|
1182
|
+
imageId: string;
|
|
1183
|
+
/**
|
|
1184
|
+
* Width of the image in pixels.
|
|
1185
|
+
* If `height` is not explicitly provided, the image will automatically adjust its height to maintain its original aspect ratio relative to the width.
|
|
1186
|
+
* @type {number}
|
|
1187
|
+
* @memberof Image
|
|
1188
|
+
*/
|
|
1189
|
+
width?: number | null;
|
|
1190
|
+
/**
|
|
1191
|
+
* Height of the image in pixels.
|
|
1192
|
+
* If `width` is not explicitly provided, the image will automatically adjust its width to maintain its original aspect ratio relative to the height.
|
|
1193
|
+
* @type {number}
|
|
1194
|
+
* @memberof Image
|
|
1195
|
+
*/
|
|
1196
|
+
height?: number | null;
|
|
1197
|
+
/**
|
|
1198
|
+
*
|
|
1199
|
+
* @type {ImageTypeEnum}
|
|
1200
|
+
* @memberof Image
|
|
1201
|
+
*/
|
|
1202
|
+
type: ImageTypeEnum;
|
|
1203
|
+
}
|
|
1204
|
+
/**
|
|
1205
|
+
* @export
|
|
1206
|
+
*/
|
|
1207
|
+
declare const ImageTypeEnum: {
|
|
1208
|
+
readonly Image: "image";
|
|
1209
|
+
};
|
|
1210
|
+
type ImageTypeEnum = (typeof ImageTypeEnum)[keyof typeof ImageTypeEnum];
|
|
1211
|
+
|
|
1212
|
+
/**
|
|
1213
|
+
* Composition API
|
|
1214
|
+
* Real-time video compositing
|
|
1215
|
+
*
|
|
1216
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1217
|
+
*
|
|
1218
|
+
*
|
|
1219
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1220
|
+
* https://openapi-generator.tech
|
|
1221
|
+
* Do not edit the class manually.
|
|
1222
|
+
*/
|
|
1223
|
+
/**
|
|
1224
|
+
*
|
|
1225
|
+
* @export
|
|
1226
|
+
* @interface InputStream
|
|
1227
|
+
*/
|
|
1228
|
+
interface InputStream {
|
|
1229
|
+
/**
|
|
1230
|
+
* Id of a component.
|
|
1231
|
+
* @type {string}
|
|
1232
|
+
* @memberof InputStream
|
|
1233
|
+
*/
|
|
1234
|
+
id?: string | null;
|
|
1235
|
+
/**
|
|
1236
|
+
* Id of an input. It identifies a stream registered using a `RegisterInputStream` request.
|
|
1237
|
+
* @type {string}
|
|
1238
|
+
* @memberof InputStream
|
|
1239
|
+
*/
|
|
1240
|
+
inputId: string;
|
|
1241
|
+
/**
|
|
1242
|
+
*
|
|
1243
|
+
* @type {InputStreamTypeEnum}
|
|
1244
|
+
* @memberof InputStream
|
|
1245
|
+
*/
|
|
1246
|
+
type: InputStreamTypeEnum;
|
|
1247
|
+
}
|
|
1248
|
+
/**
|
|
1249
|
+
* @export
|
|
1250
|
+
*/
|
|
1251
|
+
declare const InputStreamTypeEnum: {
|
|
1252
|
+
readonly InputStream: "input_stream";
|
|
1253
|
+
};
|
|
1254
|
+
type InputStreamTypeEnum = (typeof InputStreamTypeEnum)[keyof typeof InputStreamTypeEnum];
|
|
1255
|
+
|
|
1256
|
+
/**
|
|
1257
|
+
* Composition API
|
|
1258
|
+
* Real-time video compositing
|
|
1259
|
+
*
|
|
1260
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1261
|
+
*
|
|
1262
|
+
*
|
|
1263
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1264
|
+
* https://openapi-generator.tech
|
|
1265
|
+
* Do not edit the class manually.
|
|
1266
|
+
*/
|
|
1267
|
+
/**
|
|
1268
|
+
*
|
|
1269
|
+
* @export
|
|
1270
|
+
*/
|
|
1271
|
+
declare const RescaleMode: {
|
|
1272
|
+
readonly Fit: "fit";
|
|
1273
|
+
readonly Fill: "fill";
|
|
1274
|
+
};
|
|
1275
|
+
type RescaleMode = (typeof RescaleMode)[keyof typeof RescaleMode];
|
|
1276
|
+
|
|
1277
|
+
/**
|
|
1278
|
+
* Composition API
|
|
1279
|
+
* Real-time video compositing
|
|
1280
|
+
*
|
|
1281
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1282
|
+
*
|
|
1283
|
+
*
|
|
1284
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1285
|
+
* https://openapi-generator.tech
|
|
1286
|
+
* Do not edit the class manually.
|
|
1287
|
+
*/
|
|
1288
|
+
/**
|
|
1289
|
+
*
|
|
1290
|
+
* @export
|
|
1291
|
+
*/
|
|
1292
|
+
declare const VerticalAlign: {
|
|
1293
|
+
readonly Top: "top";
|
|
1294
|
+
readonly Center: "center";
|
|
1295
|
+
readonly Bottom: "bottom";
|
|
1296
|
+
readonly Justified: "justified";
|
|
1297
|
+
};
|
|
1298
|
+
type VerticalAlign = (typeof VerticalAlign)[keyof typeof VerticalAlign];
|
|
1299
|
+
|
|
1300
|
+
/**
|
|
1301
|
+
* Composition API
|
|
1302
|
+
* Real-time video compositing
|
|
1303
|
+
*
|
|
1304
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1305
|
+
*
|
|
1306
|
+
*
|
|
1307
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1308
|
+
* https://openapi-generator.tech
|
|
1309
|
+
* Do not edit the class manually.
|
|
1310
|
+
*/
|
|
1311
|
+
/**
|
|
1312
|
+
*
|
|
1313
|
+
* @export
|
|
1314
|
+
* @interface BoxShadow
|
|
1315
|
+
*/
|
|
1316
|
+
interface BoxShadow {
|
|
1317
|
+
/**
|
|
1318
|
+
*
|
|
1319
|
+
* @type {number}
|
|
1320
|
+
* @memberof BoxShadow
|
|
1321
|
+
*/
|
|
1322
|
+
offsetX?: number | null;
|
|
1323
|
+
/**
|
|
1324
|
+
*
|
|
1325
|
+
* @type {number}
|
|
1326
|
+
* @memberof BoxShadow
|
|
1327
|
+
*/
|
|
1328
|
+
offsetY?: number | null;
|
|
1329
|
+
/**
|
|
1330
|
+
*
|
|
1331
|
+
* @type {string}
|
|
1332
|
+
* @memberof BoxShadow
|
|
1333
|
+
*/
|
|
1334
|
+
color?: string | null;
|
|
1335
|
+
/**
|
|
1336
|
+
*
|
|
1337
|
+
* @type {number}
|
|
1338
|
+
* @memberof BoxShadow
|
|
1339
|
+
*/
|
|
1340
|
+
blurRadius?: number | null;
|
|
1341
|
+
}
|
|
1342
|
+
|
|
1343
|
+
/**
|
|
1344
|
+
* Composition API
|
|
1345
|
+
* Real-time video compositing
|
|
1346
|
+
*
|
|
1347
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1348
|
+
*
|
|
1349
|
+
*
|
|
1350
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1351
|
+
* https://openapi-generator.tech
|
|
1352
|
+
* Do not edit the class manually.
|
|
1353
|
+
*/
|
|
1354
|
+
/**
|
|
1355
|
+
*
|
|
1356
|
+
* @export
|
|
1357
|
+
*/
|
|
1358
|
+
declare const HorizontalAlign: {
|
|
1359
|
+
readonly Left: "left";
|
|
1360
|
+
readonly Right: "right";
|
|
1361
|
+
readonly Justified: "justified";
|
|
1362
|
+
readonly Center: "center";
|
|
1363
|
+
};
|
|
1364
|
+
type HorizontalAlign = (typeof HorizontalAlign)[keyof typeof HorizontalAlign];
|
|
1365
|
+
|
|
1366
|
+
/**
|
|
1367
|
+
* Composition API
|
|
1368
|
+
* Real-time video compositing
|
|
1369
|
+
*
|
|
1370
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1371
|
+
*
|
|
1372
|
+
*
|
|
1373
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1374
|
+
* https://openapi-generator.tech
|
|
1375
|
+
* Do not edit the class manually.
|
|
1376
|
+
*/
|
|
1377
|
+
/**
|
|
1378
|
+
*
|
|
1379
|
+
* @export
|
|
1380
|
+
* @interface EasingFunctionBounce
|
|
1381
|
+
*/
|
|
1382
|
+
interface EasingFunctionBounce {
|
|
1383
|
+
/**
|
|
1384
|
+
*
|
|
1385
|
+
* @type {EasingFunctionBounceFunctionNameEnum}
|
|
1386
|
+
* @memberof EasingFunctionBounce
|
|
1387
|
+
*/
|
|
1388
|
+
functionName: EasingFunctionBounceFunctionNameEnum;
|
|
1389
|
+
}
|
|
1390
|
+
/**
|
|
1391
|
+
* @export
|
|
1392
|
+
*/
|
|
1393
|
+
declare const EasingFunctionBounceFunctionNameEnum: {
|
|
1394
|
+
readonly Bounce: "bounce";
|
|
1395
|
+
};
|
|
1396
|
+
type EasingFunctionBounceFunctionNameEnum = (typeof EasingFunctionBounceFunctionNameEnum)[keyof typeof EasingFunctionBounceFunctionNameEnum];
|
|
1397
|
+
|
|
1398
|
+
/**
|
|
1399
|
+
* Composition API
|
|
1400
|
+
* Real-time video compositing
|
|
1401
|
+
*
|
|
1402
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1403
|
+
*
|
|
1404
|
+
*
|
|
1405
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1406
|
+
* https://openapi-generator.tech
|
|
1407
|
+
* Do not edit the class manually.
|
|
1408
|
+
*/
|
|
1409
|
+
/**
|
|
1410
|
+
*
|
|
1411
|
+
* @export
|
|
1412
|
+
* @interface EasingFunctionCubicBezier
|
|
1413
|
+
*/
|
|
1414
|
+
interface EasingFunctionCubicBezier {
|
|
1415
|
+
/**
|
|
1416
|
+
*
|
|
1417
|
+
* @type {Array<number>}
|
|
1418
|
+
* @memberof EasingFunctionCubicBezier
|
|
1419
|
+
*/
|
|
1420
|
+
points: Array<number>;
|
|
1421
|
+
/**
|
|
1422
|
+
*
|
|
1423
|
+
* @type {EasingFunctionCubicBezierFunctionNameEnum}
|
|
1424
|
+
* @memberof EasingFunctionCubicBezier
|
|
1425
|
+
*/
|
|
1426
|
+
functionName: EasingFunctionCubicBezierFunctionNameEnum;
|
|
1427
|
+
}
|
|
1428
|
+
/**
|
|
1429
|
+
* @export
|
|
1430
|
+
*/
|
|
1431
|
+
declare const EasingFunctionCubicBezierFunctionNameEnum: {
|
|
1432
|
+
readonly CubicBezier: "cubic_bezier";
|
|
1433
|
+
};
|
|
1434
|
+
type EasingFunctionCubicBezierFunctionNameEnum = (typeof EasingFunctionCubicBezierFunctionNameEnum)[keyof typeof EasingFunctionCubicBezierFunctionNameEnum];
|
|
1435
|
+
|
|
1436
|
+
/**
|
|
1437
|
+
* Composition API
|
|
1438
|
+
* Real-time video compositing
|
|
1439
|
+
*
|
|
1440
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1441
|
+
*
|
|
1442
|
+
*
|
|
1443
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1444
|
+
* https://openapi-generator.tech
|
|
1445
|
+
* Do not edit the class manually.
|
|
1446
|
+
*/
|
|
1447
|
+
/**
|
|
1448
|
+
*
|
|
1449
|
+
* @export
|
|
1450
|
+
* @interface EasingFunctionLinear
|
|
1451
|
+
*/
|
|
1452
|
+
interface EasingFunctionLinear {
|
|
1453
|
+
/**
|
|
1454
|
+
*
|
|
1455
|
+
* @type {EasingFunctionLinearFunctionNameEnum}
|
|
1456
|
+
* @memberof EasingFunctionLinear
|
|
1457
|
+
*/
|
|
1458
|
+
functionName: EasingFunctionLinearFunctionNameEnum;
|
|
1459
|
+
}
|
|
1460
|
+
/**
|
|
1461
|
+
* @export
|
|
1462
|
+
*/
|
|
1463
|
+
declare const EasingFunctionLinearFunctionNameEnum: {
|
|
1464
|
+
readonly Linear: "linear";
|
|
1465
|
+
};
|
|
1466
|
+
type EasingFunctionLinearFunctionNameEnum = (typeof EasingFunctionLinearFunctionNameEnum)[keyof typeof EasingFunctionLinearFunctionNameEnum];
|
|
1467
|
+
|
|
1468
|
+
/**
|
|
1469
|
+
* Composition API
|
|
1470
|
+
* Real-time video compositing
|
|
1471
|
+
*
|
|
1472
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1473
|
+
*
|
|
1474
|
+
*
|
|
1475
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1476
|
+
* https://openapi-generator.tech
|
|
1477
|
+
* Do not edit the class manually.
|
|
1478
|
+
*/
|
|
1479
|
+
|
|
1480
|
+
/**
|
|
1481
|
+
* @type EasingFunction
|
|
1482
|
+
* Easing functions are used to interpolate between two values over time.
|
|
1483
|
+
*
|
|
1484
|
+
* Custom easing functions can be implemented with cubic Bézier.
|
|
1485
|
+
* The control points are defined with `points` field by providing four numerical values: `x1`, `y1`, `x2` and `y2`. The `x1` and `x2` values have to be in the range `[0; 1]`. The cubic Bézier result is clamped to the range `[0; 1]`.
|
|
1486
|
+
* You can find example control point configurations [here](https://easings.net/).
|
|
1487
|
+
* @export
|
|
1488
|
+
*/
|
|
1489
|
+
type EasingFunction = EasingFunctionBounce | EasingFunctionCubicBezier | EasingFunctionLinear;
|
|
1490
|
+
|
|
1491
|
+
/**
|
|
1492
|
+
* Composition API
|
|
1493
|
+
* Real-time video compositing
|
|
1494
|
+
*
|
|
1495
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1496
|
+
*
|
|
1497
|
+
*
|
|
1498
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1499
|
+
* https://openapi-generator.tech
|
|
1500
|
+
* Do not edit the class manually.
|
|
1501
|
+
*/
|
|
1502
|
+
|
|
1503
|
+
/**
|
|
1504
|
+
*
|
|
1505
|
+
* @export
|
|
1506
|
+
* @interface Transition
|
|
1507
|
+
*/
|
|
1508
|
+
interface Transition {
|
|
1509
|
+
/**
|
|
1510
|
+
* Duration of a transition in milliseconds.
|
|
1511
|
+
* @type {number}
|
|
1512
|
+
* @memberof Transition
|
|
1513
|
+
*/
|
|
1514
|
+
durationMs: number;
|
|
1515
|
+
/**
|
|
1516
|
+
* (**default=`"linear"`**) Easing function to be used for the transition.
|
|
1517
|
+
* @type {EasingFunction}
|
|
1518
|
+
* @memberof Transition
|
|
1519
|
+
*/
|
|
1520
|
+
easingFunction?: EasingFunction | null;
|
|
1521
|
+
/**
|
|
1522
|
+
* (**default=`false`**) On scene update, if there is already a transition in progress,
|
|
1523
|
+
* it will be interrupted and the new transition will start from the current state.
|
|
1524
|
+
* @type {boolean}
|
|
1525
|
+
* @memberof Transition
|
|
1526
|
+
*/
|
|
1527
|
+
shouldInterrupt?: boolean | null;
|
|
1528
|
+
}
|
|
1529
|
+
|
|
1530
|
+
/**
|
|
1531
|
+
* Composition API
|
|
1532
|
+
* Real-time video compositing
|
|
1533
|
+
*
|
|
1534
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1535
|
+
*
|
|
1536
|
+
*
|
|
1537
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1538
|
+
* https://openapi-generator.tech
|
|
1539
|
+
* Do not edit the class manually.
|
|
1540
|
+
*/
|
|
1541
|
+
|
|
1542
|
+
/**
|
|
1543
|
+
*
|
|
1544
|
+
* @export
|
|
1545
|
+
* @interface Rescaler
|
|
1546
|
+
*/
|
|
1547
|
+
interface Rescaler {
|
|
1548
|
+
/**
|
|
1549
|
+
* Id of a component.
|
|
1550
|
+
* @type {string}
|
|
1551
|
+
* @memberof Rescaler
|
|
1552
|
+
*/
|
|
1553
|
+
id?: string | null;
|
|
1554
|
+
/**
|
|
1555
|
+
* List of component's children.
|
|
1556
|
+
* @type {Component}
|
|
1557
|
+
* @memberof Rescaler
|
|
1558
|
+
*/
|
|
1559
|
+
child: Component;
|
|
1560
|
+
/**
|
|
1561
|
+
* (**default=`"fit"`**) Resize mode:
|
|
1562
|
+
* @type {RescaleMode}
|
|
1563
|
+
* @memberof Rescaler
|
|
1564
|
+
*/
|
|
1565
|
+
mode?: RescaleMode | null;
|
|
1566
|
+
/**
|
|
1567
|
+
* (**default=`"center"`**) Horizontal alignment.
|
|
1568
|
+
* @type {HorizontalAlign}
|
|
1569
|
+
* @memberof Rescaler
|
|
1570
|
+
*/
|
|
1571
|
+
horizontalAlign?: HorizontalAlign | null;
|
|
1572
|
+
/**
|
|
1573
|
+
* (**default=`"center"`**) Vertical alignment.
|
|
1574
|
+
* @type {VerticalAlign}
|
|
1575
|
+
* @memberof Rescaler
|
|
1576
|
+
*/
|
|
1577
|
+
verticalAlign?: VerticalAlign | null;
|
|
1578
|
+
/**
|
|
1579
|
+
* Width of a component in pixels (without a border). Exact behavior might be different
|
|
1580
|
+
* based on the parent component:
|
|
1581
|
+
* - If the parent component is a layout, check sections "Absolute positioning" and "Static
|
|
1582
|
+
* positioning" of that component.
|
|
1583
|
+
* - If the parent component is not a layout, then this field is required.
|
|
1584
|
+
* @type {number}
|
|
1585
|
+
* @memberof Rescaler
|
|
1586
|
+
*/
|
|
1587
|
+
width?: number | null;
|
|
1588
|
+
/**
|
|
1589
|
+
* Height of a component in pixels (without a border). Exact behavior might be different
|
|
1590
|
+
* based on the parent component:
|
|
1591
|
+
* - If the parent component is a layout, check sections "Absolute positioning" and "Static
|
|
1592
|
+
* positioning" of that component.
|
|
1593
|
+
* - If the parent component is not a layout, then this field is required.
|
|
1594
|
+
* @type {number}
|
|
1595
|
+
* @memberof Rescaler
|
|
1596
|
+
*/
|
|
1597
|
+
height?: number | null;
|
|
1598
|
+
/**
|
|
1599
|
+
* Distance in pixels between this component's top edge and its parent's top edge (including a border).
|
|
1600
|
+
* If this field is defined, then the component will ignore a layout defined by its parent.
|
|
1601
|
+
* @type {number}
|
|
1602
|
+
* @memberof Rescaler
|
|
1603
|
+
*/
|
|
1604
|
+
top?: number | null;
|
|
1605
|
+
/**
|
|
1606
|
+
* Distance in pixels between this component's left edge and its parent's left edge (including a border).
|
|
1607
|
+
* If this field is defined, this element will be absolutely positioned, instead of being
|
|
1608
|
+
* laid out by its parent.
|
|
1609
|
+
* @type {number}
|
|
1610
|
+
* @memberof Rescaler
|
|
1611
|
+
*/
|
|
1612
|
+
left?: number | null;
|
|
1613
|
+
/**
|
|
1614
|
+
* Distance in pixels between the bottom edge of this component and the bottom edge of its
|
|
1615
|
+
* parent (including a border). If this field is defined, this element will be absolutely
|
|
1616
|
+
* positioned, instead of being laid out by its parent.
|
|
1617
|
+
* @type {number}
|
|
1618
|
+
* @memberof Rescaler
|
|
1619
|
+
*/
|
|
1620
|
+
bottom?: number | null;
|
|
1621
|
+
/**
|
|
1622
|
+
* Distance in pixels between this component's right edge and its parent's right edge.
|
|
1623
|
+
* If this field is defined, this element will be absolutely positioned, instead of being
|
|
1624
|
+
* laid out by its parent.
|
|
1625
|
+
* @type {number}
|
|
1626
|
+
* @memberof Rescaler
|
|
1627
|
+
*/
|
|
1628
|
+
right?: number | null;
|
|
1629
|
+
/**
|
|
1630
|
+
* Rotation of a component in degrees. If this field is defined, this element will be
|
|
1631
|
+
* absolutely positioned, instead of being laid out by its parent.
|
|
1632
|
+
* @type {number}
|
|
1633
|
+
* @memberof Rescaler
|
|
1634
|
+
*/
|
|
1635
|
+
rotation?: number | null;
|
|
1636
|
+
/**
|
|
1637
|
+
* Defines how this component will behave during a scene update. This will only have an
|
|
1638
|
+
* effect if the previous scene already contained a `Rescaler` component with the same id.
|
|
1639
|
+
* @type {Transition}
|
|
1640
|
+
* @memberof Rescaler
|
|
1641
|
+
*/
|
|
1642
|
+
transition?: Transition | null;
|
|
1643
|
+
/**
|
|
1644
|
+
* (**default=`0.0`**) Radius of a rounded corner.
|
|
1645
|
+
* @type {number}
|
|
1646
|
+
* @memberof Rescaler
|
|
1647
|
+
*/
|
|
1648
|
+
borderRadius?: number | null;
|
|
1649
|
+
/**
|
|
1650
|
+
* (**default=`0.0`**) Border width.
|
|
1651
|
+
* @type {number}
|
|
1652
|
+
* @memberof Rescaler
|
|
1653
|
+
*/
|
|
1654
|
+
borderWidth?: number | null;
|
|
1655
|
+
/**
|
|
1656
|
+
* (**default=`"#00000000"`**) Border color in a `"#RRGGBBAA"` format.
|
|
1657
|
+
* @type {string}
|
|
1658
|
+
* @memberof Rescaler
|
|
1659
|
+
*/
|
|
1660
|
+
borderColor?: string | null;
|
|
1661
|
+
/**
|
|
1662
|
+
* List of box shadows.
|
|
1663
|
+
* @type {Array<BoxShadow>}
|
|
1664
|
+
* @memberof Rescaler
|
|
1665
|
+
*/
|
|
1666
|
+
boxShadow?: Array<BoxShadow> | null;
|
|
1667
|
+
/**
|
|
1668
|
+
*
|
|
1669
|
+
* @type {RescalerTypeEnum}
|
|
1670
|
+
* @memberof Rescaler
|
|
1671
|
+
*/
|
|
1672
|
+
type: RescalerTypeEnum;
|
|
1673
|
+
}
|
|
1674
|
+
/**
|
|
1675
|
+
* @export
|
|
1676
|
+
*/
|
|
1677
|
+
declare const RescalerTypeEnum: {
|
|
1678
|
+
readonly Rescaler: "rescaler";
|
|
1679
|
+
};
|
|
1680
|
+
type RescalerTypeEnum = (typeof RescalerTypeEnum)[keyof typeof RescalerTypeEnum];
|
|
1681
|
+
|
|
1682
|
+
/**
|
|
1683
|
+
* Composition API
|
|
1684
|
+
* Real-time video compositing
|
|
1685
|
+
*
|
|
1686
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1687
|
+
*
|
|
1688
|
+
*
|
|
1689
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1690
|
+
* https://openapi-generator.tech
|
|
1691
|
+
* Do not edit the class manually.
|
|
1692
|
+
*/
|
|
1693
|
+
/**
|
|
1694
|
+
*
|
|
1695
|
+
* @export
|
|
1696
|
+
*/
|
|
1697
|
+
declare const TextStyle: {
|
|
1698
|
+
readonly Normal: "normal";
|
|
1699
|
+
readonly Italic: "italic";
|
|
1700
|
+
readonly Oblique: "oblique";
|
|
1701
|
+
};
|
|
1702
|
+
type TextStyle = (typeof TextStyle)[keyof typeof TextStyle];
|
|
1703
|
+
|
|
1704
|
+
/**
|
|
1705
|
+
* Composition API
|
|
1706
|
+
* Real-time video compositing
|
|
1707
|
+
*
|
|
1708
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1709
|
+
*
|
|
1710
|
+
*
|
|
1711
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1712
|
+
* https://openapi-generator.tech
|
|
1713
|
+
* Do not edit the class manually.
|
|
1714
|
+
*/
|
|
1715
|
+
/**
|
|
1716
|
+
* Font weight, based on the [OpenType specification](https://learn.microsoft.com/en-gb/typography/opentype/spec/os2#usweightclass).
|
|
1717
|
+
* @export
|
|
1718
|
+
*/
|
|
1719
|
+
declare const TextWeight: {
|
|
1720
|
+
readonly Thin: "thin";
|
|
1721
|
+
readonly ExtraLight: "extra_light";
|
|
1722
|
+
readonly Light: "light";
|
|
1723
|
+
readonly Normal: "normal";
|
|
1724
|
+
readonly Medium: "medium";
|
|
1725
|
+
readonly SemiBold: "semi_bold";
|
|
1726
|
+
readonly Bold: "bold";
|
|
1727
|
+
readonly ExtraBold: "extra_bold";
|
|
1728
|
+
readonly Black: "black";
|
|
1729
|
+
};
|
|
1730
|
+
type TextWeight = (typeof TextWeight)[keyof typeof TextWeight];
|
|
1731
|
+
|
|
1732
|
+
/**
|
|
1733
|
+
* Composition API
|
|
1734
|
+
* Real-time video compositing
|
|
1735
|
+
*
|
|
1736
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1737
|
+
*
|
|
1738
|
+
*
|
|
1739
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1740
|
+
* https://openapi-generator.tech
|
|
1741
|
+
* Do not edit the class manually.
|
|
1742
|
+
*/
|
|
1743
|
+
/**
|
|
1744
|
+
*
|
|
1745
|
+
* @export
|
|
1746
|
+
*/
|
|
1747
|
+
declare const TextWrapMode: {
|
|
1748
|
+
readonly None: "none";
|
|
1749
|
+
readonly Glyph: "glyph";
|
|
1750
|
+
readonly Word: "word";
|
|
1751
|
+
};
|
|
1752
|
+
type TextWrapMode = (typeof TextWrapMode)[keyof typeof TextWrapMode];
|
|
1753
|
+
|
|
1754
|
+
/**
|
|
1755
|
+
* Composition API
|
|
1756
|
+
* Real-time video compositing
|
|
1757
|
+
*
|
|
1758
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1759
|
+
*
|
|
1760
|
+
*
|
|
1761
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1762
|
+
* https://openapi-generator.tech
|
|
1763
|
+
* Do not edit the class manually.
|
|
1764
|
+
*/
|
|
1765
|
+
|
|
1766
|
+
/**
|
|
1767
|
+
*
|
|
1768
|
+
* @export
|
|
1769
|
+
* @interface Text
|
|
1770
|
+
*/
|
|
1771
|
+
interface Text {
|
|
1772
|
+
/**
|
|
1773
|
+
* Id of a component.
|
|
1774
|
+
* @type {string}
|
|
1775
|
+
* @memberof Text
|
|
1776
|
+
*/
|
|
1777
|
+
id?: string | null;
|
|
1778
|
+
/**
|
|
1779
|
+
* Text that will be rendered.
|
|
1780
|
+
* @type {string}
|
|
1781
|
+
* @memberof Text
|
|
1782
|
+
*/
|
|
1783
|
+
text: string;
|
|
1784
|
+
/**
|
|
1785
|
+
* Width of a texture that text will be rendered on. If not provided, the resulting texture
|
|
1786
|
+
* will be sized based on the defined text but limited to `max_width` value.
|
|
1787
|
+
* @type {number}
|
|
1788
|
+
* @memberof Text
|
|
1789
|
+
*/
|
|
1790
|
+
width?: number | null;
|
|
1791
|
+
/**
|
|
1792
|
+
* Height of a texture that text will be rendered on. If not provided, the resulting texture
|
|
1793
|
+
* will be sized based on the defined text but limited to `max_height` value.
|
|
1794
|
+
* It's an error to provide `height` if `width` is not defined.
|
|
1795
|
+
* @type {number}
|
|
1796
|
+
* @memberof Text
|
|
1797
|
+
*/
|
|
1798
|
+
height?: number | null;
|
|
1799
|
+
/**
|
|
1800
|
+
* (**default=`7682`**) Maximal `width`. Limits the width of the texture that the text will be rendered on.
|
|
1801
|
+
* Value is ignored if `width` is defined.
|
|
1802
|
+
* @type {number}
|
|
1803
|
+
* @memberof Text
|
|
1804
|
+
*/
|
|
1805
|
+
maxWidth?: number | null;
|
|
1806
|
+
/**
|
|
1807
|
+
* (**default=`4320`**) Maximal `height`. Limits the height of the texture that the text will be rendered on.
|
|
1808
|
+
* Value is ignored if height is defined.
|
|
1809
|
+
* @type {number}
|
|
1810
|
+
* @memberof Text
|
|
1811
|
+
*/
|
|
1812
|
+
maxHeight?: number | null;
|
|
1813
|
+
/**
|
|
1814
|
+
* Font size in pixels.
|
|
1815
|
+
* @type {number}
|
|
1816
|
+
* @memberof Text
|
|
1817
|
+
*/
|
|
1818
|
+
fontSize: number;
|
|
1819
|
+
/**
|
|
1820
|
+
* Distance between lines in pixels. Defaults to the value of the `font_size` property.
|
|
1821
|
+
* @type {number}
|
|
1822
|
+
* @memberof Text
|
|
1823
|
+
*/
|
|
1824
|
+
lineHeight?: number | null;
|
|
1825
|
+
/**
|
|
1826
|
+
* (**default=`"#FFFFFFFF"`**) Font color in `#RRGGBBAA` format.
|
|
1827
|
+
* @type {string}
|
|
1828
|
+
* @memberof Text
|
|
1829
|
+
*/
|
|
1830
|
+
color?: string | null;
|
|
1831
|
+
/**
|
|
1832
|
+
* (**default=`"#00000000"`**) Background color in `#RRGGBBAA` format.
|
|
1833
|
+
* @type {string}
|
|
1834
|
+
* @memberof Text
|
|
1835
|
+
*/
|
|
1836
|
+
backgroundColor?: string | null;
|
|
1837
|
+
/**
|
|
1838
|
+
* (**default=`"Verdana"`**) Font family. Provide [family-name](https://www.w3.org/TR/2018/REC-css-fonts-3-20180920/#family-name-value)
|
|
1839
|
+
* for a specific font. "generic-family" values like e.g. "sans-serif" will not work.
|
|
1840
|
+
* @type {string}
|
|
1841
|
+
* @memberof Text
|
|
1842
|
+
*/
|
|
1843
|
+
fontFamily?: string | null;
|
|
1844
|
+
/**
|
|
1845
|
+
* (**default=`"normal"`**) Font style. The selected font needs to support the specified style.
|
|
1846
|
+
* @type {TextStyle}
|
|
1847
|
+
* @memberof Text
|
|
1848
|
+
*/
|
|
1849
|
+
style?: TextStyle | null;
|
|
1850
|
+
/**
|
|
1851
|
+
* (**default=`"left"`**) Text align.
|
|
1852
|
+
* @type {HorizontalAlign}
|
|
1853
|
+
* @memberof Text
|
|
1854
|
+
*/
|
|
1855
|
+
align?: HorizontalAlign | null;
|
|
1856
|
+
/**
|
|
1857
|
+
* (**default=`"none"`**) Text wrapping options.
|
|
1858
|
+
* @type {TextWrapMode}
|
|
1859
|
+
* @memberof Text
|
|
1860
|
+
*/
|
|
1861
|
+
wrap?: TextWrapMode | null;
|
|
1862
|
+
/**
|
|
1863
|
+
* (**default=`"normal"`**) Font weight. The selected font needs to support the specified weight.
|
|
1864
|
+
* @type {TextWeight}
|
|
1865
|
+
* @memberof Text
|
|
1866
|
+
*/
|
|
1867
|
+
weight?: TextWeight | null;
|
|
1868
|
+
/**
|
|
1869
|
+
*
|
|
1870
|
+
* @type {TextTypeEnum}
|
|
1871
|
+
* @memberof Text
|
|
1872
|
+
*/
|
|
1873
|
+
type: TextTypeEnum;
|
|
1874
|
+
}
|
|
1875
|
+
/**
|
|
1876
|
+
* @export
|
|
1877
|
+
*/
|
|
1878
|
+
declare const TextTypeEnum: {
|
|
1879
|
+
readonly Text: "text";
|
|
1880
|
+
};
|
|
1881
|
+
type TextTypeEnum = (typeof TextTypeEnum)[keyof typeof TextTypeEnum];
|
|
1882
|
+
|
|
1883
|
+
/**
|
|
1884
|
+
* Composition API
|
|
1885
|
+
* Real-time video compositing
|
|
1886
|
+
*
|
|
1887
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1888
|
+
*
|
|
1889
|
+
*
|
|
1890
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1891
|
+
* https://openapi-generator.tech
|
|
1892
|
+
* Do not edit the class manually.
|
|
1893
|
+
*/
|
|
1894
|
+
|
|
1895
|
+
/**
|
|
1896
|
+
*
|
|
1897
|
+
* @export
|
|
1898
|
+
* @interface Tiles
|
|
1899
|
+
*/
|
|
1900
|
+
interface Tiles {
|
|
1901
|
+
/**
|
|
1902
|
+
* Id of a component.
|
|
1903
|
+
* @type {string}
|
|
1904
|
+
* @memberof Tiles
|
|
1905
|
+
*/
|
|
1906
|
+
id?: string | null;
|
|
1907
|
+
/**
|
|
1908
|
+
* List of component's children.
|
|
1909
|
+
* @type {Array<Component>}
|
|
1910
|
+
* @memberof Tiles
|
|
1911
|
+
*/
|
|
1912
|
+
children?: Array<Component> | null;
|
|
1913
|
+
/**
|
|
1914
|
+
* Width of a component in pixels. Exact behavior might be different based on the parent
|
|
1915
|
+
* component:
|
|
1916
|
+
* - If the parent component is a layout, check sections "Absolute positioning" and "Static
|
|
1917
|
+
* positioning" of that component.
|
|
1918
|
+
* - If the parent component is not a layout, then this field is required.
|
|
1919
|
+
* @type {number}
|
|
1920
|
+
* @memberof Tiles
|
|
1921
|
+
*/
|
|
1922
|
+
width?: number | null;
|
|
1923
|
+
/**
|
|
1924
|
+
* Height of a component in pixels. Exact behavior might be different based on the parent
|
|
1925
|
+
* component:
|
|
1926
|
+
* - If the parent component is a layout, check sections "Absolute positioning" and "Static
|
|
1927
|
+
* positioning" of that component.
|
|
1928
|
+
* - If the parent component is not a layout, then this field is required.
|
|
1929
|
+
* @type {number}
|
|
1930
|
+
* @memberof Tiles
|
|
1931
|
+
*/
|
|
1932
|
+
height?: number | null;
|
|
1933
|
+
/**
|
|
1934
|
+
* (**default=`"#00000000"`**) Background color in a `"#RRGGBBAA"` format.
|
|
1935
|
+
* @type {string}
|
|
1936
|
+
* @memberof Tiles
|
|
1937
|
+
*/
|
|
1938
|
+
backgroundColor?: string | null;
|
|
1939
|
+
/**
|
|
1940
|
+
* (**default=`"16:9"`**) Aspect ratio of a tile in `"W:H"` format, where W and H are integers.
|
|
1941
|
+
* @type {string}
|
|
1942
|
+
* @memberof Tiles
|
|
1943
|
+
*/
|
|
1944
|
+
tileAspectRatio?: string | null;
|
|
1945
|
+
/**
|
|
1946
|
+
* (**default=`0`**) Margin of each tile in pixels.
|
|
1947
|
+
* @type {number}
|
|
1948
|
+
* @memberof Tiles
|
|
1949
|
+
*/
|
|
1950
|
+
margin?: number | null;
|
|
1951
|
+
/**
|
|
1952
|
+
* (**default=`0`**) Padding on each tile in pixels.
|
|
1953
|
+
* @type {number}
|
|
1954
|
+
* @memberof Tiles
|
|
1955
|
+
*/
|
|
1956
|
+
padding?: number | null;
|
|
1957
|
+
/**
|
|
1958
|
+
* (**default=`"center"`**) Horizontal alignment of tiles.
|
|
1959
|
+
* @type {HorizontalAlign}
|
|
1960
|
+
* @memberof Tiles
|
|
1961
|
+
*/
|
|
1962
|
+
horizontalAlign?: HorizontalAlign | null;
|
|
1963
|
+
/**
|
|
1964
|
+
* (**default=`"center"`**) Vertical alignment of tiles.
|
|
1965
|
+
* @type {VerticalAlign}
|
|
1966
|
+
* @memberof Tiles
|
|
1967
|
+
*/
|
|
1968
|
+
verticalAlign?: VerticalAlign | null;
|
|
1969
|
+
/**
|
|
1970
|
+
* Defines how this component will behave during a scene update. This will only have an
|
|
1971
|
+
* effect if the previous scene already contained a `Tiles` component with the same id.
|
|
1972
|
+
* @type {Transition}
|
|
1973
|
+
* @memberof Tiles
|
|
1974
|
+
*/
|
|
1975
|
+
transition?: Transition | null;
|
|
1976
|
+
/**
|
|
1977
|
+
*
|
|
1978
|
+
* @type {TilesTypeEnum}
|
|
1979
|
+
* @memberof Tiles
|
|
1980
|
+
*/
|
|
1981
|
+
type: TilesTypeEnum;
|
|
1982
|
+
}
|
|
1983
|
+
/**
|
|
1984
|
+
* @export
|
|
1985
|
+
*/
|
|
1986
|
+
declare const TilesTypeEnum: {
|
|
1987
|
+
readonly Tiles: "tiles";
|
|
1988
|
+
};
|
|
1989
|
+
type TilesTypeEnum = (typeof TilesTypeEnum)[keyof typeof TilesTypeEnum];
|
|
1990
|
+
|
|
1991
|
+
/**
|
|
1992
|
+
* Composition API
|
|
1993
|
+
* Real-time video compositing
|
|
1994
|
+
*
|
|
1995
|
+
* The version of the OpenAPI document: 0.1.0
|
|
1996
|
+
*
|
|
1997
|
+
*
|
|
1998
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
1999
|
+
* https://openapi-generator.tech
|
|
2000
|
+
* Do not edit the class manually.
|
|
2001
|
+
*/
|
|
2002
|
+
/**
|
|
2003
|
+
*
|
|
2004
|
+
* @export
|
|
2005
|
+
*/
|
|
2006
|
+
declare const ViewDirection: {
|
|
2007
|
+
readonly Row: "row";
|
|
2008
|
+
readonly Column: "column";
|
|
2009
|
+
};
|
|
2010
|
+
type ViewDirection = (typeof ViewDirection)[keyof typeof ViewDirection];
|
|
2011
|
+
|
|
2012
|
+
/**
|
|
2013
|
+
* Composition API
|
|
2014
|
+
* Real-time video compositing
|
|
2015
|
+
*
|
|
2016
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2017
|
+
*
|
|
2018
|
+
*
|
|
2019
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2020
|
+
* https://openapi-generator.tech
|
|
2021
|
+
* Do not edit the class manually.
|
|
2022
|
+
*/
|
|
2023
|
+
/**
|
|
2024
|
+
*
|
|
2025
|
+
* @export
|
|
2026
|
+
*/
|
|
2027
|
+
declare const Overflow: {
|
|
2028
|
+
readonly Visible: "visible";
|
|
2029
|
+
readonly Hidden: "hidden";
|
|
2030
|
+
readonly Fit: "fit";
|
|
2031
|
+
};
|
|
2032
|
+
type Overflow = (typeof Overflow)[keyof typeof Overflow];
|
|
2033
|
+
|
|
2034
|
+
/**
|
|
2035
|
+
* Composition API
|
|
2036
|
+
* Real-time video compositing
|
|
2037
|
+
*
|
|
2038
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2039
|
+
*
|
|
2040
|
+
*
|
|
2041
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2042
|
+
* https://openapi-generator.tech
|
|
2043
|
+
* Do not edit the class manually.
|
|
2044
|
+
*/
|
|
2045
|
+
|
|
2046
|
+
/**
|
|
2047
|
+
*
|
|
2048
|
+
* @export
|
|
2049
|
+
* @interface View
|
|
2050
|
+
*/
|
|
2051
|
+
interface View {
|
|
2052
|
+
/**
|
|
2053
|
+
* Id of a component.
|
|
2054
|
+
* @type {string}
|
|
2055
|
+
* @memberof View
|
|
2056
|
+
*/
|
|
2057
|
+
id?: string | null;
|
|
2058
|
+
/**
|
|
2059
|
+
* List of component's children.
|
|
2060
|
+
* @type {Array<Component>}
|
|
2061
|
+
* @memberof View
|
|
2062
|
+
*/
|
|
2063
|
+
children?: Array<Component> | null;
|
|
2064
|
+
/**
|
|
2065
|
+
* Width of a component in pixels (without a border). Exact behavior might be different
|
|
2066
|
+
* based on the parent component:
|
|
2067
|
+
* - If the parent component is a layout, check sections "Absolute positioning" and "Static
|
|
2068
|
+
* positioning" of that component.
|
|
2069
|
+
* - If the parent component is not a layout, then this field is required.
|
|
2070
|
+
* @type {number}
|
|
2071
|
+
* @memberof View
|
|
2072
|
+
*/
|
|
2073
|
+
width?: number | null;
|
|
2074
|
+
/**
|
|
2075
|
+
* Height of a component in pixels (without a border). Exact behavior might be different
|
|
2076
|
+
* based on the parent component:
|
|
2077
|
+
* - If the parent component is a layout, check sections "Absolute positioning" and "Static
|
|
2078
|
+
* positioning" of that component.
|
|
2079
|
+
* - If the parent component is not a layout, then this field is required.
|
|
2080
|
+
* @type {number}
|
|
2081
|
+
* @memberof View
|
|
2082
|
+
*/
|
|
2083
|
+
height?: number | null;
|
|
2084
|
+
/**
|
|
2085
|
+
* Direction defines how static children are positioned inside a View component.
|
|
2086
|
+
* @type {ViewDirection}
|
|
2087
|
+
* @memberof View
|
|
2088
|
+
*/
|
|
2089
|
+
direction?: ViewDirection | null;
|
|
2090
|
+
/**
|
|
2091
|
+
* Distance in pixels between this component's top edge and its parent's top edge (including a border).
|
|
2092
|
+
* If this field is defined, then the component will ignore a layout defined by its parent.
|
|
2093
|
+
* @type {number}
|
|
2094
|
+
* @memberof View
|
|
2095
|
+
*/
|
|
2096
|
+
top?: number | null;
|
|
2097
|
+
/**
|
|
2098
|
+
* Distance in pixels between this component's left edge and its parent's left edge (including a border).
|
|
2099
|
+
* If this field is defined, this element will be absolutely positioned, instead of being
|
|
2100
|
+
* laid out by its parent.
|
|
2101
|
+
* @type {number}
|
|
2102
|
+
* @memberof View
|
|
2103
|
+
*/
|
|
2104
|
+
left?: number | null;
|
|
2105
|
+
/**
|
|
2106
|
+
* Distance in pixels between the bottom edge of this component and the bottom edge of its
|
|
2107
|
+
* parent (including a border). If this field is defined, this element will be absolutely
|
|
2108
|
+
* positioned, instead of being laid out by its parent.
|
|
2109
|
+
* @type {number}
|
|
2110
|
+
* @memberof View
|
|
2111
|
+
*/
|
|
2112
|
+
bottom?: number | null;
|
|
2113
|
+
/**
|
|
2114
|
+
* Distance in pixels between this component's right edge and its parent's right edge.
|
|
2115
|
+
* If this field is defined, this element will be absolutely positioned, instead of being
|
|
2116
|
+
* laid out by its parent.
|
|
2117
|
+
* @type {number}
|
|
2118
|
+
* @memberof View
|
|
2119
|
+
*/
|
|
2120
|
+
right?: number | null;
|
|
2121
|
+
/**
|
|
2122
|
+
* Rotation of a component in degrees. If this field is defined, this element will be
|
|
2123
|
+
* absolutely positioned, instead of being laid out by its parent.
|
|
2124
|
+
* @type {number}
|
|
2125
|
+
* @memberof View
|
|
2126
|
+
*/
|
|
2127
|
+
rotation?: number | null;
|
|
2128
|
+
/**
|
|
2129
|
+
* Defines how this component will behave during a scene update. This will only have an
|
|
2130
|
+
* effect if the previous scene already contained a `View` component with the same id.
|
|
2131
|
+
* @type {Transition}
|
|
2132
|
+
* @memberof View
|
|
2133
|
+
*/
|
|
2134
|
+
transition?: Transition | null;
|
|
2135
|
+
/**
|
|
2136
|
+
* (**default=`"hidden"`**) Controls what happens to content that is too big to fit into an area.
|
|
2137
|
+
* @type {Overflow}
|
|
2138
|
+
* @memberof View
|
|
2139
|
+
*/
|
|
2140
|
+
overflow?: Overflow | null;
|
|
2141
|
+
/**
|
|
2142
|
+
* (**default=`"#00000000"`**) Background color in a `"#RRGGBBAA"` format.
|
|
2143
|
+
* @type {string}
|
|
2144
|
+
* @memberof View
|
|
2145
|
+
*/
|
|
2146
|
+
backgroundColor?: string | null;
|
|
2147
|
+
/**
|
|
2148
|
+
* (**default=`0.0`**) Radius of a rounded corner.
|
|
2149
|
+
* @type {number}
|
|
2150
|
+
* @memberof View
|
|
2151
|
+
*/
|
|
2152
|
+
borderRadius?: number | null;
|
|
2153
|
+
/**
|
|
2154
|
+
* (**default=`0.0`**) Border width.
|
|
2155
|
+
* @type {number}
|
|
2156
|
+
* @memberof View
|
|
2157
|
+
*/
|
|
2158
|
+
borderWidth?: number | null;
|
|
2159
|
+
/**
|
|
2160
|
+
* (**default=`"#00000000"`**) Border color in a `"#RRGGBBAA"` format.
|
|
2161
|
+
* @type {string}
|
|
2162
|
+
* @memberof View
|
|
2163
|
+
*/
|
|
2164
|
+
borderColor?: string | null;
|
|
2165
|
+
/**
|
|
2166
|
+
* List of box shadows.
|
|
2167
|
+
* @type {Array<BoxShadow>}
|
|
2168
|
+
* @memberof View
|
|
2169
|
+
*/
|
|
2170
|
+
boxShadow?: Array<BoxShadow> | null;
|
|
2171
|
+
/**
|
|
2172
|
+
* (**default=`0.0`**) Padding for all sides of the component.
|
|
2173
|
+
* @type {number}
|
|
2174
|
+
* @memberof View
|
|
2175
|
+
*/
|
|
2176
|
+
padding?: number | null;
|
|
2177
|
+
/**
|
|
2178
|
+
* (**default=`0.0`**) Padding for the top and bottom of the component.
|
|
2179
|
+
* @type {number}
|
|
2180
|
+
* @memberof View
|
|
2181
|
+
*/
|
|
2182
|
+
paddingVertical?: number | null;
|
|
2183
|
+
/**
|
|
2184
|
+
* (**default=`0.0`**) Padding for the left and right of the component.
|
|
2185
|
+
* @type {number}
|
|
2186
|
+
* @memberof View
|
|
2187
|
+
*/
|
|
2188
|
+
paddingHorizontal?: number | null;
|
|
2189
|
+
/**
|
|
2190
|
+
* (**default=`0.0`**) Padding on top side in pixels.
|
|
2191
|
+
* @type {number}
|
|
2192
|
+
* @memberof View
|
|
2193
|
+
*/
|
|
2194
|
+
paddingTop?: number | null;
|
|
2195
|
+
/**
|
|
2196
|
+
* (**default=`0.0`**) Padding on right side in pixels.
|
|
2197
|
+
* @type {number}
|
|
2198
|
+
* @memberof View
|
|
2199
|
+
*/
|
|
2200
|
+
paddingRight?: number | null;
|
|
2201
|
+
/**
|
|
2202
|
+
* (**default=`0.0`**) Padding on bottom side in pixels.
|
|
2203
|
+
* @type {number}
|
|
2204
|
+
* @memberof View
|
|
2205
|
+
*/
|
|
2206
|
+
paddingBottom?: number | null;
|
|
2207
|
+
/**
|
|
2208
|
+
* (**default=`0.0`**) Padding on left side in pixels.
|
|
2209
|
+
* @type {number}
|
|
2210
|
+
* @memberof View
|
|
2211
|
+
*/
|
|
2212
|
+
paddingLeft?: number | null;
|
|
2213
|
+
/**
|
|
2214
|
+
*
|
|
2215
|
+
* @type {ViewTypeEnum}
|
|
2216
|
+
* @memberof View
|
|
2217
|
+
*/
|
|
2218
|
+
type: ViewTypeEnum;
|
|
2219
|
+
}
|
|
2220
|
+
/**
|
|
2221
|
+
* @export
|
|
2222
|
+
*/
|
|
2223
|
+
declare const ViewTypeEnum: {
|
|
2224
|
+
readonly View: "view";
|
|
2225
|
+
};
|
|
2226
|
+
type ViewTypeEnum = (typeof ViewTypeEnum)[keyof typeof ViewTypeEnum];
|
|
2227
|
+
|
|
2228
|
+
/**
|
|
2229
|
+
* Composition API
|
|
2230
|
+
* Real-time video compositing
|
|
2231
|
+
*
|
|
2232
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2233
|
+
*
|
|
2234
|
+
*
|
|
2235
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2236
|
+
* https://openapi-generator.tech
|
|
2237
|
+
* Do not edit the class manually.
|
|
2238
|
+
*/
|
|
2239
|
+
|
|
2240
|
+
/**
|
|
2241
|
+
* @type Component
|
|
2242
|
+
*
|
|
2243
|
+
* @export
|
|
2244
|
+
*/
|
|
2245
|
+
type Component = Image | InputStream | Rescaler | Text | Tiles | View;
|
|
2246
|
+
|
|
2247
|
+
/**
|
|
2248
|
+
* Composition API
|
|
2249
|
+
* Real-time video compositing
|
|
2250
|
+
*
|
|
2251
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2252
|
+
*
|
|
2253
|
+
*
|
|
2254
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2255
|
+
* https://openapi-generator.tech
|
|
2256
|
+
* Do not edit the class manually.
|
|
2257
|
+
*/
|
|
2258
|
+
|
|
2259
|
+
/**
|
|
2260
|
+
*
|
|
2261
|
+
* @export
|
|
2262
|
+
* @interface VideoScene
|
|
2263
|
+
*/
|
|
2264
|
+
interface VideoScene {
|
|
2265
|
+
/**
|
|
2266
|
+
*
|
|
2267
|
+
* @type {Component}
|
|
2268
|
+
* @memberof VideoScene
|
|
2269
|
+
*/
|
|
2270
|
+
root: Component;
|
|
2271
|
+
}
|
|
2272
|
+
|
|
2273
|
+
/**
|
|
2274
|
+
* Composition API
|
|
2275
|
+
* Real-time video compositing
|
|
2276
|
+
*
|
|
2277
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2278
|
+
*
|
|
2279
|
+
*
|
|
2280
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2281
|
+
* https://openapi-generator.tech
|
|
2282
|
+
* Do not edit the class manually.
|
|
2283
|
+
*/
|
|
2284
|
+
/**
|
|
2285
|
+
* This type defines when end of an input stream should trigger end of the output stream. Only one of those fields can be set at the time.
|
|
2286
|
+
* Unless specified otherwise the input stream is considered finished/ended when:
|
|
2287
|
+
* - TCP connection was dropped/closed.
|
|
2288
|
+
* - RTCP Goodbye packet (`BYE`) was received.
|
|
2289
|
+
* - Mp4 track has ended.
|
|
2290
|
+
* - Input was unregistered already (or never registered).
|
|
2291
|
+
* @export
|
|
2292
|
+
* @interface OutputEndCondition
|
|
2293
|
+
*/
|
|
2294
|
+
interface OutputEndCondition {
|
|
2295
|
+
/**
|
|
2296
|
+
* Terminate output stream if any of the input streams from the list are finished.
|
|
2297
|
+
* @type {Array<string>}
|
|
2298
|
+
* @memberof OutputEndCondition
|
|
2299
|
+
*/
|
|
2300
|
+
anyOf?: Array<string> | null;
|
|
2301
|
+
/**
|
|
2302
|
+
* Terminate output stream if all the input streams from the list are finished.
|
|
2303
|
+
* @type {Array<string>}
|
|
2304
|
+
* @memberof OutputEndCondition
|
|
2305
|
+
*/
|
|
2306
|
+
allOf?: Array<string> | null;
|
|
2307
|
+
/**
|
|
2308
|
+
* Terminate output stream if any of the input streams ends. This includes streams added after the output was registered. In particular, output stream will **not be** terminated if no inputs were ever connected.
|
|
2309
|
+
* @type {boolean}
|
|
2310
|
+
* @memberof OutputEndCondition
|
|
2311
|
+
*/
|
|
2312
|
+
anyInput?: boolean | null;
|
|
2313
|
+
/**
|
|
2314
|
+
* Terminate output stream if all the input streams finish. In particular, output stream will **be** terminated if no inputs were ever connected.
|
|
2315
|
+
* @type {boolean}
|
|
2316
|
+
* @memberof OutputEndCondition
|
|
2317
|
+
*/
|
|
2318
|
+
allInputs?: boolean | null;
|
|
2319
|
+
}
|
|
2320
|
+
|
|
2321
|
+
/**
|
|
2322
|
+
* Composition API
|
|
2323
|
+
* Real-time video compositing
|
|
2324
|
+
*
|
|
2325
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2326
|
+
*
|
|
2327
|
+
*
|
|
2328
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2329
|
+
* https://openapi-generator.tech
|
|
2330
|
+
* Do not edit the class manually.
|
|
2331
|
+
*/
|
|
2332
|
+
/**
|
|
2333
|
+
*
|
|
2334
|
+
* @export
|
|
2335
|
+
* @interface Resolution
|
|
2336
|
+
*/
|
|
2337
|
+
interface Resolution {
|
|
2338
|
+
/**
|
|
2339
|
+
* Width in pixels.
|
|
2340
|
+
* @type {number}
|
|
2341
|
+
* @memberof Resolution
|
|
2342
|
+
*/
|
|
2343
|
+
width: number;
|
|
2344
|
+
/**
|
|
2345
|
+
* Height in pixels.
|
|
2346
|
+
* @type {number}
|
|
2347
|
+
* @memberof Resolution
|
|
2348
|
+
*/
|
|
2349
|
+
height: number;
|
|
2350
|
+
}
|
|
2351
|
+
|
|
2352
|
+
/**
|
|
2353
|
+
* Composition API
|
|
2354
|
+
* Real-time video compositing
|
|
2355
|
+
*
|
|
2356
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2357
|
+
*
|
|
2358
|
+
*
|
|
2359
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2360
|
+
* https://openapi-generator.tech
|
|
2361
|
+
* Do not edit the class manually.
|
|
2362
|
+
*/
|
|
2363
|
+
|
|
2364
|
+
/**
|
|
2365
|
+
*
|
|
2366
|
+
* @export
|
|
2367
|
+
* @interface OutputRtmpClientVideoOptions
|
|
2368
|
+
*/
|
|
2369
|
+
interface OutputRtmpClientVideoOptions {
|
|
2370
|
+
/**
|
|
2371
|
+
* Output resolution in pixels.
|
|
2372
|
+
* @type {Resolution}
|
|
2373
|
+
* @memberof OutputRtmpClientVideoOptions
|
|
2374
|
+
*/
|
|
2375
|
+
resolution: Resolution;
|
|
2376
|
+
/**
|
|
2377
|
+
* Condition for termination of the output stream based on the input streams states. If output includes both audio and video streams, then EOS needs to be sent for every type.
|
|
2378
|
+
* @type {OutputEndCondition}
|
|
2379
|
+
* @memberof OutputRtmpClientVideoOptions
|
|
2380
|
+
*/
|
|
2381
|
+
sendEosWhen?: OutputEndCondition | null;
|
|
2382
|
+
/**
|
|
2383
|
+
* Root of a component tree/scene that should be rendered for the output. Use `update_output` request to update this value after registration. Learn more.
|
|
2384
|
+
* @type {VideoScene}
|
|
2385
|
+
* @memberof OutputRtmpClientVideoOptions
|
|
2386
|
+
*/
|
|
2387
|
+
initial: VideoScene;
|
|
2388
|
+
}
|
|
2389
|
+
|
|
2390
|
+
/**
|
|
2391
|
+
* Composition API
|
|
2392
|
+
* Real-time video compositing
|
|
2393
|
+
*
|
|
2394
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2395
|
+
*
|
|
2396
|
+
*
|
|
2397
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2398
|
+
* https://openapi-generator.tech
|
|
2399
|
+
* Do not edit the class manually.
|
|
2400
|
+
*/
|
|
2401
|
+
/**
|
|
2402
|
+
*
|
|
2403
|
+
* @export
|
|
2404
|
+
*/
|
|
2405
|
+
declare const AudioChannels: {
|
|
2406
|
+
readonly Mono: "mono";
|
|
2407
|
+
readonly Stereo: "stereo";
|
|
2408
|
+
};
|
|
2409
|
+
type AudioChannels = (typeof AudioChannels)[keyof typeof AudioChannels];
|
|
2410
|
+
|
|
2411
|
+
/**
|
|
2412
|
+
* Composition API
|
|
2413
|
+
* Real-time video compositing
|
|
2414
|
+
*
|
|
2415
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2416
|
+
*
|
|
2417
|
+
*
|
|
2418
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2419
|
+
* https://openapi-generator.tech
|
|
2420
|
+
* Do not edit the class manually.
|
|
2421
|
+
*/
|
|
2422
|
+
/**
|
|
2423
|
+
*
|
|
2424
|
+
* @export
|
|
2425
|
+
*/
|
|
2426
|
+
declare const AudioMixingStrategy: {
|
|
2427
|
+
readonly SumClip: "sum_clip";
|
|
2428
|
+
readonly SumScale: "sum_scale";
|
|
2429
|
+
};
|
|
2430
|
+
type AudioMixingStrategy = (typeof AudioMixingStrategy)[keyof typeof AudioMixingStrategy];
|
|
2431
|
+
|
|
2432
|
+
/**
|
|
2433
|
+
* Composition API
|
|
2434
|
+
* Real-time video compositing
|
|
2435
|
+
*
|
|
2436
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2437
|
+
*
|
|
2438
|
+
*
|
|
2439
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2440
|
+
* https://openapi-generator.tech
|
|
2441
|
+
* Do not edit the class manually.
|
|
2442
|
+
*/
|
|
2443
|
+
/**
|
|
2444
|
+
*
|
|
2445
|
+
* @export
|
|
2446
|
+
* @interface AudioSceneInput
|
|
2447
|
+
*/
|
|
2448
|
+
interface AudioSceneInput {
|
|
2449
|
+
/**
|
|
2450
|
+
*
|
|
2451
|
+
* @type {string}
|
|
2452
|
+
* @memberof AudioSceneInput
|
|
2453
|
+
*/
|
|
2454
|
+
inputId: string;
|
|
2455
|
+
/**
|
|
2456
|
+
* (**default=`1.0`**) float in `[0, 2]` range representing input volume
|
|
2457
|
+
* @type {number}
|
|
2458
|
+
* @memberof AudioSceneInput
|
|
2459
|
+
*/
|
|
2460
|
+
volume?: number | null;
|
|
2461
|
+
}
|
|
2462
|
+
|
|
2463
|
+
/**
|
|
2464
|
+
* Composition API
|
|
2465
|
+
* Real-time video compositing
|
|
2466
|
+
*
|
|
2467
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2468
|
+
*
|
|
2469
|
+
*
|
|
2470
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2471
|
+
* https://openapi-generator.tech
|
|
2472
|
+
* Do not edit the class manually.
|
|
2473
|
+
*/
|
|
2474
|
+
|
|
2475
|
+
/**
|
|
2476
|
+
*
|
|
2477
|
+
* @export
|
|
2478
|
+
* @interface AudioScene
|
|
2479
|
+
*/
|
|
2480
|
+
interface AudioScene {
|
|
2481
|
+
/**
|
|
2482
|
+
*
|
|
2483
|
+
* @type {Array<AudioSceneInput>}
|
|
2484
|
+
* @memberof AudioScene
|
|
2485
|
+
*/
|
|
2486
|
+
inputs: Array<AudioSceneInput>;
|
|
2487
|
+
}
|
|
2488
|
+
|
|
2489
|
+
/**
|
|
2490
|
+
* Composition API
|
|
2491
|
+
* Real-time video compositing
|
|
2492
|
+
*
|
|
2493
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2494
|
+
*
|
|
2495
|
+
*
|
|
2496
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2497
|
+
* https://openapi-generator.tech
|
|
2498
|
+
* Do not edit the class manually.
|
|
2499
|
+
*/
|
|
2500
|
+
|
|
2501
|
+
/**
|
|
2502
|
+
*
|
|
2503
|
+
* @export
|
|
2504
|
+
* @interface OutputRtmpClientAudioOptions
|
|
2505
|
+
*/
|
|
2506
|
+
interface OutputRtmpClientAudioOptions {
|
|
2507
|
+
/**
|
|
2508
|
+
* (**default="sum_clip"**) Specifies how audio should be mixed.
|
|
2509
|
+
* @type {AudioMixingStrategy}
|
|
2510
|
+
* @memberof OutputRtmpClientAudioOptions
|
|
2511
|
+
*/
|
|
2512
|
+
mixingStrategy?: AudioMixingStrategy | null;
|
|
2513
|
+
/**
|
|
2514
|
+
* Condition for termination of the output stream based on the input streams states. If output includes both audio and video streams, then EOS needs to be sent for every type.
|
|
2515
|
+
* @type {OutputEndCondition}
|
|
2516
|
+
* @memberof OutputRtmpClientAudioOptions
|
|
2517
|
+
*/
|
|
2518
|
+
sendEosWhen?: OutputEndCondition | null;
|
|
2519
|
+
/**
|
|
2520
|
+
* Channels configuration.
|
|
2521
|
+
* @type {AudioChannels}
|
|
2522
|
+
* @memberof OutputRtmpClientAudioOptions
|
|
2523
|
+
*/
|
|
2524
|
+
channels?: AudioChannels | null;
|
|
2525
|
+
/**
|
|
2526
|
+
* Initial audio mixer configuration for output.
|
|
2527
|
+
* @type {AudioScene}
|
|
2528
|
+
* @memberof OutputRtmpClientAudioOptions
|
|
2529
|
+
*/
|
|
2530
|
+
initial: AudioScene;
|
|
2531
|
+
}
|
|
2532
|
+
|
|
2533
|
+
/**
|
|
2534
|
+
* Composition API
|
|
2535
|
+
* Real-time video compositing
|
|
2536
|
+
*
|
|
2537
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2538
|
+
*
|
|
2539
|
+
*
|
|
2540
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2541
|
+
* https://openapi-generator.tech
|
|
2542
|
+
* Do not edit the class manually.
|
|
2543
|
+
*/
|
|
2544
|
+
|
|
2545
|
+
/**
|
|
2546
|
+
*
|
|
2547
|
+
* @export
|
|
2548
|
+
* @interface RtmpOutput
|
|
2549
|
+
*/
|
|
2550
|
+
interface RtmpOutput {
|
|
2551
|
+
/**
|
|
2552
|
+
* RTMP endpoint url.
|
|
2553
|
+
* @type {string}
|
|
2554
|
+
* @memberof RtmpOutput
|
|
2555
|
+
*/
|
|
2556
|
+
url: string;
|
|
2557
|
+
/**
|
|
2558
|
+
* Video stream configuration.
|
|
2559
|
+
* @type {OutputRtmpClientVideoOptions}
|
|
2560
|
+
* @memberof RtmpOutput
|
|
2561
|
+
*/
|
|
2562
|
+
video?: OutputRtmpClientVideoOptions | null;
|
|
2563
|
+
/**
|
|
2564
|
+
* Audio stream configuration.
|
|
2565
|
+
* @type {OutputRtmpClientAudioOptions}
|
|
2566
|
+
* @memberof RtmpOutput
|
|
2567
|
+
*/
|
|
2568
|
+
audio?: OutputRtmpClientAudioOptions | null;
|
|
2569
|
+
/**
|
|
2570
|
+
*
|
|
2571
|
+
* @type {RtmpOutputTypeEnum}
|
|
2572
|
+
* @memberof RtmpOutput
|
|
2573
|
+
*/
|
|
2574
|
+
type: RtmpOutputTypeEnum;
|
|
2575
|
+
}
|
|
2576
|
+
/**
|
|
2577
|
+
* @export
|
|
2578
|
+
*/
|
|
2579
|
+
declare const RtmpOutputTypeEnum: {
|
|
2580
|
+
readonly RtmpClient: "rtmp_client";
|
|
2581
|
+
};
|
|
2582
|
+
type RtmpOutputTypeEnum = (typeof RtmpOutputTypeEnum)[keyof typeof RtmpOutputTypeEnum];
|
|
2583
|
+
|
|
2584
|
+
/**
|
|
2585
|
+
* Composition API
|
|
2586
|
+
* Real-time video compositing
|
|
2587
|
+
*
|
|
2588
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2589
|
+
*
|
|
2590
|
+
*
|
|
2591
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2592
|
+
* https://openapi-generator.tech
|
|
2593
|
+
* Do not edit the class manually.
|
|
2594
|
+
*/
|
|
2595
|
+
|
|
2596
|
+
/**
|
|
2597
|
+
*
|
|
2598
|
+
* @export
|
|
2599
|
+
* @interface OutputWhipVideoOptions
|
|
2600
|
+
*/
|
|
2601
|
+
interface OutputWhipVideoOptions {
|
|
2602
|
+
/**
|
|
2603
|
+
* Output resolution in pixels.
|
|
2604
|
+
* @type {Resolution}
|
|
2605
|
+
* @memberof OutputWhipVideoOptions
|
|
2606
|
+
*/
|
|
2607
|
+
resolution: Resolution;
|
|
2608
|
+
/**
|
|
2609
|
+
* Defines when output stream should end if some of the input streams are finished. If output includes both audio and video streams, then EOS needs to be sent on both.
|
|
2610
|
+
* @type {OutputEndCondition}
|
|
2611
|
+
* @memberof OutputWhipVideoOptions
|
|
2612
|
+
*/
|
|
2613
|
+
sendEosWhen?: OutputEndCondition | null;
|
|
2614
|
+
/**
|
|
2615
|
+
* Root of a component tree/scene that should be rendered for the output.
|
|
2616
|
+
* @type {VideoScene}
|
|
2617
|
+
* @memberof OutputWhipVideoOptions
|
|
2618
|
+
*/
|
|
2619
|
+
initial: VideoScene;
|
|
2620
|
+
}
|
|
2621
|
+
|
|
2622
|
+
/**
|
|
2623
|
+
* Composition API
|
|
2624
|
+
* Real-time video compositing
|
|
2625
|
+
*
|
|
2626
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2627
|
+
*
|
|
2628
|
+
*
|
|
2629
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2630
|
+
* https://openapi-generator.tech
|
|
2631
|
+
* Do not edit the class manually.
|
|
2632
|
+
*/
|
|
2633
|
+
/**
|
|
2634
|
+
*
|
|
2635
|
+
* @export
|
|
2636
|
+
* @interface WhipAudioEncoderOptionsAny
|
|
2637
|
+
*/
|
|
2638
|
+
interface WhipAudioEncoderOptionsAny {
|
|
2639
|
+
/**
|
|
2640
|
+
*
|
|
2641
|
+
* @type {WhipAudioEncoderOptionsAnyTypeEnum}
|
|
2642
|
+
* @memberof WhipAudioEncoderOptionsAny
|
|
2643
|
+
*/
|
|
2644
|
+
type: WhipAudioEncoderOptionsAnyTypeEnum;
|
|
2645
|
+
}
|
|
2646
|
+
/**
|
|
2647
|
+
* @export
|
|
2648
|
+
*/
|
|
2649
|
+
declare const WhipAudioEncoderOptionsAnyTypeEnum: {
|
|
2650
|
+
readonly Any: "any";
|
|
2651
|
+
};
|
|
2652
|
+
type WhipAudioEncoderOptionsAnyTypeEnum = (typeof WhipAudioEncoderOptionsAnyTypeEnum)[keyof typeof WhipAudioEncoderOptionsAnyTypeEnum];
|
|
2653
|
+
|
|
2654
|
+
/**
|
|
2655
|
+
* Composition API
|
|
2656
|
+
* Real-time video compositing
|
|
2657
|
+
*
|
|
2658
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2659
|
+
*
|
|
2660
|
+
*
|
|
2661
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2662
|
+
* https://openapi-generator.tech
|
|
2663
|
+
* Do not edit the class manually.
|
|
2664
|
+
*/
|
|
2665
|
+
/**
|
|
2666
|
+
*
|
|
2667
|
+
* @export
|
|
2668
|
+
*/
|
|
2669
|
+
declare const OpusEncoderPreset: {
|
|
2670
|
+
readonly Quality: "quality";
|
|
2671
|
+
readonly Voip: "voip";
|
|
2672
|
+
readonly LowestLatency: "lowest_latency";
|
|
2673
|
+
};
|
|
2674
|
+
type OpusEncoderPreset = (typeof OpusEncoderPreset)[keyof typeof OpusEncoderPreset];
|
|
2675
|
+
|
|
2676
|
+
/**
|
|
2677
|
+
* Composition API
|
|
2678
|
+
* Real-time video compositing
|
|
2679
|
+
*
|
|
2680
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2681
|
+
*
|
|
2682
|
+
*
|
|
2683
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2684
|
+
* https://openapi-generator.tech
|
|
2685
|
+
* Do not edit the class manually.
|
|
2686
|
+
*/
|
|
2687
|
+
|
|
2688
|
+
/**
|
|
2689
|
+
*
|
|
2690
|
+
* @export
|
|
2691
|
+
* @interface WhipAudioEncoderOptionsOpus
|
|
2692
|
+
*/
|
|
2693
|
+
interface WhipAudioEncoderOptionsOpus {
|
|
2694
|
+
/**
|
|
2695
|
+
* (**default="voip"**) Specifies preset for audio output encoder.
|
|
2696
|
+
* @type {OpusEncoderPreset}
|
|
2697
|
+
* @memberof WhipAudioEncoderOptionsOpus
|
|
2698
|
+
*/
|
|
2699
|
+
preset?: OpusEncoderPreset | null;
|
|
2700
|
+
/**
|
|
2701
|
+
* (**default=`48000`**) Sample rate. Allowed values: [8000, 16000, 24000, 48000].
|
|
2702
|
+
* @type {number}
|
|
2703
|
+
* @memberof WhipAudioEncoderOptionsOpus
|
|
2704
|
+
*/
|
|
2705
|
+
sampleRate?: number | null;
|
|
2706
|
+
/**
|
|
2707
|
+
* (**default=`false`**) Specifies if forward error correction (FEC) should be used.
|
|
2708
|
+
* @type {boolean}
|
|
2709
|
+
* @memberof WhipAudioEncoderOptionsOpus
|
|
2710
|
+
*/
|
|
2711
|
+
forwardErrorCorrection?: boolean | null;
|
|
2712
|
+
/**
|
|
2713
|
+
*
|
|
2714
|
+
* @type {WhipAudioEncoderOptionsOpusTypeEnum}
|
|
2715
|
+
* @memberof WhipAudioEncoderOptionsOpus
|
|
2716
|
+
*/
|
|
2717
|
+
type: WhipAudioEncoderOptionsOpusTypeEnum;
|
|
2718
|
+
}
|
|
2719
|
+
/**
|
|
2720
|
+
* @export
|
|
2721
|
+
*/
|
|
2722
|
+
declare const WhipAudioEncoderOptionsOpusTypeEnum: {
|
|
2723
|
+
readonly Opus: "opus";
|
|
2724
|
+
};
|
|
2725
|
+
type WhipAudioEncoderOptionsOpusTypeEnum = (typeof WhipAudioEncoderOptionsOpusTypeEnum)[keyof typeof WhipAudioEncoderOptionsOpusTypeEnum];
|
|
2726
|
+
|
|
2727
|
+
/**
|
|
2728
|
+
* Composition API
|
|
2729
|
+
* Real-time video compositing
|
|
2730
|
+
*
|
|
2731
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2732
|
+
*
|
|
2733
|
+
*
|
|
2734
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2735
|
+
* https://openapi-generator.tech
|
|
2736
|
+
* Do not edit the class manually.
|
|
2737
|
+
*/
|
|
2738
|
+
|
|
2739
|
+
/**
|
|
2740
|
+
* @type WhipAudioEncoderOptions
|
|
2741
|
+
*
|
|
2742
|
+
* @export
|
|
2743
|
+
*/
|
|
2744
|
+
type WhipAudioEncoderOptions = WhipAudioEncoderOptionsAny | WhipAudioEncoderOptionsOpus;
|
|
2745
|
+
|
|
2746
|
+
/**
|
|
2747
|
+
* Composition API
|
|
2748
|
+
* Real-time video compositing
|
|
2749
|
+
*
|
|
2750
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2751
|
+
*
|
|
2752
|
+
*
|
|
2753
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2754
|
+
* https://openapi-generator.tech
|
|
2755
|
+
* Do not edit the class manually.
|
|
2756
|
+
*/
|
|
2757
|
+
|
|
2758
|
+
/**
|
|
2759
|
+
*
|
|
2760
|
+
* @export
|
|
2761
|
+
* @interface OutputWhipAudioOptions
|
|
2762
|
+
*/
|
|
2763
|
+
interface OutputWhipAudioOptions {
|
|
2764
|
+
/**
|
|
2765
|
+
* (**default="sum_clip"**) Specifies how audio should be mixed.
|
|
2766
|
+
* @type {AudioMixingStrategy}
|
|
2767
|
+
* @memberof OutputWhipAudioOptions
|
|
2768
|
+
*/
|
|
2769
|
+
mixingStrategy?: AudioMixingStrategy | null;
|
|
2770
|
+
/**
|
|
2771
|
+
* Condition for termination of output stream based on the input streams states.
|
|
2772
|
+
* @type {OutputEndCondition}
|
|
2773
|
+
* @memberof OutputWhipAudioOptions
|
|
2774
|
+
*/
|
|
2775
|
+
sendEosWhen?: OutputEndCondition | null;
|
|
2776
|
+
/**
|
|
2777
|
+
* Specifies channels configuration.
|
|
2778
|
+
* @type {AudioChannels}
|
|
2779
|
+
* @memberof OutputWhipAudioOptions
|
|
2780
|
+
*/
|
|
2781
|
+
channels?: AudioChannels | null;
|
|
2782
|
+
/**
|
|
2783
|
+
* Codec preferences list.
|
|
2784
|
+
* @type {Array<WhipAudioEncoderOptions>}
|
|
2785
|
+
* @memberof OutputWhipAudioOptions
|
|
2786
|
+
*/
|
|
2787
|
+
encoderPreferences?: Array<WhipAudioEncoderOptions> | null;
|
|
2788
|
+
/**
|
|
2789
|
+
* Initial audio mixer configuration for output.
|
|
2790
|
+
* @type {AudioScene}
|
|
2791
|
+
* @memberof OutputWhipAudioOptions
|
|
2792
|
+
*/
|
|
2793
|
+
initial: AudioScene;
|
|
2794
|
+
}
|
|
2795
|
+
|
|
2796
|
+
/**
|
|
2797
|
+
* Composition API
|
|
2798
|
+
* Real-time video compositing
|
|
2799
|
+
*
|
|
2800
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2801
|
+
*
|
|
2802
|
+
*
|
|
2803
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2804
|
+
* https://openapi-generator.tech
|
|
2805
|
+
* Do not edit the class manually.
|
|
2806
|
+
*/
|
|
2807
|
+
|
|
2808
|
+
/**
|
|
2809
|
+
*
|
|
2810
|
+
* @export
|
|
2811
|
+
* @interface WhipOutput
|
|
2812
|
+
*/
|
|
2813
|
+
interface WhipOutput {
|
|
2814
|
+
/**
|
|
2815
|
+
* WHIP server endpoint
|
|
2816
|
+
* @type {string}
|
|
2817
|
+
* @memberof WhipOutput
|
|
2818
|
+
*/
|
|
2819
|
+
endpointUrl: string;
|
|
2820
|
+
/**
|
|
2821
|
+
*
|
|
2822
|
+
* @type {string}
|
|
2823
|
+
* @memberof WhipOutput
|
|
2824
|
+
*/
|
|
2825
|
+
bearerToken?: string | null;
|
|
2826
|
+
/**
|
|
2827
|
+
* Video track configuration.
|
|
2828
|
+
* @type {OutputWhipVideoOptions}
|
|
2829
|
+
* @memberof WhipOutput
|
|
2830
|
+
*/
|
|
2831
|
+
video?: OutputWhipVideoOptions | null;
|
|
2832
|
+
/**
|
|
2833
|
+
* Audio track configuration.
|
|
2834
|
+
* @type {OutputWhipAudioOptions}
|
|
2835
|
+
* @memberof WhipOutput
|
|
2836
|
+
*/
|
|
2837
|
+
audio?: OutputWhipAudioOptions | null;
|
|
2838
|
+
/**
|
|
2839
|
+
*
|
|
2840
|
+
* @type {WhipOutputTypeEnum}
|
|
2841
|
+
* @memberof WhipOutput
|
|
2842
|
+
*/
|
|
2843
|
+
type: WhipOutputTypeEnum;
|
|
2844
|
+
}
|
|
2845
|
+
/**
|
|
2846
|
+
* @export
|
|
2847
|
+
*/
|
|
2848
|
+
declare const WhipOutputTypeEnum: {
|
|
2849
|
+
readonly WhipClient: "whip_client";
|
|
2850
|
+
};
|
|
2851
|
+
type WhipOutputTypeEnum = (typeof WhipOutputTypeEnum)[keyof typeof WhipOutputTypeEnum];
|
|
2852
|
+
|
|
2853
|
+
/**
|
|
2854
|
+
* Composition API
|
|
2855
|
+
* Real-time video compositing
|
|
2856
|
+
*
|
|
2857
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2858
|
+
*
|
|
2859
|
+
*
|
|
2860
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2861
|
+
* https://openapi-generator.tech
|
|
2862
|
+
* Do not edit the class manually.
|
|
2863
|
+
*/
|
|
2864
|
+
|
|
2865
|
+
/**
|
|
2866
|
+
* @type RegisterOutput
|
|
2867
|
+
*
|
|
2868
|
+
* @export
|
|
2869
|
+
*/
|
|
2870
|
+
type RegisterOutput = RtmpOutput | WhipOutput;
|
|
2871
|
+
|
|
2872
|
+
/**
|
|
2873
|
+
* Composition API
|
|
2874
|
+
* Real-time video compositing
|
|
2875
|
+
*
|
|
2876
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2877
|
+
*
|
|
2878
|
+
*
|
|
2879
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2880
|
+
* https://openapi-generator.tech
|
|
2881
|
+
* Do not edit the class manually.
|
|
2882
|
+
*/
|
|
2883
|
+
/**
|
|
2884
|
+
*
|
|
2885
|
+
* @export
|
|
2886
|
+
* @interface UnregisterOutput
|
|
2887
|
+
*/
|
|
2888
|
+
interface UnregisterOutput {
|
|
2889
|
+
/**
|
|
2890
|
+
* Time in milliseconds when this request should be applied. Value `0` represents
|
|
2891
|
+
* time of the start request.
|
|
2892
|
+
* @type {number}
|
|
2893
|
+
* @memberof UnregisterOutput
|
|
2894
|
+
*/
|
|
2895
|
+
scheduleTimeMs?: number | null;
|
|
2896
|
+
}
|
|
2897
|
+
|
|
2898
|
+
/**
|
|
2899
|
+
* Composition API
|
|
2900
|
+
* Real-time video compositing
|
|
2901
|
+
*
|
|
2902
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2903
|
+
*
|
|
2904
|
+
*
|
|
2905
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2906
|
+
* https://openapi-generator.tech
|
|
2907
|
+
* Do not edit the class manually.
|
|
2908
|
+
*/
|
|
2909
|
+
|
|
2910
|
+
/**
|
|
2911
|
+
*
|
|
2912
|
+
* @export
|
|
2913
|
+
* @interface UpdateOutputRequest
|
|
2914
|
+
*/
|
|
2915
|
+
interface UpdateOutputRequest {
|
|
2916
|
+
/**
|
|
2917
|
+
*
|
|
2918
|
+
* @type {VideoScene}
|
|
2919
|
+
* @memberof UpdateOutputRequest
|
|
2920
|
+
*/
|
|
2921
|
+
video?: VideoScene | null;
|
|
2922
|
+
/**
|
|
2923
|
+
*
|
|
2924
|
+
* @type {AudioScene}
|
|
2925
|
+
* @memberof UpdateOutputRequest
|
|
2926
|
+
*/
|
|
2927
|
+
audio?: AudioScene | null;
|
|
2928
|
+
/**
|
|
2929
|
+
*
|
|
2930
|
+
* @type {number}
|
|
2931
|
+
* @memberof UpdateOutputRequest
|
|
2932
|
+
*/
|
|
2933
|
+
scheduleTimeMs?: number | null;
|
|
2934
|
+
}
|
|
2935
|
+
|
|
2936
|
+
/**
|
|
2937
|
+
* Composition API
|
|
2938
|
+
* Real-time video compositing
|
|
2939
|
+
*
|
|
2940
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2941
|
+
*
|
|
2942
|
+
*
|
|
2943
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2944
|
+
* https://openapi-generator.tech
|
|
2945
|
+
* Do not edit the class manually.
|
|
2946
|
+
*/
|
|
2947
|
+
/**
|
|
2948
|
+
*
|
|
2949
|
+
* @export
|
|
2950
|
+
* @interface ImageSpecAuto
|
|
2951
|
+
*/
|
|
2952
|
+
interface ImageSpecAuto {
|
|
2953
|
+
/**
|
|
2954
|
+
*
|
|
2955
|
+
* @type {string}
|
|
2956
|
+
* @memberof ImageSpecAuto
|
|
2957
|
+
*/
|
|
2958
|
+
url: string;
|
|
2959
|
+
/**
|
|
2960
|
+
*
|
|
2961
|
+
* @type {ImageSpecAutoAssetTypeEnum}
|
|
2962
|
+
* @memberof ImageSpecAuto
|
|
2963
|
+
*/
|
|
2964
|
+
assetType: ImageSpecAutoAssetTypeEnum;
|
|
2965
|
+
}
|
|
2966
|
+
/**
|
|
2967
|
+
* @export
|
|
2968
|
+
*/
|
|
2969
|
+
declare const ImageSpecAutoAssetTypeEnum: {
|
|
2970
|
+
readonly Auto: "auto";
|
|
2971
|
+
};
|
|
2972
|
+
type ImageSpecAutoAssetTypeEnum = (typeof ImageSpecAutoAssetTypeEnum)[keyof typeof ImageSpecAutoAssetTypeEnum];
|
|
2973
|
+
|
|
2974
|
+
/**
|
|
2975
|
+
* Composition API
|
|
2976
|
+
* Real-time video compositing
|
|
2977
|
+
*
|
|
2978
|
+
* The version of the OpenAPI document: 0.1.0
|
|
2979
|
+
*
|
|
2980
|
+
*
|
|
2981
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
2982
|
+
* https://openapi-generator.tech
|
|
2983
|
+
* Do not edit the class manually.
|
|
2984
|
+
*/
|
|
2985
|
+
/**
|
|
2986
|
+
*
|
|
2987
|
+
* @export
|
|
2988
|
+
* @interface ImageSpecGif
|
|
2989
|
+
*/
|
|
2990
|
+
interface ImageSpecGif {
|
|
245
2991
|
/**
|
|
246
2992
|
*
|
|
247
|
-
* @type {
|
|
248
|
-
* @memberof
|
|
2993
|
+
* @type {string}
|
|
2994
|
+
* @memberof ImageSpecGif
|
|
249
2995
|
*/
|
|
250
|
-
|
|
2996
|
+
url: string;
|
|
251
2997
|
/**
|
|
252
2998
|
*
|
|
253
|
-
* @type {
|
|
254
|
-
* @memberof
|
|
255
|
-
*/
|
|
256
|
-
'videoCodec'?: VideoCodec;
|
|
257
|
-
/**
|
|
258
|
-
* URL where Fishjam notifications will be sent
|
|
259
|
-
* @type {string}
|
|
260
|
-
* @memberof RoomConfig
|
|
2999
|
+
* @type {ImageSpecGifAssetTypeEnum}
|
|
3000
|
+
* @memberof ImageSpecGif
|
|
261
3001
|
*/
|
|
262
|
-
|
|
3002
|
+
assetType: ImageSpecGifAssetTypeEnum;
|
|
263
3003
|
}
|
|
264
3004
|
/**
|
|
265
|
-
* The use-case of the room. If not provided, this defaults to conference.
|
|
266
3005
|
* @export
|
|
267
|
-
* @enum {string}
|
|
268
3006
|
*/
|
|
269
|
-
declare const
|
|
270
|
-
readonly
|
|
271
|
-
readonly AudioOnly: "audio_only";
|
|
272
|
-
readonly Broadcaster: "broadcaster";
|
|
273
|
-
readonly Livestream: "livestream";
|
|
274
|
-
readonly Conference: "conference";
|
|
275
|
-
readonly AudioOnlyLivestream: "audio_only_livestream";
|
|
3007
|
+
declare const ImageSpecGifAssetTypeEnum: {
|
|
3008
|
+
readonly Gif: "gif";
|
|
276
3009
|
};
|
|
277
|
-
type
|
|
3010
|
+
type ImageSpecGifAssetTypeEnum = (typeof ImageSpecGifAssetTypeEnum)[keyof typeof ImageSpecGifAssetTypeEnum];
|
|
3011
|
+
|
|
278
3012
|
/**
|
|
279
|
-
*
|
|
3013
|
+
* Composition API
|
|
3014
|
+
* Real-time video compositing
|
|
3015
|
+
*
|
|
3016
|
+
* The version of the OpenAPI document: 0.1.0
|
|
3017
|
+
*
|
|
3018
|
+
*
|
|
3019
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
3020
|
+
* https://openapi-generator.tech
|
|
3021
|
+
* Do not edit the class manually.
|
|
3022
|
+
*/
|
|
3023
|
+
/**
|
|
3024
|
+
*
|
|
280
3025
|
* @export
|
|
281
|
-
* @interface
|
|
3026
|
+
* @interface ImageSpecJpeg
|
|
282
3027
|
*/
|
|
283
|
-
interface
|
|
3028
|
+
interface ImageSpecJpeg {
|
|
284
3029
|
/**
|
|
285
|
-
*
|
|
3030
|
+
*
|
|
286
3031
|
* @type {string}
|
|
287
|
-
* @memberof
|
|
3032
|
+
* @memberof ImageSpecJpeg
|
|
3033
|
+
*/
|
|
3034
|
+
url: string;
|
|
3035
|
+
/**
|
|
3036
|
+
*
|
|
3037
|
+
* @type {ImageSpecJpegAssetTypeEnum}
|
|
3038
|
+
* @memberof ImageSpecJpeg
|
|
288
3039
|
*/
|
|
289
|
-
|
|
3040
|
+
assetType: ImageSpecJpegAssetTypeEnum;
|
|
290
3041
|
}
|
|
291
3042
|
/**
|
|
292
|
-
* Configuration of peer\'s subscribing policy
|
|
293
3043
|
* @export
|
|
294
|
-
* @enum {string}
|
|
295
3044
|
*/
|
|
296
|
-
declare const
|
|
297
|
-
readonly
|
|
298
|
-
readonly Manual: "manual";
|
|
3045
|
+
declare const ImageSpecJpegAssetTypeEnum: {
|
|
3046
|
+
readonly Jpeg: "jpeg";
|
|
299
3047
|
};
|
|
300
|
-
type
|
|
3048
|
+
type ImageSpecJpegAssetTypeEnum = (typeof ImageSpecJpegAssetTypeEnum)[keyof typeof ImageSpecJpegAssetTypeEnum];
|
|
3049
|
+
|
|
3050
|
+
/**
|
|
3051
|
+
* Composition API
|
|
3052
|
+
* Real-time video compositing
|
|
3053
|
+
*
|
|
3054
|
+
* The version of the OpenAPI document: 0.1.0
|
|
3055
|
+
*
|
|
3056
|
+
*
|
|
3057
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
3058
|
+
* https://openapi-generator.tech
|
|
3059
|
+
* Do not edit the class manually.
|
|
3060
|
+
*/
|
|
301
3061
|
/**
|
|
302
|
-
*
|
|
3062
|
+
*
|
|
303
3063
|
* @export
|
|
304
|
-
* @interface
|
|
3064
|
+
* @interface ImageSpecPng
|
|
305
3065
|
*/
|
|
306
|
-
interface
|
|
3066
|
+
interface ImageSpecPng {
|
|
307
3067
|
/**
|
|
308
|
-
*
|
|
309
|
-
* @type {
|
|
310
|
-
* @memberof
|
|
3068
|
+
*
|
|
3069
|
+
* @type {string}
|
|
3070
|
+
* @memberof ImageSpecPng
|
|
311
3071
|
*/
|
|
312
|
-
|
|
3072
|
+
url: string;
|
|
313
3073
|
/**
|
|
314
|
-
*
|
|
315
|
-
* @type {
|
|
316
|
-
* @memberof
|
|
3074
|
+
*
|
|
3075
|
+
* @type {ImageSpecPngAssetTypeEnum}
|
|
3076
|
+
* @memberof ImageSpecPng
|
|
317
3077
|
*/
|
|
318
|
-
|
|
3078
|
+
assetType: ImageSpecPngAssetTypeEnum;
|
|
319
3079
|
}
|
|
320
3080
|
/**
|
|
321
|
-
* Media track of a Peer
|
|
322
3081
|
* @export
|
|
323
|
-
* @interface Track
|
|
324
3082
|
*/
|
|
325
|
-
|
|
3083
|
+
declare const ImageSpecPngAssetTypeEnum: {
|
|
3084
|
+
readonly Png: "png";
|
|
3085
|
+
};
|
|
3086
|
+
type ImageSpecPngAssetTypeEnum = (typeof ImageSpecPngAssetTypeEnum)[keyof typeof ImageSpecPngAssetTypeEnum];
|
|
3087
|
+
|
|
3088
|
+
/**
|
|
3089
|
+
* Composition API
|
|
3090
|
+
* Real-time video compositing
|
|
3091
|
+
*
|
|
3092
|
+
* The version of the OpenAPI document: 0.1.0
|
|
3093
|
+
*
|
|
3094
|
+
*
|
|
3095
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
3096
|
+
* https://openapi-generator.tech
|
|
3097
|
+
* Do not edit the class manually.
|
|
3098
|
+
*/
|
|
3099
|
+
|
|
3100
|
+
/**
|
|
3101
|
+
*
|
|
3102
|
+
* @export
|
|
3103
|
+
* @interface ImageSpecSvg
|
|
3104
|
+
*/
|
|
3105
|
+
interface ImageSpecSvg {
|
|
326
3106
|
/**
|
|
327
|
-
*
|
|
3107
|
+
*
|
|
328
3108
|
* @type {string}
|
|
329
|
-
* @memberof
|
|
3109
|
+
* @memberof ImageSpecSvg
|
|
330
3110
|
*/
|
|
331
|
-
|
|
3111
|
+
url: string;
|
|
332
3112
|
/**
|
|
333
|
-
*
|
|
334
|
-
* @type {
|
|
335
|
-
* @memberof
|
|
3113
|
+
*
|
|
3114
|
+
* @type {Resolution}
|
|
3115
|
+
* @memberof ImageSpecSvg
|
|
336
3116
|
*/
|
|
337
|
-
|
|
3117
|
+
resolution?: Resolution | null;
|
|
338
3118
|
/**
|
|
339
3119
|
*
|
|
340
|
-
* @type {
|
|
341
|
-
* @memberof
|
|
3120
|
+
* @type {ImageSpecSvgAssetTypeEnum}
|
|
3121
|
+
* @memberof ImageSpecSvg
|
|
342
3122
|
*/
|
|
343
|
-
|
|
3123
|
+
assetType: ImageSpecSvgAssetTypeEnum;
|
|
344
3124
|
}
|
|
345
3125
|
/**
|
|
346
|
-
* Media type carried by the track
|
|
347
3126
|
* @export
|
|
348
|
-
* @enum {string}
|
|
349
3127
|
*/
|
|
350
|
-
declare const
|
|
351
|
-
readonly
|
|
352
|
-
readonly Video: "video";
|
|
3128
|
+
declare const ImageSpecSvgAssetTypeEnum: {
|
|
3129
|
+
readonly Svg: "svg";
|
|
353
3130
|
};
|
|
354
|
-
type
|
|
3131
|
+
type ImageSpecSvgAssetTypeEnum = (typeof ImageSpecSvgAssetTypeEnum)[keyof typeof ImageSpecSvgAssetTypeEnum];
|
|
3132
|
+
|
|
355
3133
|
/**
|
|
356
|
-
*
|
|
3134
|
+
* Composition API
|
|
3135
|
+
* Real-time video compositing
|
|
3136
|
+
*
|
|
3137
|
+
* The version of the OpenAPI document: 0.1.0
|
|
3138
|
+
*
|
|
3139
|
+
*
|
|
3140
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
3141
|
+
* https://openapi-generator.tech
|
|
3142
|
+
* Do not edit the class manually.
|
|
3143
|
+
*/
|
|
3144
|
+
|
|
3145
|
+
/**
|
|
3146
|
+
* @type ImageSpec
|
|
3147
|
+
*
|
|
357
3148
|
* @export
|
|
358
|
-
* @enum {string}
|
|
359
3149
|
*/
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
readonly Vp8: "vp8";
|
|
363
|
-
};
|
|
364
|
-
type VideoCodec = typeof VideoCodec[keyof typeof VideoCodec];
|
|
3150
|
+
type ImageSpec = ImageSpecAuto | ImageSpecGif | ImageSpecJpeg | ImageSpecPng | ImageSpecSvg;
|
|
3151
|
+
|
|
365
3152
|
/**
|
|
366
|
-
*
|
|
3153
|
+
* Composition API
|
|
3154
|
+
* Real-time video compositing
|
|
3155
|
+
*
|
|
3156
|
+
* The version of the OpenAPI document: 0.1.0
|
|
3157
|
+
*
|
|
3158
|
+
*
|
|
3159
|
+
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
|
|
3160
|
+
* https://openapi-generator.tech
|
|
3161
|
+
* Do not edit the class manually.
|
|
3162
|
+
*/
|
|
3163
|
+
/**
|
|
3164
|
+
*
|
|
367
3165
|
* @export
|
|
368
|
-
* @interface
|
|
3166
|
+
* @interface UnregisterRenderer
|
|
369
3167
|
*/
|
|
370
|
-
interface
|
|
3168
|
+
interface UnregisterRenderer {
|
|
371
3169
|
/**
|
|
372
|
-
*
|
|
373
|
-
*
|
|
374
|
-
* @
|
|
3170
|
+
* Time in milliseconds when this request should be applied. Value `0` represents
|
|
3171
|
+
* time of the start request.
|
|
3172
|
+
* @type {number}
|
|
3173
|
+
* @memberof UnregisterRenderer
|
|
375
3174
|
*/
|
|
376
|
-
|
|
3175
|
+
scheduleTimeMs?: number | null;
|
|
377
3176
|
}
|
|
378
3177
|
|
|
379
3178
|
/** Defines types of tracks being published by peers and component */
|
|
@@ -428,6 +3227,14 @@ declare enum ServerMessage_VadNotification_Status {
|
|
|
428
3227
|
STATUS_SPEECH = 2,
|
|
429
3228
|
UNRECOGNIZED = -1
|
|
430
3229
|
}
|
|
3230
|
+
declare enum ServerMessage_RecordingStatusChanged_Status {
|
|
3231
|
+
STATUS_UNSPECIFIED = 0,
|
|
3232
|
+
STATUS_ACTIVE = 1,
|
|
3233
|
+
STATUS_FINISHED = 2,
|
|
3234
|
+
STATUS_AVAILABLE = 3,
|
|
3235
|
+
STATUS_FAILED = 4,
|
|
3236
|
+
UNRECOGNIZED = -1
|
|
3237
|
+
}
|
|
431
3238
|
/** Defines any type of message passed between FJ and server peer */
|
|
432
3239
|
interface ServerMessage {
|
|
433
3240
|
authenticated?: ServerMessage_Authenticated | undefined;
|
|
@@ -455,6 +3262,7 @@ interface ServerMessage {
|
|
|
455
3262
|
viewerDisconnected?: ServerMessage_ViewerDisconnected | undefined;
|
|
456
3263
|
streamerConnected?: ServerMessage_StreamerConnected | undefined;
|
|
457
3264
|
streamerDisconnected?: ServerMessage_StreamerDisconnected | undefined;
|
|
3265
|
+
recordingStatusChanged?: ServerMessage_RecordingStatusChanged | undefined;
|
|
458
3266
|
/** Batch */
|
|
459
3267
|
notificationBatch?: ServerMessage_NotificationBatch | undefined;
|
|
460
3268
|
/** @deprecated */
|
|
@@ -670,6 +3478,13 @@ interface ServerMessage_StreamerDisconnected {
|
|
|
670
3478
|
streamerId: string;
|
|
671
3479
|
}
|
|
672
3480
|
declare const ServerMessage_StreamerDisconnected: MessageFns$1<ServerMessage_StreamerDisconnected>;
|
|
3481
|
+
interface ServerMessage_RecordingStatusChanged {
|
|
3482
|
+
recordingId: string;
|
|
3483
|
+
status: ServerMessage_RecordingStatusChanged_Status;
|
|
3484
|
+
/** JSON-encoded, as set on recording creation */
|
|
3485
|
+
metadata: string;
|
|
3486
|
+
}
|
|
3487
|
+
declare const ServerMessage_RecordingStatusChanged: MessageFns$1<ServerMessage_RecordingStatusChanged>;
|
|
673
3488
|
/**
|
|
674
3489
|
* Carries multiple notifications in a single wire frame.
|
|
675
3490
|
*
|
|
@@ -844,13 +3659,87 @@ type TrackType = TrackType$2 | 'unspecified';
|
|
|
844
3659
|
* Voice activity status of a track.
|
|
845
3660
|
*/
|
|
846
3661
|
type VadStatus = 'speech' | 'silence';
|
|
3662
|
+
/**
|
|
3663
|
+
* ID of a recording.
|
|
3664
|
+
* Recording can be started with {@link FishjamClient.createRecording}.
|
|
3665
|
+
*/
|
|
3666
|
+
type RecordingId = Brand<string, 'RecordingId'>;
|
|
3667
|
+
/**
|
|
3668
|
+
* Lifecycle status of a recording, as returned by the REST API and emitted by {@link FishjamWSNotifier}.
|
|
3669
|
+
*/
|
|
3670
|
+
type RecordingStatus = 'active' | 'finished' | 'available' | 'failed';
|
|
3671
|
+
/**
|
|
3672
|
+
* A recording and its current lifecycle status.
|
|
3673
|
+
*/
|
|
3674
|
+
type Recording = Override<Recording$1, {
|
|
3675
|
+
id: RecordingId;
|
|
3676
|
+
status: RecordingStatus;
|
|
3677
|
+
}>;
|
|
3678
|
+
/**
|
|
3679
|
+
* ID of a composition.
|
|
3680
|
+
* Composition can be created with {@link CompositionClient.createComposition}.
|
|
3681
|
+
*/
|
|
3682
|
+
type CompositionId = Brand<string, 'CompositionId'>;
|
|
3683
|
+
/**
|
|
3684
|
+
* ID of an input registered on a composition with {@link CompositionClient.registerInput}.
|
|
3685
|
+
*/
|
|
3686
|
+
type InputId = Brand<string, 'InputId'>;
|
|
3687
|
+
/**
|
|
3688
|
+
* ID of an output registered on a composition with {@link CompositionClient.registerOutput}.
|
|
3689
|
+
*/
|
|
3690
|
+
type OutputId = Brand<string, 'OutputId'>;
|
|
3691
|
+
/**
|
|
3692
|
+
* ID of a renderer, such as an image registered with {@link CompositionClient.registerImage}.
|
|
3693
|
+
*/
|
|
3694
|
+
type RendererId = Brand<string, 'RendererId'>;
|
|
3695
|
+
type Composition = Override<CompositionCreatedResponse, {
|
|
3696
|
+
compositionId: CompositionId;
|
|
3697
|
+
}>;
|
|
3698
|
+
/**
|
|
3699
|
+
* Where to publish a WHIP input registered with {@link CompositionClient.registerWhipInput}.
|
|
3700
|
+
* Hand these to a WHIP publisher, such as `useLivestreamStreamer` in the React client SDK.
|
|
3701
|
+
*/
|
|
3702
|
+
type WhipInputTarget = {
|
|
3703
|
+
url: string;
|
|
3704
|
+
bearerToken: string;
|
|
3705
|
+
};
|
|
3706
|
+
/**
|
|
3707
|
+
* How much media an MP4 input registered with {@link CompositionClient.registerMp4Input} holds.
|
|
3708
|
+
*/
|
|
3709
|
+
type Mp4InputDurations = {
|
|
3710
|
+
videoDurationMs?: number;
|
|
3711
|
+
audioDurationMs?: number;
|
|
3712
|
+
};
|
|
847
3713
|
type Room = {
|
|
848
3714
|
id: RoomId;
|
|
849
3715
|
peers: Peer[];
|
|
850
3716
|
config: RoomConfig;
|
|
851
3717
|
};
|
|
3718
|
+
type CompositionConfig = {
|
|
3719
|
+
/**
|
|
3720
|
+
* Management token is a secret token authorizing to perform actions on your account.
|
|
3721
|
+
* It is the same token {@link FishjamClient} is configured with.
|
|
3722
|
+
* Never share this token with anyone.
|
|
3723
|
+
* Visit https://fishjam.io/app/ to get your Management Token.
|
|
3724
|
+
*/
|
|
3725
|
+
managementToken: string;
|
|
3726
|
+
/**
|
|
3727
|
+
* Address of the Composition API. Only needs setting when running against a
|
|
3728
|
+
* deployment other than production.
|
|
3729
|
+
*/
|
|
3730
|
+
compositionUrl?: string;
|
|
3731
|
+
};
|
|
852
3732
|
type FishjamConfig = {
|
|
3733
|
+
/**
|
|
3734
|
+
* Fishjam ID is a unique identifier for your account and environment.
|
|
3735
|
+
* Visit https://fishjam.io/app/ to get your Fishjam ID.
|
|
3736
|
+
*/
|
|
853
3737
|
fishjamId: string;
|
|
3738
|
+
/**
|
|
3739
|
+
* Management token is a secret token authorizing to perform actions on your account.
|
|
3740
|
+
* Never share this token with anyone.
|
|
3741
|
+
* Visit https://fishjam.io/app/ to get your Management Token.
|
|
3742
|
+
*/
|
|
854
3743
|
managementToken: string;
|
|
855
3744
|
};
|
|
856
3745
|
type ErrorEventHandler = (msg: Event) => void;
|
|
@@ -868,7 +3757,7 @@ type Track = {
|
|
|
868
3757
|
type: TrackType;
|
|
869
3758
|
metadata: string;
|
|
870
3759
|
};
|
|
871
|
-
declare const expectedEventsList$1: readonly ["roomCreated", "roomDeleted", "roomCrashed", "peerAdded", "peerDeleted", "peerConnected", "peerDisconnected", "peerMetadataUpdated", "peerCrashed", "streamerConnected", "streamerDisconnected", "viewerConnected", "viewerDisconnected", "trackAdded", "trackRemoved", "trackMetadataUpdated", "trackForwarding", "trackForwardingRemoved", "vadNotification", "channelAdded", "channelRemoved"];
|
|
3760
|
+
declare const expectedEventsList$1: readonly ["roomCreated", "roomDeleted", "roomCrashed", "peerAdded", "peerDeleted", "peerConnected", "peerDisconnected", "peerMetadataUpdated", "peerCrashed", "streamerConnected", "streamerDisconnected", "viewerConnected", "viewerDisconnected", "trackAdded", "trackRemoved", "trackMetadataUpdated", "trackForwarding", "trackForwardingRemoved", "vadNotification", "channelAdded", "channelRemoved", "recordingStatusChanged"];
|
|
872
3761
|
type ExpectedEvents = (typeof expectedEventsList$1)[number];
|
|
873
3762
|
/**
|
|
874
3763
|
* `ServerMessage` oneof members that are intentionally NOT emitted to users.
|
|
@@ -880,7 +3769,9 @@ type IgnoredEvents = (typeof ignoredEventsList)[number];
|
|
|
880
3769
|
/**
|
|
881
3770
|
* Field-level overrides applied to every notification payload: branded ID types
|
|
882
3771
|
* and the user-facing enums replace their raw protobuf counterparts. {@link Override}
|
|
883
|
-
* only swaps keys that exist on the source type, so a single map covers all variants
|
|
3772
|
+
* only swaps keys that exist on the source type, so a single map covers all variants
|
|
3773
|
+
* except `recordingStatusChanged`, whose `status` has its own meaning
|
|
3774
|
+
* (see {@link RecordingOverrides}).
|
|
884
3775
|
*
|
|
885
3776
|
* @inline
|
|
886
3777
|
*/
|
|
@@ -893,8 +3784,19 @@ type NotificationOverrides = {
|
|
|
893
3784
|
videoTrack: Track | undefined;
|
|
894
3785
|
status: VadStatus;
|
|
895
3786
|
};
|
|
3787
|
+
/**
|
|
3788
|
+
* Overrides for {@link Notifications.recordingStatusChanged}, kept separate from
|
|
3789
|
+
* {@link NotificationOverrides} because its `status` field is a {@link RecordingStatus},
|
|
3790
|
+
* not a {@link VadStatus}.
|
|
3791
|
+
*
|
|
3792
|
+
* @inline
|
|
3793
|
+
*/
|
|
3794
|
+
type RecordingOverrides = {
|
|
3795
|
+
recordingId: RecordingId;
|
|
3796
|
+
status: RecordingStatus;
|
|
3797
|
+
};
|
|
896
3798
|
/** @inline */
|
|
897
|
-
type Notification<K extends keyof ServerMessage> = Override<NonNullable<ServerMessage[K]>,
|
|
3799
|
+
type Notification<K extends keyof ServerMessage, TOverrides = NotificationOverrides> = Override<NonNullable<ServerMessage[K]>, TOverrides>;
|
|
898
3800
|
/**
|
|
899
3801
|
* @inline
|
|
900
3802
|
*/
|
|
@@ -920,6 +3822,7 @@ type Notifications = {
|
|
|
920
3822
|
vadNotification: Notification<'vadNotification'>;
|
|
921
3823
|
channelAdded: Notification<'channelAdded'>;
|
|
922
3824
|
channelRemoved: Notification<'channelRemoved'>;
|
|
3825
|
+
recordingStatusChanged: Notification<'recordingStatusChanged', RecordingOverrides>;
|
|
923
3826
|
};
|
|
924
3827
|
type RoomCreated = Notifications['roomCreated'];
|
|
925
3828
|
type RoomDeleted = Notifications['roomDeleted'];
|
|
@@ -942,6 +3845,7 @@ type TrackForwardingRemoved = Notifications['trackForwardingRemoved'];
|
|
|
942
3845
|
type VadNotification = Notifications['vadNotification'];
|
|
943
3846
|
type ChannelAdded = Notifications['channelAdded'];
|
|
944
3847
|
type ChannelRemoved = Notifications['channelRemoved'];
|
|
3848
|
+
type RecordingStatusChanged = Notifications['recordingStatusChanged'];
|
|
945
3849
|
type NotificationEvents = {
|
|
946
3850
|
[K in ExpectedEvents]: (message: Notifications[K]) => void;
|
|
947
3851
|
};
|
|
@@ -1001,6 +3905,32 @@ declare class FishjamWSNotifier extends FishjamWSNotifier_base {
|
|
|
1001
3905
|
* @category Notifications
|
|
1002
3906
|
*/
|
|
1003
3907
|
declare const decodeServerNotifications: (data: Uint8Array | ArrayBuffer) => ServerNotification[];
|
|
3908
|
+
/**
|
|
3909
|
+
* Verify the signature of a raw Fishjam webhook request.
|
|
3910
|
+
*
|
|
3911
|
+
* Fishjam signs each webhook delivery with the room's signing secret and sends
|
|
3912
|
+
* the result in the `x-fishjam-signature-256` header as
|
|
3913
|
+
* `sha256=<lowercase hex HMAC-SHA256 of the raw body>`. Pass the raw,
|
|
3914
|
+
* not-yet-decoded request body, the header value, and your secret; the comparison
|
|
3915
|
+
* is constant-time (signatures of the wrong length are rejected early, which
|
|
3916
|
+
* leaks only the expected signature length — public knowledge for SHA-256).
|
|
3917
|
+
* Verify before calling {@link decodeServerNotifications}.
|
|
3918
|
+
*
|
|
3919
|
+
* @example
|
|
3920
|
+
* ```ts
|
|
3921
|
+
* import { verifyWebhookSignature, decodeServerNotifications } from '@fishjam-cloud/js-server-sdk';
|
|
3922
|
+
*
|
|
3923
|
+
* declare const body: Uint8Array;
|
|
3924
|
+
* declare const signatureHeader: string;
|
|
3925
|
+
* // ---cut---
|
|
3926
|
+
* if (!verifyWebhookSignature(body, signatureHeader, process.env.WEBHOOK_SECRET!)) {
|
|
3927
|
+
* throw new Error('Invalid webhook signature');
|
|
3928
|
+
* }
|
|
3929
|
+
* const notifications = decodeServerNotifications(body);
|
|
3930
|
+
* ```
|
|
3931
|
+
* @category Notifications
|
|
3932
|
+
*/
|
|
3933
|
+
declare const verifyWebhookSignature: (body: Uint8Array | ArrayBuffer, signature: string, secret: string) => boolean;
|
|
1004
3934
|
|
|
1005
3935
|
declare const expectedEventsList: readonly ["trackData"];
|
|
1006
3936
|
/**
|
|
@@ -1032,9 +3962,10 @@ declare const FishjamAgent_base: new () => TypedEventEmitter<AgentEvents>;
|
|
|
1032
3962
|
declare class FishjamAgent extends FishjamAgent_base {
|
|
1033
3963
|
private readonly client;
|
|
1034
3964
|
private resolveConnectionPromise;
|
|
3965
|
+
private rejectConnectionPromise;
|
|
1035
3966
|
private readonly connectionPromise;
|
|
1036
3967
|
private readonly pendingImageCaptures;
|
|
1037
|
-
constructor(config: FishjamConfig, agentToken: string, callbacks?: AgentCallbacks);
|
|
3968
|
+
constructor(config: FishjamConfig, agentToken: string, callbacks?: AgentCallbacks, peerWebsocketUrl?: string);
|
|
1038
3969
|
/**
|
|
1039
3970
|
* Await Agent connection to Fishjam.
|
|
1040
3971
|
*/
|
|
@@ -1073,6 +4004,7 @@ declare class FishjamAgent extends FishjamAgent_base {
|
|
|
1073
4004
|
private rejectPendingCaptures;
|
|
1074
4005
|
private dispatchNotification;
|
|
1075
4006
|
private setupConnection;
|
|
4007
|
+
private settleConnection;
|
|
1076
4008
|
private isExpectedEvent;
|
|
1077
4009
|
}
|
|
1078
4010
|
|
|
@@ -1087,6 +4019,8 @@ declare class FishjamClient {
|
|
|
1087
4019
|
private readonly viewerApi;
|
|
1088
4020
|
private readonly streamerApi;
|
|
1089
4021
|
private readonly credentialsApi;
|
|
4022
|
+
private readonly recordingsApi;
|
|
4023
|
+
private readonly trackForwardingsApi;
|
|
1090
4024
|
private readonly fishjamConfig;
|
|
1091
4025
|
private deprecationWarningShown;
|
|
1092
4026
|
/**
|
|
@@ -1185,6 +4119,18 @@ declare class FishjamClient {
|
|
|
1185
4119
|
* @returns refreshed peer token
|
|
1186
4120
|
*/
|
|
1187
4121
|
refreshPeerToken(roomId: RoomId, peerId: PeerId): Promise<string>;
|
|
4122
|
+
/**
|
|
4123
|
+
* Forwards every track published in the room into a composition, which composes them into
|
|
4124
|
+
* its outputs. Pass the composition's address, as returned by
|
|
4125
|
+
* {@link CompositionClient.compositionUrl}.
|
|
4126
|
+
*/
|
|
4127
|
+
forwardRoomTracks(roomId: RoomId, compositionUrl: string): Promise<void>;
|
|
4128
|
+
/**
|
|
4129
|
+
* Where to publish a livestream, paired with a token from
|
|
4130
|
+
* {@link FishjamClient.createLivestreamStreamerToken}. A composition reaches viewers by
|
|
4131
|
+
* sending a WHIP output here.
|
|
4132
|
+
*/
|
|
4133
|
+
livestreamWhipUrl(): string;
|
|
1188
4134
|
/**
|
|
1189
4135
|
* Creates a livestream viewer token for the given room.
|
|
1190
4136
|
* @returns a livestream viewer token
|
|
@@ -1200,16 +4146,172 @@ declare class FishjamClient {
|
|
|
1200
4146
|
* @returns connection details containing the relay URL with the JWT embedded as a `?jwt=` query parameter, and the token itself
|
|
1201
4147
|
*/
|
|
1202
4148
|
createMoqAccess(config?: MoqAccessConfig): Promise<MoqAccess>;
|
|
4149
|
+
/**
|
|
4150
|
+
* Create a new recording. Capturing starts synchronously, so the returned recording is `active`.
|
|
4151
|
+
*/
|
|
4152
|
+
createRecording(config: RecordingConfig): Promise<Recording>;
|
|
4153
|
+
/**
|
|
4154
|
+
* Get details about a given recording.
|
|
4155
|
+
*/
|
|
4156
|
+
getRecording(recordingId: RecordingId): Promise<Recording>;
|
|
4157
|
+
/**
|
|
4158
|
+
* Get a list of all recordings, optionally filtered by metadata.
|
|
4159
|
+
* Returns recordings whose metadata contains all the given key-value pairs.
|
|
4160
|
+
*/
|
|
4161
|
+
getAllRecordings(metadata?: Record<string, unknown>): Promise<Recording[]>;
|
|
4162
|
+
/**
|
|
4163
|
+
* Stop an active recording. Finalization is asynchronous: the recording stays `active` until
|
|
4164
|
+
* the capture is finalized, then becomes `finished`. Stopping a recording that is no longer active is a no-op.
|
|
4165
|
+
*/
|
|
4166
|
+
stopRecording(recordingId: RecordingId): Promise<Recording>;
|
|
4167
|
+
/**
|
|
4168
|
+
* Delete a recording. Its stored media is removed asynchronously.
|
|
4169
|
+
* A recording that is still `active` cannot be deleted — stop it first or wait for it to finish.
|
|
4170
|
+
*/
|
|
4171
|
+
deleteRecording(recordingId: RecordingId): Promise<void>;
|
|
4172
|
+
}
|
|
4173
|
+
|
|
4174
|
+
/**
|
|
4175
|
+
* Client class that allows to manage compositions, the real-time video compositing sessions
|
|
4176
|
+
* of a Fishjam App. It requires the management token that can be retrieved from the Fishjam
|
|
4177
|
+
* Dashboard, the same one used by {@link FishjamClient}.
|
|
4178
|
+
*
|
|
4179
|
+
* Example usage:
|
|
4180
|
+
* ```
|
|
4181
|
+
* const compositionClient = new CompositionClient({
|
|
4182
|
+
* managementToken: fastify.config.FISHJAM_MANAGEMENT_TOKEN,
|
|
4183
|
+
* });
|
|
4184
|
+
* ```
|
|
4185
|
+
* @category Client
|
|
4186
|
+
*/
|
|
4187
|
+
declare class CompositionClient {
|
|
4188
|
+
private readonly compositionsApi;
|
|
4189
|
+
private readonly eventsApi;
|
|
4190
|
+
private readonly inputsApi;
|
|
4191
|
+
private readonly mediaTransportApi;
|
|
4192
|
+
private readonly outputsApi;
|
|
4193
|
+
private readonly renderersApi;
|
|
4194
|
+
private readonly baseUrl;
|
|
4195
|
+
constructor(config: CompositionConfig);
|
|
4196
|
+
/**
|
|
4197
|
+
* Create a new composition. Inputs registered on it are composed into the scenes its outputs render.
|
|
4198
|
+
*/
|
|
4199
|
+
createComposition(config?: CreateCompositionRequest): Promise<Composition>;
|
|
4200
|
+
/**
|
|
4201
|
+
* The address of a composition, as other services refer to it. Fishjam needs it to forward a
|
|
4202
|
+
* room's tracks with {@link FishjamClient.forwardRoomTracks}.
|
|
4203
|
+
*/
|
|
4204
|
+
compositionUrl(compositionId: CompositionId): string;
|
|
4205
|
+
/**
|
|
4206
|
+
* Start a composition created with `autostart` disabled. Its outputs begin producing audio and video.
|
|
4207
|
+
*/
|
|
4208
|
+
startComposition(compositionId: CompositionId): Promise<void>;
|
|
4209
|
+
/**
|
|
4210
|
+
* Reset a composition, tearing down its scene while keeping the composition itself alive.
|
|
4211
|
+
*/
|
|
4212
|
+
resetComposition(compositionId: CompositionId): Promise<void>;
|
|
4213
|
+
/**
|
|
4214
|
+
* Delete an existing composition. Its inputs and outputs are torn down with it.
|
|
4215
|
+
*/
|
|
4216
|
+
deleteComposition(compositionId: CompositionId): Promise<void>;
|
|
4217
|
+
/**
|
|
4218
|
+
* Register a media source on a composition. Prefer the variant methods, such as
|
|
4219
|
+
* {@link CompositionClient.registerWhipInput}, which return what that input type produces.
|
|
4220
|
+
*/
|
|
4221
|
+
registerInput(compositionId: CompositionId, inputId: InputId, input: RegisterInput): Promise<RegisterInputResponse>;
|
|
4222
|
+
/**
|
|
4223
|
+
* Register an input that a WHIP publisher pushes media into.
|
|
4224
|
+
* @returns the address and token to publish with, see {@link WhipInputTarget}
|
|
4225
|
+
*/
|
|
4226
|
+
registerWhipInput(compositionId: CompositionId, inputId: InputId, options?: Omit<WhipInput, 'type'>): Promise<WhipInputTarget>;
|
|
4227
|
+
/**
|
|
4228
|
+
* Where WHIP publishing is served, for servers that do not report the route themselves.
|
|
4229
|
+
*/
|
|
4230
|
+
private whipPath;
|
|
4231
|
+
/**
|
|
4232
|
+
* Register an input that pulls media from a WHEP endpoint.
|
|
4233
|
+
*/
|
|
4234
|
+
registerWhepInput(compositionId: CompositionId, inputId: InputId, options: Omit<WhepInput, 'type'>): Promise<void>;
|
|
4235
|
+
/**
|
|
4236
|
+
* Register an input that plays an MP4 file.
|
|
4237
|
+
* @returns how much media the file holds, see {@link Mp4InputDurations}
|
|
4238
|
+
*/
|
|
4239
|
+
registerMp4Input(compositionId: CompositionId, inputId: InputId, options: Omit<Mp4Input, 'type'>): Promise<Mp4InputDurations>;
|
|
4240
|
+
/**
|
|
4241
|
+
* Register an input that an RTMP publisher pushes media into. The stream key identifies the
|
|
4242
|
+
* input; the address to publish to belongs to the composition, not to this call.
|
|
4243
|
+
*/
|
|
4244
|
+
registerRtmpInput(compositionId: CompositionId, inputId: InputId, options: Omit<RtmpInput, 'type'>): Promise<void>;
|
|
4245
|
+
/**
|
|
4246
|
+
* Unregister an input. Scenes referencing it stop receiving its media.
|
|
4247
|
+
*/
|
|
4248
|
+
unregisterInput(compositionId: CompositionId, inputId: InputId, options?: UnregisterInput): Promise<void>;
|
|
4249
|
+
/**
|
|
4250
|
+
* Register an output, the destination the composed result is sent to, carrying the scene to render.
|
|
4251
|
+
*/
|
|
4252
|
+
registerOutput(compositionId: CompositionId, outputId: OutputId, output: RegisterOutput): Promise<void>;
|
|
4253
|
+
/**
|
|
4254
|
+
* Register an output rendering a template bundle, as built by `@fishjam-cloud/composition-cli`.
|
|
4255
|
+
* The bundle is either a `Blob` or a path to read it from; never pass a path taken from
|
|
4256
|
+
* untrusted input, since its contents are uploaded.
|
|
4257
|
+
*/
|
|
4258
|
+
registerTemplateOutput(compositionId: CompositionId, outputId: OutputId, config: RegisterOutput, template: Blob | string): Promise<void>;
|
|
4259
|
+
/**
|
|
4260
|
+
* Register an output sending the composed result to a WHIP endpoint.
|
|
4261
|
+
*/
|
|
4262
|
+
registerWhipOutput(compositionId: CompositionId, outputId: OutputId, options: Omit<WhipOutput, 'type'>): Promise<void>;
|
|
4263
|
+
/**
|
|
4264
|
+
* Register an output sending the composed result to an RTMP endpoint.
|
|
4265
|
+
*/
|
|
4266
|
+
registerRtmpOutput(compositionId: CompositionId, outputId: OutputId, options: Omit<RtmpOutput, 'type'>): Promise<void>;
|
|
4267
|
+
/**
|
|
4268
|
+
* Unregister an output. It stops producing audio and video.
|
|
4269
|
+
*/
|
|
4270
|
+
unregisterOutput(compositionId: CompositionId, outputId: OutputId, options?: UnregisterOutput): Promise<void>;
|
|
4271
|
+
/**
|
|
4272
|
+
* Replace the scene an output renders.
|
|
4273
|
+
*/
|
|
4274
|
+
updateOutput(compositionId: CompositionId, outputId: OutputId, update: UpdateOutputRequest): Promise<void>;
|
|
4275
|
+
/**
|
|
4276
|
+
* Ask an output to emit a keyframe, so a viewer joining mid-stream renders a full picture sooner.
|
|
4277
|
+
*/
|
|
4278
|
+
requestKeyframe(compositionId: CompositionId, outputId: OutputId): Promise<void>;
|
|
4279
|
+
/**
|
|
4280
|
+
* Register an image that scenes can reference by its renderer ID.
|
|
4281
|
+
*/
|
|
4282
|
+
registerImage(compositionId: CompositionId, imageId: RendererId, image: ImageSpec): Promise<void>;
|
|
4283
|
+
/**
|
|
4284
|
+
* Register a font that scenes can render text with. The font is either a `Blob` or a path
|
|
4285
|
+
* to read it from; never pass a path taken from untrusted input, since its contents are uploaded.
|
|
4286
|
+
*/
|
|
4287
|
+
registerFont(compositionId: CompositionId, font: Blob | string): Promise<void>;
|
|
4288
|
+
/**
|
|
4289
|
+
* Unregister a previously registered image.
|
|
4290
|
+
*/
|
|
4291
|
+
unregisterImage(compositionId: CompositionId, imageId: RendererId, options?: UnregisterRenderer): Promise<void>;
|
|
4292
|
+
/**
|
|
4293
|
+
* Deliver an event to the templates rendered by the composition's outputs.
|
|
4294
|
+
*/
|
|
4295
|
+
sendEvent(compositionId: CompositionId, event: SendCompositionEventRequest): Promise<void>;
|
|
1203
4296
|
}
|
|
1204
4297
|
|
|
1205
4298
|
declare class MissingFishjamIdException extends Error {
|
|
1206
4299
|
constructor();
|
|
1207
4300
|
}
|
|
4301
|
+
declare class StaleSdkException extends Error {
|
|
4302
|
+
/** Raw wire value received from the server. */
|
|
4303
|
+
status: number;
|
|
4304
|
+
constructor(status: number);
|
|
4305
|
+
}
|
|
4306
|
+
interface FishjamExceptionInfo {
|
|
4307
|
+
message: string;
|
|
4308
|
+
statusCode?: number;
|
|
4309
|
+
details?: string;
|
|
4310
|
+
}
|
|
1208
4311
|
declare class FishjamBaseException extends Error {
|
|
1209
4312
|
statusCode: number;
|
|
1210
|
-
axiosCode?: string;
|
|
1211
4313
|
details?: string;
|
|
1212
|
-
constructor(
|
|
4314
|
+
constructor(info: FishjamExceptionInfo);
|
|
1213
4315
|
}
|
|
1214
4316
|
declare class BadRequestException extends FishjamBaseException {
|
|
1215
4317
|
}
|
|
@@ -1225,6 +4327,16 @@ declare class InvalidFishjamCredentialsException extends FishjamBaseException {
|
|
|
1225
4327
|
}
|
|
1226
4328
|
declare class PeerNotFoundException extends FishjamBaseException {
|
|
1227
4329
|
}
|
|
4330
|
+
declare class RecordingNotFoundException extends FishjamBaseException {
|
|
4331
|
+
}
|
|
4332
|
+
declare class CompositionNotFoundException extends FishjamBaseException {
|
|
4333
|
+
}
|
|
4334
|
+
declare class InputNotFoundException extends FishjamBaseException {
|
|
4335
|
+
}
|
|
4336
|
+
declare class OutputNotFoundException extends FishjamBaseException {
|
|
4337
|
+
}
|
|
4338
|
+
declare class RendererNotFoundException extends FishjamBaseException {
|
|
4339
|
+
}
|
|
1228
4340
|
declare class ServiceUnavailableException extends FishjamBaseException {
|
|
1229
4341
|
}
|
|
1230
4342
|
declare class QuotaExceededException extends FishjamBaseException {
|
|
@@ -1232,4 +4344,12 @@ declare class QuotaExceededException extends FishjamBaseException {
|
|
|
1232
4344
|
declare class UnknownException extends FishjamBaseException {
|
|
1233
4345
|
}
|
|
1234
4346
|
|
|
1235
|
-
|
|
4347
|
+
/**
|
|
4348
|
+
* Server-side Node.js SDK for creating and managing Fishjam rooms, peers, agents, and receiving real-time server notifications.
|
|
4349
|
+
*
|
|
4350
|
+
* @packageDocumentation
|
|
4351
|
+
*/
|
|
4352
|
+
|
|
4353
|
+
type PeerOptions = PeerOptionsWebRTC | PeerOptionsAgent | PeerOptionsVapi;
|
|
4354
|
+
|
|
4355
|
+
export { type AgentCallbacks, type AgentEvents, type AgentOutput, type AgentTrack, AudioChannels, type AudioCodecParameters, AudioFormat, AudioMixingStrategy, AudioSampleRate, type AudioScene, type AudioSceneInput, BadRequestException, type BoxShadow, type Brand, type ChannelAdded, type ChannelRemoved, type CloseEventHandler, type Component, type Composition, CompositionClient, type CompositionConfig, type CompositionId, CompositionNotFoundException, type CreateCompositionRequest, type EasingFunction, type EasingFunctionBounce, type EasingFunctionCubicBezier, type EasingFunctionLinear, type ErrorEventHandler, type ExpectedAgentEvents, type ExpectedEvents, FishjamAgent, FishjamBaseException, FishjamClient, type FishjamConfig, type FishjamExceptionInfo, FishjamNotFoundException, FishjamWSNotifier, ForbiddenException, HorizontalAlign, type IgnoredEvents, type Image, type ImageSpec, type ImageSpecAuto, type ImageSpecGif, type ImageSpecJpeg, type ImageSpecPng, type ImageSpecSvg, type IncomingTrackData, type IncomingTrackImage, type InputId, InputNotFoundException, type InputStream, InvalidFishjamCredentialsException, MissingFishjamIdException, type MoqAccess, type MoqAccessConfig, type Mp4Input, type Mp4InputDurations, type NotificationEvents, OpusEncoderPreset, type OutgoingTrackData, type OutputEndCondition, type OutputId, OutputNotFoundException, type OutputRtmpClientAudioOptions, type OutputRtmpClientVideoOptions, type OutputWhipAudioOptions, type OutputWhipVideoOptions, Overflow, type Override, type Peer, type PeerAdded, type PeerConnected, type PeerCrashed, type PeerDeleted, type PeerDisconnected, type PeerId, type PeerMetadataUpdated, PeerNotFoundException, type PeerOptions, type PeerOptionsAgent, type PeerOptionsVapi, type PeerOptionsWebRTC, PeerStatus, type PeerType, QuotaExceededException, type Recording, type RecordingConfig, type RecordingId, RecordingNotFoundException, type RecordingSource, type RecordingStatus, type RecordingStatusChanged, type RegisterInput, type RegisterInputResponse, type RegisterOutput, type RendererId, RendererNotFoundException, RescaleMode, type Rescaler, type Resolution, type Room, type RoomConfig, type RoomCrashed, type RoomCreated, type RoomDeleted, type RoomId, RoomNotFoundException, RoomType, type RtmpInput, type RtmpOutput, type SendCompositionEventRequest, ServerMessage, type ServerNotification, ServiceUnavailableException, StaleSdkException, type StreamerConnected, type StreamerDisconnected, type StreamerToken, SubscribeMode, type Text, TextStyle, TextWeight, TextWrapMode, type Tiles, type Track, type TrackAdded, type TrackForwarding, type TrackForwardingRemoved, type TrackId, type TrackMetadataUpdated, type TrackRemoved, type TrackType, type Transition, UnauthorizedException, UnknownException, type UnregisterInput, type UnregisterOutput, type UnregisterRenderer, type UpdateOutputRequest, type VadNotification, type VadStatus, VerticalAlign, VideoCodec, type VideoScene, type View, ViewDirection, type ViewerConnected, type ViewerDisconnected, type ViewerToken, type WhepInput, type WhipAudioEncoderOptions, type WhipAudioEncoderOptionsAny, type WhipAudioEncoderOptionsOpus, type WhipInput, type WhipInputTarget, type WhipOutput, decodeServerNotifications, verifyWebhookSignature };
|