@wave-av/sdk 2.0.1 → 2.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (260) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/README.md +27 -23
  3. package/dist/audience.js +93 -0
  4. package/dist/audience.mjs +9 -0
  5. package/dist/camera-control.js +95 -0
  6. package/dist/camera-control.mjs +71 -0
  7. package/dist/captions-types.js +18 -0
  8. package/dist/captions-types.mjs +0 -0
  9. package/dist/captions.js +266 -0
  10. package/dist/captions.mjs +9 -0
  11. package/dist/chapters-types.js +18 -0
  12. package/dist/chapters-types.mjs +0 -0
  13. package/dist/chapters.js +280 -0
  14. package/dist/chapters.mjs +9 -0
  15. package/dist/chunk-362MRITF.mjs +46 -0
  16. package/dist/chunk-3ZLK4J3V.mjs +69 -0
  17. package/dist/chunk-4DG4OBRD.mjs +52 -0
  18. package/dist/chunk-4G7FMCMJ.mjs +68 -0
  19. package/dist/chunk-4KD5F6E3.mjs +0 -0
  20. package/dist/chunk-7M6XVUUK.mjs +241 -0
  21. package/dist/chunk-A344OOT7.mjs +243 -0
  22. package/dist/chunk-AI64YR5W.mjs +173 -0
  23. package/dist/chunk-C2GQ756E.mjs +57 -0
  24. package/dist/chunk-CO2VB72Z.mjs +255 -0
  25. package/dist/chunk-DWXWAILB.mjs +44 -0
  26. package/dist/chunk-FLEFYLDM.mjs +71 -0
  27. package/dist/chunk-H2YYTNUH.mjs +266 -0
  28. package/dist/chunk-IGDBED5P.mjs +246 -0
  29. package/dist/chunk-IL2SGWBC.mjs +0 -0
  30. package/dist/chunk-IVFZ5X4W.mjs +68 -0
  31. package/dist/chunk-JC32PG3T.mjs +114 -0
  32. package/dist/chunk-K5X42NLD.mjs +54 -0
  33. package/dist/chunk-KCEPNS2U.mjs +276 -0
  34. package/dist/chunk-LVOVF6XC.mjs +54 -0
  35. package/dist/chunk-M4Z33V3N.mjs +247 -0
  36. package/dist/chunk-M6FKIX75.mjs +0 -0
  37. package/dist/chunk-M744Z327.mjs +244 -0
  38. package/dist/chunk-MRFDPPFK.mjs +61 -0
  39. package/dist/chunk-MXU3Q23F.mjs +68 -0
  40. package/dist/chunk-NCVUZ746.mjs +60 -0
  41. package/dist/chunk-NLQVD2LF.mjs +210 -0
  42. package/dist/chunk-O6DOGYP5.mjs +238 -0
  43. package/dist/chunk-S25NY5GE.mjs +124 -0
  44. package/dist/chunk-TFHXBICQ.mjs +305 -0
  45. package/dist/chunk-TXWOA2VR.mjs +57 -0
  46. package/dist/chunk-UCDSNV22.mjs +63 -0
  47. package/dist/chunk-V5DWA5P4.mjs +279 -0
  48. package/dist/chunk-VLQQDYGP.mjs +173 -0
  49. package/dist/chunk-VPKZUXZW.mjs +53 -0
  50. package/dist/chunk-WS3PEFYJ.mjs +60 -0
  51. package/dist/chunk-XGAYMWRH.mjs +74 -0
  52. package/dist/chunk-XMM5J57W.mjs +0 -0
  53. package/dist/chunk-XWABBOSX.mjs +278 -0
  54. package/dist/chunk-Y6FXYEAI.mjs +10 -0
  55. package/dist/chunk-YBLXHI3M.mjs +257 -0
  56. package/dist/chunk-YEK26SSO.mjs +100 -0
  57. package/dist/chunk-YLCQKCZL.mjs +0 -0
  58. package/dist/chunk-YRKO4XI7.mjs +0 -0
  59. package/dist/chunk-ZJO7AP4Q.mjs +0 -0
  60. package/dist/client-types.js +18 -0
  61. package/dist/client-types.mjs +0 -0
  62. package/dist/client.js +311 -0
  63. package/dist/client.mjs +14 -0
  64. package/dist/clips-types.js +18 -0
  65. package/dist/clips-types.mjs +0 -0
  66. package/dist/clips.js +198 -0
  67. package/dist/clips.mjs +9 -0
  68. package/dist/cloud-switcher.js +80 -0
  69. package/dist/cloud-switcher.mjs +56 -0
  70. package/dist/collab-types.js +18 -0
  71. package/dist/collab-types.mjs +1 -0
  72. package/dist/collab.js +304 -0
  73. package/dist/collab.mjs +10 -0
  74. package/dist/connect.js +85 -0
  75. package/dist/connect.mjs +9 -0
  76. package/dist/creator.js +79 -0
  77. package/dist/creator.mjs +9 -0
  78. package/dist/desktop.js +77 -0
  79. package/dist/desktop.mjs +9 -0
  80. package/dist/distribution.js +88 -0
  81. package/dist/distribution.mjs +9 -0
  82. package/dist/drm.js +85 -0
  83. package/dist/drm.mjs +9 -0
  84. package/dist/edge.js +93 -0
  85. package/dist/edge.mjs +9 -0
  86. package/dist/editor-types.js +18 -0
  87. package/dist/editor-types.mjs +1 -0
  88. package/dist/editor.js +330 -0
  89. package/dist/editor.mjs +10 -0
  90. package/dist/fleet.js +149 -0
  91. package/dist/fleet.mjs +9 -0
  92. package/dist/ghost.js +139 -0
  93. package/dist/ghost.mjs +9 -0
  94. package/dist/index.js +0 -250
  95. package/dist/index.mjs +161 -5445
  96. package/dist/marketplace.js +82 -0
  97. package/dist/marketplace.mjs +9 -0
  98. package/dist/mesh.js +198 -0
  99. package/dist/mesh.mjs +9 -0
  100. package/dist/notifications.js +79 -0
  101. package/dist/notifications.mjs +9 -0
  102. package/dist/phone-types.js +18 -0
  103. package/dist/phone-types.mjs +0 -0
  104. package/dist/phone.js +269 -0
  105. package/dist/phone.mjs +9 -0
  106. package/dist/pipeline-types.js +18 -0
  107. package/dist/pipeline-types.mjs +0 -0
  108. package/dist/pipeline.js +263 -0
  109. package/dist/pipeline.mjs +9 -0
  110. package/dist/podcast.js +94 -0
  111. package/dist/podcast.mjs +9 -0
  112. package/dist/prism.js +82 -0
  113. package/dist/prism.mjs +9 -0
  114. package/dist/prompter.js +99 -0
  115. package/dist/prompter.mjs +76 -0
  116. package/dist/pulse.js +99 -0
  117. package/dist/pulse.mjs +9 -0
  118. package/dist/qr.js +71 -0
  119. package/dist/qr.mjs +9 -0
  120. package/dist/replay.js +62 -0
  121. package/dist/replay.mjs +38 -0
  122. package/dist/scene-types.js +18 -0
  123. package/dist/scene-types.mjs +1 -0
  124. package/dist/scene.js +271 -0
  125. package/dist/scene.mjs +10 -0
  126. package/dist/search-types.js +18 -0
  127. package/dist/search-types.mjs +1 -0
  128. package/dist/search.js +268 -0
  129. package/dist/search.mjs +10 -0
  130. package/dist/sentiment-types.js +18 -0
  131. package/dist/sentiment-types.mjs +0 -0
  132. package/dist/sentiment.js +235 -0
  133. package/dist/sentiment.mjs +9 -0
  134. package/dist/signage.js +93 -0
  135. package/dist/signage.mjs +9 -0
  136. package/dist/slides.js +78 -0
  137. package/dist/slides.mjs +9 -0
  138. package/dist/studio-ai-types.js +18 -0
  139. package/dist/studio-ai-types.mjs +1 -0
  140. package/dist/studio-ai.js +301 -0
  141. package/dist/studio-ai.mjs +10 -0
  142. package/dist/studio-types.js +18 -0
  143. package/dist/studio-types.mjs +1 -0
  144. package/dist/studio.js +303 -0
  145. package/dist/studio.mjs +10 -0
  146. package/dist/telemetry.js +124 -0
  147. package/dist/telemetry.mjs +15 -0
  148. package/dist/transcribe-types.js +18 -0
  149. package/dist/transcribe-types.mjs +1 -0
  150. package/dist/transcribe.js +282 -0
  151. package/dist/transcribe.mjs +10 -0
  152. package/dist/usb.js +69 -0
  153. package/dist/usb.mjs +9 -0
  154. package/dist/vault.js +96 -0
  155. package/dist/vault.mjs +9 -0
  156. package/dist/voice-types.js +18 -0
  157. package/dist/voice-types.mjs +0 -0
  158. package/dist/voice.js +272 -0
  159. package/dist/voice.mjs +9 -0
  160. package/dist/zoom.js +86 -0
  161. package/dist/zoom.mjs +9 -0
  162. package/package.json +5 -5
  163. package/dist/audience.d.ts +0 -104
  164. package/dist/audience.d.ts.map +0 -1
  165. package/dist/camera-control.d.ts +0 -54
  166. package/dist/camera-control.d.ts.map +0 -1
  167. package/dist/captions.d.ts +0 -362
  168. package/dist/captions.d.ts.map +0 -1
  169. package/dist/chapters.d.ts +0 -315
  170. package/dist/chapters.d.ts.map +0 -1
  171. package/dist/client.d.ts +0 -191
  172. package/dist/client.d.ts.map +0 -1
  173. package/dist/clips.d.ts +0 -258
  174. package/dist/clips.d.ts.map +0 -1
  175. package/dist/cloud-switcher.d.ts +0 -65
  176. package/dist/cloud-switcher.d.ts.map +0 -1
  177. package/dist/collab-types.d.ts +0 -204
  178. package/dist/collab-types.d.ts.map +0 -1
  179. package/dist/collab.d.ts +0 -226
  180. package/dist/collab.d.ts.map +0 -1
  181. package/dist/connect.d.ts +0 -88
  182. package/dist/connect.d.ts.map +0 -1
  183. package/dist/creator.d.ts +0 -109
  184. package/dist/creator.d.ts.map +0 -1
  185. package/dist/desktop.d.ts +0 -95
  186. package/dist/desktop.d.ts.map +0 -1
  187. package/dist/distribution.d.ts +0 -92
  188. package/dist/distribution.d.ts.map +0 -1
  189. package/dist/drm.d.ts +0 -87
  190. package/dist/drm.d.ts.map +0 -1
  191. package/dist/edge.d.ts +0 -112
  192. package/dist/edge.d.ts.map +0 -1
  193. package/dist/editor-types.d.ts +0 -236
  194. package/dist/editor-types.d.ts.map +0 -1
  195. package/dist/editor.d.ts +0 -206
  196. package/dist/editor.d.ts.map +0 -1
  197. package/dist/fleet.d.ts +0 -207
  198. package/dist/fleet.d.ts.map +0 -1
  199. package/dist/ghost.d.ts +0 -213
  200. package/dist/ghost.d.ts.map +0 -1
  201. package/dist/index.d.ts +0 -144
  202. package/dist/index.d.ts.map +0 -1
  203. package/dist/marketplace.d.ts +0 -90
  204. package/dist/marketplace.d.ts.map +0 -1
  205. package/dist/mesh.d.ts +0 -237
  206. package/dist/mesh.d.ts.map +0 -1
  207. package/dist/notifications.d.ts +0 -82
  208. package/dist/notifications.d.ts.map +0 -1
  209. package/dist/phone.d.ts +0 -369
  210. package/dist/phone.d.ts.map +0 -1
  211. package/dist/pipeline.d.ts +0 -409
  212. package/dist/pipeline.d.ts.map +0 -1
  213. package/dist/podcast.d.ts +0 -113
  214. package/dist/podcast.d.ts.map +0 -1
  215. package/dist/prism.d.ts +0 -132
  216. package/dist/prism.d.ts.map +0 -1
  217. package/dist/prompter.d.ts +0 -184
  218. package/dist/prompter.d.ts.map +0 -1
  219. package/dist/pulse.d.ts +0 -156
  220. package/dist/pulse.d.ts.map +0 -1
  221. package/dist/qr.d.ts +0 -82
  222. package/dist/qr.d.ts.map +0 -1
  223. package/dist/replay.d.ts +0 -52
  224. package/dist/replay.d.ts.map +0 -1
  225. package/dist/scene-types.d.ts +0 -190
  226. package/dist/scene-types.d.ts.map +0 -1
  227. package/dist/scene.d.ts +0 -213
  228. package/dist/scene.d.ts.map +0 -1
  229. package/dist/search-types.d.ts +0 -210
  230. package/dist/search-types.d.ts.map +0 -1
  231. package/dist/search.d.ts +0 -250
  232. package/dist/search.d.ts.map +0 -1
  233. package/dist/sentiment.d.ts +0 -378
  234. package/dist/sentiment.d.ts.map +0 -1
  235. package/dist/signage.d.ts +0 -101
  236. package/dist/signage.d.ts.map +0 -1
  237. package/dist/slides.d.ts +0 -68
  238. package/dist/slides.d.ts.map +0 -1
  239. package/dist/studio-ai-types.d.ts +0 -198
  240. package/dist/studio-ai-types.d.ts.map +0 -1
  241. package/dist/studio-ai.d.ts +0 -218
  242. package/dist/studio-ai.d.ts.map +0 -1
  243. package/dist/studio-types.d.ts +0 -267
  244. package/dist/studio-types.d.ts.map +0 -1
  245. package/dist/studio.d.ts +0 -234
  246. package/dist/studio.d.ts.map +0 -1
  247. package/dist/telemetry.d.ts +0 -76
  248. package/dist/telemetry.d.ts.map +0 -1
  249. package/dist/transcribe-types.d.ts +0 -153
  250. package/dist/transcribe-types.d.ts.map +0 -1
  251. package/dist/transcribe.d.ts +0 -218
  252. package/dist/transcribe.d.ts.map +0 -1
  253. package/dist/usb.d.ts +0 -64
  254. package/dist/usb.d.ts.map +0 -1
  255. package/dist/vault.d.ts +0 -121
  256. package/dist/vault.d.ts.map +0 -1
  257. package/dist/voice.d.ts +0 -307
  258. package/dist/voice.d.ts.map +0 -1
  259. package/dist/zoom.d.ts +0 -91
  260. package/dist/zoom.d.ts.map +0 -1
@@ -1,362 +0,0 @@
1
- /**
2
- * WAVE SDK - Captions API
3
- *
4
- * Generate, manage, and translate captions for video content.
5
- *
6
- * NOTE: This is a client SDK. All authorization checks are performed server-side.
7
- * The API will return 403 Forbidden if the user lacks required permissions.
8
- */
9
- import type { WaveClient, PaginationParams, PaginatedResponse, Timestamps, Metadata } from './client';
10
- /**
11
- * Caption status
12
- */
13
- export type CaptionStatus = 'pending' | 'processing' | 'ready' | 'failed';
14
- /**
15
- * Caption format
16
- */
17
- export type CaptionFormat = 'srt' | 'vtt' | 'sbv' | 'ass' | 'ttml' | 'dfxp' | 'json';
18
- /**
19
- * Caption track
20
- */
21
- export interface CaptionTrack extends Timestamps {
22
- id: string;
23
- organization_id: string;
24
- media_id: string;
25
- media_type: 'video' | 'audio' | 'stream';
26
- language: string;
27
- label: string;
28
- status: CaptionStatus;
29
- is_default: boolean;
30
- is_auto_generated: boolean;
31
- word_count?: number;
32
- duration?: number;
33
- accuracy_score?: number;
34
- url?: string;
35
- error?: string;
36
- metadata?: Metadata;
37
- }
38
- /**
39
- * Caption cue (single caption segment)
40
- */
41
- export interface CaptionCue {
42
- id: string;
43
- start_time: number;
44
- end_time: number;
45
- text: string;
46
- speaker?: string;
47
- confidence?: number;
48
- words?: CaptionWord[];
49
- style?: CaptionStyle;
50
- }
51
- /**
52
- * Word-level timing
53
- */
54
- export interface CaptionWord {
55
- word: string;
56
- start_time: number;
57
- end_time: number;
58
- confidence?: number;
59
- }
60
- /**
61
- * Caption styling
62
- */
63
- export interface CaptionStyle {
64
- align?: 'left' | 'center' | 'right';
65
- vertical?: 'top' | 'middle' | 'bottom';
66
- line?: number;
67
- position?: number;
68
- size?: number;
69
- color?: string;
70
- background_color?: string;
71
- font_family?: string;
72
- font_weight?: 'normal' | 'bold';
73
- font_style?: 'normal' | 'italic';
74
- }
75
- /**
76
- * Generate captions request
77
- */
78
- export interface GenerateCaptionsRequest {
79
- media_id: string;
80
- media_type: 'video' | 'audio' | 'stream';
81
- language?: string;
82
- label?: string;
83
- /** Model to use for transcription */
84
- model?: 'standard' | 'enhanced' | 'whisper';
85
- /** Enable speaker diarization */
86
- speaker_diarization?: boolean;
87
- /** Number of expected speakers */
88
- speaker_count?: number;
89
- /** Filter profanity */
90
- profanity_filter?: boolean;
91
- /** Custom vocabulary */
92
- vocabulary?: string[];
93
- /** Enable word-level timing */
94
- word_timestamps?: boolean;
95
- /** Webhook URL for completion */
96
- webhook_url?: string;
97
- metadata?: Metadata;
98
- }
99
- /**
100
- * Upload captions request
101
- */
102
- export interface UploadCaptionsRequest {
103
- media_id: string;
104
- media_type: 'video' | 'audio' | 'stream';
105
- language: string;
106
- label: string;
107
- format: CaptionFormat;
108
- /** Caption file content */
109
- content: string;
110
- is_default?: boolean;
111
- metadata?: Metadata;
112
- }
113
- /**
114
- * Update captions request
115
- */
116
- export interface UpdateCaptionsRequest {
117
- label?: string;
118
- is_default?: boolean;
119
- metadata?: Metadata;
120
- }
121
- /**
122
- * Translate captions request
123
- */
124
- export interface TranslateCaptionsRequest {
125
- target_language: string;
126
- target_label?: string;
127
- /** Use professional translation */
128
- professional?: boolean;
129
- /** Preserve speaker labels */
130
- preserve_speakers?: boolean;
131
- webhook_url?: string;
132
- }
133
- /**
134
- * Burn-in captions request
135
- */
136
- export interface BurnInCaptionsRequest {
137
- caption_track_id: string;
138
- style?: CaptionStyle;
139
- /** Output format */
140
- format?: 'mp4' | 'webm' | 'mov';
141
- /** Output quality */
142
- quality?: 'low' | 'medium' | 'high' | 'source';
143
- webhook_url?: string;
144
- }
145
- /**
146
- * Burn-in job
147
- */
148
- export interface BurnInJob extends Timestamps {
149
- id: string;
150
- media_id: string;
151
- caption_track_id: string;
152
- status: 'pending' | 'processing' | 'ready' | 'failed';
153
- progress: number;
154
- output_url?: string;
155
- error?: string;
156
- }
157
- /**
158
- * List captions params
159
- */
160
- export interface ListCaptionsParams extends PaginationParams {
161
- media_id?: string;
162
- media_type?: 'video' | 'audio' | 'stream';
163
- language?: string;
164
- status?: CaptionStatus;
165
- is_auto_generated?: boolean;
166
- }
167
- /**
168
- * Captions API client
169
- *
170
- * All operations require appropriate permissions. Authorization is enforced
171
- * server-side - the API returns 403 if the authenticated user lacks access.
172
- *
173
- * @example
174
- * ```typescript
175
- * import { WaveClient } from '@wave/sdk';
176
- * import { CaptionsAPI } from '@wave/sdk/captions';
177
- *
178
- * const client = new WaveClient({ apiKey: 'your-api-key' });
179
- * const captions = new CaptionsAPI(client);
180
- *
181
- * // Generate captions for a video
182
- * const track = await captions.generate({
183
- * media_id: 'video_123',
184
- * media_type: 'video',
185
- * language: 'en',
186
- * speaker_diarization: true,
187
- * });
188
- *
189
- * // Wait for processing
190
- * const ready = await captions.waitForReady(track.id);
191
- *
192
- * // Translate to Spanish
193
- * const spanish = await captions.translate(track.id, {
194
- * target_language: 'es',
195
- * });
196
- * ```
197
- */
198
- export declare class CaptionsAPI {
199
- private readonly client;
200
- private readonly basePath;
201
- constructor(client: WaveClient);
202
- /**
203
- * Generate captions using AI
204
- *
205
- * Requires: captions:generate permission
206
- */
207
- generate(request: GenerateCaptionsRequest): Promise<CaptionTrack>;
208
- /**
209
- * Upload existing captions
210
- *
211
- * Requires: captions:create permission
212
- */
213
- upload(request: UploadCaptionsRequest): Promise<CaptionTrack>;
214
- /**
215
- * Get a caption track by ID
216
- *
217
- * Requires: captions:read permission
218
- */
219
- get(trackId: string): Promise<CaptionTrack>;
220
- /**
221
- * Update a caption track
222
- *
223
- * Requires: captions:update permission
224
- */
225
- update(trackId: string, request: UpdateCaptionsRequest): Promise<CaptionTrack>;
226
- /**
227
- * Remove a caption track
228
- *
229
- * Requires: captions:remove permission (server-side RBAC enforced)
230
- */
231
- remove(trackId: string): Promise<void>;
232
- /**
233
- * List caption tracks
234
- *
235
- * Requires: captions:read permission
236
- */
237
- list(params?: ListCaptionsParams): Promise<PaginatedResponse<CaptionTrack>>;
238
- /**
239
- * Get caption tracks for a specific media
240
- *
241
- * Requires: captions:read permission
242
- */
243
- getForMedia(mediaId: string, mediaType: 'video' | 'audio' | 'stream'): Promise<CaptionTrack[]>;
244
- /**
245
- * Get caption cues (segments)
246
- *
247
- * Requires: captions:read permission
248
- */
249
- getCues(trackId: string, params?: PaginationParams & {
250
- start_time?: number;
251
- end_time?: number;
252
- }): Promise<PaginatedResponse<CaptionCue>>;
253
- /**
254
- * Update a caption cue
255
- *
256
- * Requires: captions:update permission
257
- */
258
- updateCue(trackId: string, cueId: string, updates: Partial<Pick<CaptionCue, 'text' | 'start_time' | 'end_time' | 'speaker' | 'style'>>): Promise<CaptionCue>;
259
- /**
260
- * Add a new caption cue
261
- *
262
- * Requires: captions:update permission
263
- */
264
- addCue(trackId: string, cue: Omit<CaptionCue, 'id' | 'confidence' | 'words'>): Promise<CaptionCue>;
265
- /**
266
- * Remove a caption cue
267
- *
268
- * Requires: captions:update permission (server-side RBAC enforced)
269
- */
270
- removeCue(trackId: string, cueId: string): Promise<void>;
271
- /**
272
- * Bulk update cues
273
- *
274
- * Requires: captions:update permission
275
- */
276
- bulkUpdateCues(trackId: string, updates: Array<{
277
- id: string;
278
- text?: string;
279
- start_time?: number;
280
- end_time?: number;
281
- }>): Promise<{
282
- updated: number;
283
- }>;
284
- /**
285
- * Translate a caption track to another language
286
- *
287
- * Requires: captions:translate permission
288
- */
289
- translate(trackId: string, request: TranslateCaptionsRequest): Promise<CaptionTrack>;
290
- /**
291
- * Export captions in a specific format
292
- *
293
- * Requires: captions:read permission
294
- */
295
- exportFormat(trackId: string, format: CaptionFormat): Promise<{
296
- url: string;
297
- expires_at: string;
298
- }>;
299
- /**
300
- * Get captions as plain text
301
- *
302
- * Requires: captions:read permission
303
- */
304
- getText(trackId: string): Promise<string>;
305
- /**
306
- * Burn captions into video
307
- *
308
- * Requires: captions:burnin permission
309
- */
310
- burnIn(request: BurnInCaptionsRequest): Promise<BurnInJob>;
311
- /**
312
- * Get burn-in job status
313
- *
314
- * Requires: captions:read permission
315
- */
316
- getBurnInJob(jobId: string): Promise<BurnInJob>;
317
- /**
318
- * Wait for burn-in to complete
319
- */
320
- waitForBurnIn(jobId: string, options?: {
321
- pollInterval?: number;
322
- timeout?: number;
323
- onProgress?: (job: BurnInJob) => void;
324
- }): Promise<BurnInJob>;
325
- /**
326
- * Wait for caption generation to complete
327
- */
328
- waitForReady(trackId: string, options?: {
329
- pollInterval?: number;
330
- timeout?: number;
331
- onProgress?: (track: CaptionTrack) => void;
332
- }): Promise<CaptionTrack>;
333
- /**
334
- * Get supported languages
335
- *
336
- * Requires: captions:read permission
337
- */
338
- getSupportedLanguages(): Promise<Array<{
339
- code: string;
340
- name: string;
341
- native_name: string;
342
- supports_generation: boolean;
343
- supports_translation: boolean;
344
- }>>;
345
- /**
346
- * Detect language from audio
347
- *
348
- * Requires: captions:generate permission
349
- */
350
- detectLanguage(mediaId: string, mediaType: 'video' | 'audio' | 'stream'): Promise<{
351
- detected_language: string;
352
- confidence: number;
353
- alternatives: Array<{
354
- language: string;
355
- confidence: number;
356
- }>;
357
- }>;
358
- }
359
- /**
360
- * Create a Captions API instance
361
- */
362
- export declare function createCaptionsAPI(client: WaveClient): CaptionsAPI;
@@ -1 +0,0 @@
1
- {"version":3,"file":"captions.d.ts","sourceRoot":"","sources":["../src/captions.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,UAAU,EACV,QAAQ,EACT,MAAM,UAAU,CAAC;AAMlB;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,SAAS,GACT,YAAY,GACZ,OAAO,GACP,QAAQ,CAAC;AAEb;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,MAAM,GACN,MAAM,GACN,MAAM,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,YAAa,SAAQ,UAAU;IAC9C,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;IACtB,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAChC,UAAU,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,KAAK,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;IAC5C,iCAAiC;IACjC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,kCAAkC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,uBAAuB;IACvB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,wBAAwB;IACxB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,+BAA+B;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iCAAiC;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,aAAa,CAAC;IACtB,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mCAAmC;IACnC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,8BAA8B;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,oBAAoB;IACpB,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,CAAC;IAChC,qBAAqB;IACrB,OAAO,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,SAAU,SAAQ,UAAU;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,SAAS,GAAG,YAAY,GAAG,OAAO,GAAG,QAAQ,CAAC;IACtD,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAmB,SAAQ,gBAAgB;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAMD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;IACpC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkB;gBAE/B,MAAM,EAAE,UAAU;IAQ9B;;;;OAIG;IACG,QAAQ,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,YAAY,CAAC;IAIvE;;;;OAIG;IACG,MAAM,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,YAAY,CAAC;IAInE;;;;OAIG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAIjD;;;;OAIG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,YAAY,CAAC;IAIpF;;;;OAIG;IACG,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO5C;;;;OAIG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAMjF;;;;OAIG;IACG,WAAW,CACf,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,GACtC,OAAO,CAAC,YAAY,EAAE,CAAC;IAS1B;;;;OAIG;IACG,OAAO,CACX,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,gBAAgB,GAAG;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,GACrE,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAOzC;;;;OAIG;IACG,SAAS,CACb,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC,CAAC,GAC3F,OAAO,CAAC,UAAU,CAAC;IAOtB;;;;OAIG;IACG,MAAM,CACV,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,GAAG,YAAY,GAAG,OAAO,CAAC,GACnD,OAAO,CAAC,UAAU,CAAC;IAOtB;;;;OAIG;IACG,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO9D;;;;OAIG;IACG,cAAc,CAClB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GACpF,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAQ/B;;;;OAIG;IACG,SAAS,CACb,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,YAAY,CAAC;IAWxB;;;;OAIG;IACG,YAAY,CAChB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAM/C;;;;OAIG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAW/C;;;;OAIG;IACG,MAAM,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,SAAS,CAAC;IAIhE;;;;OAIG;IACG,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAIrD;;OAEG;IACG,aAAa,CACjB,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QACR,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,SAAS,KAAK,IAAI,CAAC;KACvC,GACA,OAAO,CAAC,SAAS,CAAC;IA8BrB;;OAEG;IACG,YAAY,CAChB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QACR,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;KAC5C,GACA,OAAO,CAAC,YAAY,CAAC;IA0BxB;;;;OAIG;IACG,qBAAqB,IAAI,OAAO,CACpC,KAAK,CAAC;QACJ,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,mBAAmB,EAAE,OAAO,CAAC;QAC7B,oBAAoB,EAAE,OAAO,CAAC;KAC/B,CAAC,CACH;IAID;;;;OAIG;IACG,cAAc,CAClB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,GACtC,OAAO,CAAC;QACT,iBAAiB,EAAE,MAAM,CAAC;QAC1B,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAC/D,CAAC;CAMH;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,WAAW,CAEjE"}
@@ -1,315 +0,0 @@
1
- /**
2
- * WAVE SDK - Chapters API
3
- *
4
- * Manage video chapters and smart chapter generation.
5
- *
6
- * NOTE: This is a client SDK. All authorization checks are performed server-side.
7
- * The API will return 403 Forbidden if the user lacks required permissions.
8
- */
9
- import type { WaveClient, PaginationParams, PaginatedResponse, Timestamps, Metadata } from './client';
10
- /**
11
- * Chapter status
12
- */
13
- export type ChapterStatus = 'pending' | 'processing' | 'ready' | 'failed';
14
- /**
15
- * Chapter
16
- */
17
- export interface Chapter extends Timestamps {
18
- id: string;
19
- media_id: string;
20
- title: string;
21
- description?: string;
22
- start_time: number;
23
- end_time?: number;
24
- thumbnail_url?: string;
25
- order: number;
26
- is_auto_generated: boolean;
27
- confidence?: number;
28
- metadata?: Metadata;
29
- }
30
- /**
31
- * Chapter set (collection of chapters for a media)
32
- */
33
- export interface ChapterSet extends Timestamps {
34
- id: string;
35
- organization_id: string;
36
- media_id: string;
37
- media_type: 'video' | 'audio' | 'stream';
38
- name: string;
39
- status: ChapterStatus;
40
- is_default: boolean;
41
- is_auto_generated: boolean;
42
- chapters: Chapter[];
43
- chapter_count: number;
44
- error?: string;
45
- metadata?: Metadata;
46
- }
47
- /**
48
- * Generate chapters request
49
- */
50
- export interface GenerateChaptersRequest {
51
- media_id: string;
52
- media_type: 'video' | 'audio' | 'stream';
53
- name?: string;
54
- /** Minimum chapter duration in seconds */
55
- min_duration?: number;
56
- /** Maximum number of chapters */
57
- max_chapters?: number;
58
- /** Detection method */
59
- method?: 'scene' | 'topic' | 'combined';
60
- /** Use transcript for topic detection */
61
- use_transcript?: boolean;
62
- /** Caption track ID if using transcript */
63
- caption_track_id?: string;
64
- /** Generate thumbnails for chapters */
65
- generate_thumbnails?: boolean;
66
- /** Set as default chapter set */
67
- set_as_default?: boolean;
68
- /** Webhook URL for completion */
69
- webhook_url?: string;
70
- metadata?: Metadata;
71
- }
72
- /**
73
- * Create chapter set request
74
- */
75
- export interface CreateChapterSetRequest {
76
- media_id: string;
77
- media_type: 'video' | 'audio' | 'stream';
78
- name: string;
79
- chapters: CreateChapterRequest[];
80
- set_as_default?: boolean;
81
- metadata?: Metadata;
82
- }
83
- /**
84
- * Create chapter request
85
- */
86
- export interface CreateChapterRequest {
87
- title: string;
88
- description?: string;
89
- start_time: number;
90
- end_time?: number;
91
- thumbnail_url?: string;
92
- metadata?: Metadata;
93
- }
94
- /**
95
- * Update chapter request
96
- */
97
- export interface UpdateChapterRequest {
98
- title?: string;
99
- description?: string;
100
- start_time?: number;
101
- end_time?: number;
102
- thumbnail_url?: string;
103
- order?: number;
104
- metadata?: Metadata;
105
- }
106
- /**
107
- * Update chapter set request
108
- */
109
- export interface UpdateChapterSetRequest {
110
- name?: string;
111
- is_default?: boolean;
112
- metadata?: Metadata;
113
- }
114
- /**
115
- * List chapter sets params
116
- */
117
- export interface ListChapterSetsParams extends PaginationParams {
118
- media_id?: string;
119
- media_type?: 'video' | 'audio' | 'stream';
120
- status?: ChapterStatus;
121
- is_auto_generated?: boolean;
122
- }
123
- /**
124
- * Chapters API client
125
- *
126
- * All operations require appropriate permissions. Authorization is enforced
127
- * server-side - the API returns 403 if the authenticated user lacks access.
128
- *
129
- * @example
130
- * ```typescript
131
- * import { WaveClient } from '@wave/sdk';
132
- * import { ChaptersAPI } from '@wave/sdk/chapters';
133
- *
134
- * const client = new WaveClient({ apiKey: 'your-api-key' });
135
- * const chapters = new ChaptersAPI(client);
136
- *
137
- * // Generate chapters automatically
138
- * const chapterSet = await chapters.generate({
139
- * media_id: 'video_123',
140
- * media_type: 'video',
141
- * method: 'combined',
142
- * generate_thumbnails: true,
143
- * });
144
- *
145
- * // Wait for processing
146
- * const ready = await chapters.waitForReady(chapterSet.id);
147
- * console.log('Chapters:', ready.chapters);
148
- * ```
149
- */
150
- export declare class ChaptersAPI {
151
- private readonly client;
152
- private readonly basePath;
153
- constructor(client: WaveClient);
154
- /**
155
- * Generate chapters using AI
156
- *
157
- * Requires: chapters:generate permission
158
- */
159
- generate(request: GenerateChaptersRequest): Promise<ChapterSet>;
160
- /**
161
- * Create a chapter set manually
162
- *
163
- * Requires: chapters:create permission
164
- */
165
- createSet(request: CreateChapterSetRequest): Promise<ChapterSet>;
166
- /**
167
- * Get a chapter set by ID
168
- *
169
- * Requires: chapters:read permission
170
- */
171
- getSet(setId: string): Promise<ChapterSet>;
172
- /**
173
- * Update a chapter set
174
- *
175
- * Requires: chapters:update permission
176
- */
177
- updateSet(setId: string, request: UpdateChapterSetRequest): Promise<ChapterSet>;
178
- /**
179
- * Remove a chapter set
180
- *
181
- * Requires: chapters:remove permission (canDelete verified server-side)
182
- */
183
- removeSet(setId: string): Promise<void>;
184
- /**
185
- * List chapter sets
186
- *
187
- * Requires: chapters:read permission
188
- */
189
- listSets(params?: ListChapterSetsParams): Promise<PaginatedResponse<ChapterSet>>;
190
- /**
191
- * Get the default chapter set for a media
192
- *
193
- * Requires: chapters:read permission
194
- */
195
- getDefaultSet(mediaId: string, mediaType: 'video' | 'audio' | 'stream'): Promise<ChapterSet | null>;
196
- /**
197
- * Duplicate a chapter set
198
- *
199
- * Requires: chapters:create permission
200
- */
201
- duplicateSet(setId: string, name?: string): Promise<ChapterSet>;
202
- /**
203
- * Add a chapter to a set
204
- *
205
- * Requires: chapters:update permission
206
- */
207
- addChapter(setId: string, chapter: CreateChapterRequest): Promise<Chapter>;
208
- /**
209
- * Get a chapter by ID
210
- *
211
- * Requires: chapters:read permission
212
- */
213
- getChapter(setId: string, chapterId: string): Promise<Chapter>;
214
- /**
215
- * Update a chapter
216
- *
217
- * Requires: chapters:update permission
218
- */
219
- updateChapter(setId: string, chapterId: string, request: UpdateChapterRequest): Promise<Chapter>;
220
- /**
221
- * Remove a chapter
222
- *
223
- * Requires: chapters:update permission (server-side RBAC enforced)
224
- */
225
- removeChapter(setId: string, chapterId: string): Promise<void>;
226
- /**
227
- * Reorder chapters
228
- *
229
- * Requires: chapters:update permission
230
- */
231
- reorderChapters(setId: string, chapterIds: string[]): Promise<ChapterSet>;
232
- /**
233
- * Bulk update chapters
234
- *
235
- * Requires: chapters:update permission
236
- */
237
- bulkUpdateChapters(setId: string, updates: Array<{
238
- id: string;
239
- } & Partial<UpdateChapterRequest>>): Promise<{
240
- updated: number;
241
- }>;
242
- /**
243
- * Generate thumbnail for a chapter
244
- *
245
- * Requires: chapters:update permission
246
- */
247
- generateThumbnail(setId: string, chapterId: string, options?: {
248
- time?: number;
249
- }): Promise<Chapter>;
250
- /**
251
- * Generate thumbnails for all chapters in a set
252
- *
253
- * Requires: chapters:update permission
254
- */
255
- generateAllThumbnails(setId: string): Promise<{
256
- generated: number;
257
- }>;
258
- /**
259
- * Export chapters in various formats
260
- *
261
- * Requires: chapters:read permission
262
- */
263
- exportChapters(setId: string, format: 'json' | 'youtube' | 'webvtt' | 'ffmpeg'): Promise<{
264
- content: string;
265
- format: string;
266
- }>;
267
- /**
268
- * Import chapters from a format
269
- *
270
- * Requires: chapters:create permission
271
- */
272
- importChapters(mediaId: string, mediaType: 'video' | 'audio' | 'stream', format: 'json' | 'youtube' | 'webvtt' | 'ffmpeg', content: string, options?: {
273
- name?: string;
274
- set_as_default?: boolean;
275
- }): Promise<ChapterSet>;
276
- /**
277
- * Wait for chapter generation to complete
278
- */
279
- waitForReady(setId: string, options?: {
280
- pollInterval?: number;
281
- timeout?: number;
282
- onProgress?: (set: ChapterSet) => void;
283
- }): Promise<ChapterSet>;
284
- /**
285
- * Get chapter at a specific time
286
- *
287
- * Requires: chapters:read permission
288
- */
289
- getChapterAtTime(setId: string, time: number): Promise<Chapter | null>;
290
- /**
291
- * Merge chapters
292
- *
293
- * Requires: chapters:update permission
294
- */
295
- mergeChapters(setId: string, chapterIds: string[], options?: {
296
- title?: string;
297
- description?: string;
298
- }): Promise<Chapter>;
299
- /**
300
- * Split a chapter at a specific time
301
- *
302
- * Requires: chapters:update permission
303
- */
304
- splitChapter(setId: string, chapterId: string, splitTime: number, options?: {
305
- first_title?: string;
306
- second_title?: string;
307
- }): Promise<{
308
- first: Chapter;
309
- second: Chapter;
310
- }>;
311
- }
312
- /**
313
- * Create a Chapters API instance
314
- */
315
- export declare function createChaptersAPI(client: WaveClient): ChaptersAPI;
@@ -1 +0,0 @@
1
- {"version":3,"file":"chapters.d.ts","sourceRoot":"","sources":["../src/chapters.ts"],"names":[],"mappings":"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"}