@mux/ai 0.52.0 → 0.54.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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mux/ai",
3
3
  "type": "module",
4
- "version": "0.52.0",
4
+ "version": "0.54.0",
5
5
  "description": "AI library for Mux",
6
6
  "author": "Mux",
7
7
  "license": "Apache-2.0",
@@ -113,7 +113,7 @@
113
113
  "example:translate-audio": "npx tsx examples/translate-audio/basic-example.ts",
114
114
  "evalite:post-results:dev": "npx tsx scripts/export-evalite-results.ts --model-set all && npx tsx scripts/post-evalite-results.ts -d -k",
115
115
  "evalite:post-results:production": "npx tsx scripts/export-evalite-results.ts --model-set all && npx tsx scripts/post-evalite-results.ts",
116
- "prepare": "husky"
116
+ "prepare": "husky || true; npm run build"
117
117
  },
118
118
  "peerDependencies": {
119
119
  "workflow": ">=4.2.4"
@@ -1,387 +0,0 @@
1
- import { l as WorkflowCredentialsInput, n as WorkflowScope, A as AssetTextTrack, M as MuxAsset, T as TextChunk, b as ChunkingStrategy, q as CompletedShotsResult, D as DeletedShotsResult, r as ErroredShotsResult, H as Hotspot, s as HotspotOptions, t as HotspotResponse, u as PendingShotsResult, v as Shot, w as ShotRequestOptions, x as ShotsResult, y as SkippedShotsResult, z as WaitForShotsOptions, B as getHotspotsForAsset, F as getHotspotsForPlaybackId, G as getHotspotsForVideo, J as getShotsForAsset, K as requestShotsForAsset, L as waitForShotsForAsset } from './shots-3wmvZnUV.js';
2
-
3
- interface HeatmapOptions {
4
- /** Time window for results, e.g., '7:days' (default: '7:days') */
5
- timeframe?: string;
6
- /** Optional workflow credentials */
7
- credentials?: WorkflowCredentialsInput;
8
- }
9
- interface HeatmapResponse {
10
- assetId?: string;
11
- videoId?: string;
12
- playbackId?: string;
13
- /** Engagement values across the video timeline, one per equal slice (currently 100) */
14
- heatmap: number[];
15
- timeframe: [number, number];
16
- }
17
- /**
18
- * Fetches engagement heatmap for a Mux asset.
19
- * Returns an array where each value represents how many times
20
- * that slice of the video was watched.
21
- *
22
- * @param assetId - The Mux asset ID
23
- * @param options - Heatmap query options
24
- * @returns Heatmap data with per-bucket engagement values
25
- */
26
- declare function getHeatmapForAsset(assetId: string, options?: HeatmapOptions): Promise<HeatmapResponse>;
27
- /**
28
- * Fetches engagement heatmap for a Mux video ID.
29
- * Returns an array where each value represents how many times
30
- * that slice of the video was watched.
31
- *
32
- * @param videoId - The Mux video ID
33
- * @param options - Heatmap query options
34
- * @returns Heatmap data with per-bucket engagement values
35
- */
36
- declare function getHeatmapForVideo(videoId: string, options?: HeatmapOptions): Promise<HeatmapResponse>;
37
- /**
38
- * Fetches engagement heatmap for a Mux playback ID.
39
- * Returns an array where each value represents how many times
40
- * that slice of the video was watched.
41
- *
42
- * @param playbackId - The Mux playback ID
43
- * @param options - Heatmap query options
44
- * @returns Heatmap data with per-bucket engagement values
45
- */
46
- declare function getHeatmapForPlaybackId(playbackId: string, options?: HeatmapOptions): Promise<HeatmapResponse>;
47
-
48
- declare const DEFAULT_STORYBOARD_WIDTH = 640;
49
- /**
50
- * Generates a storyboard URL for the given playback ID.
51
- * If shouldSign is true, the URL will be signed with a token using credentials from environment variables.
52
- *
53
- * @param playbackId - The Mux playback ID
54
- * @param width - Width of the storyboard in pixels (default: 640)
55
- * @param shouldSign - Flag for whether or not to use signed playback IDs (default: false)
56
- * @param credentials - Optional workflow credentials used for signing
57
- * @param scope - Optional asset-relative range for storyboard tiles
58
- * @returns Storyboard URL (signed if shouldSign is true)
59
- */
60
- declare function getStoryboardUrl(playbackId: string, width?: number, shouldSign?: boolean, credentials?: WorkflowCredentialsInput, scope?: WorkflowScope): Promise<string>;
61
-
62
- /** A single cue from a VTT file with timing info. */
63
- interface VTTCue {
64
- startTime: number;
65
- endTime: number;
66
- text: string;
67
- }
68
- interface TranscriptFetchOptions {
69
- languageCode?: string;
70
- cleanTranscript?: boolean;
71
- /** Optional asset-relative time range used to filter transcript cues. */
72
- scope?: WorkflowScope;
73
- /** Optional signing context for signed playback IDs */
74
- shouldSign?: boolean;
75
- credentials?: WorkflowCredentialsInput;
76
- /**
77
- * When true, throws if no usable transcript can be retrieved (no ready text track,
78
- * missing track id, fetch error, or empty transcript).
79
- *
80
- * Default behavior is non-fatal and returns an empty `transcriptText`.
81
- */
82
- required?: boolean;
83
- }
84
- interface TranscriptResult {
85
- transcriptText: string;
86
- transcriptUrl?: string;
87
- track?: AssetTextTrack;
88
- }
89
- declare function getReadyTextTracks(asset: MuxAsset): AssetTextTrack[];
90
- declare function findCaptionTrack(asset: MuxAsset, languageCode?: string): AssetTextTrack | undefined;
91
- /**
92
- * Default minimum auto-detection confidence required to trust a track's language code.
93
- * Below this threshold, the language is treated as undetermined.
94
- */
95
- declare const LOW_CONFIDENCE_THRESHOLD = 0.5;
96
- /**
97
- * Extracts a trustworthy language code from a track, returning `undefined`
98
- * when the language metadata shouldn't be used as an LLM output language.
99
- *
100
- * Returns `undefined` when:
101
- * - The track or its language code is missing
102
- * - The language code is undetermined (`und`, `mul`, `mis`, `zxx`)
103
- * - The language was auto-detected with confidence below the threshold
104
- *
105
- * Trusts the language code when:
106
- * - `auto_language_confidence` is absent (manually set or non-auto tracks)
107
- * - `auto_language_confidence` meets the threshold
108
- *
109
- * @param track - The text track to inspect
110
- * @param confidenceThreshold - Minimum confidence to trust auto-detected language (default: {@link LOW_CONFIDENCE_THRESHOLD})
111
- */
112
- declare function getReliableLanguageCode(track: AssetTextTrack | undefined, confidenceThreshold?: number): string | undefined;
113
- /**
114
- * Sanitise untrusted text (typically a VTT cue or joined transcript)
115
- * before it is interpolated into a prompt. Thin wrapper around the
116
- * shared {@link normalizeUntrustedUnicode} helper, with a null/empty
117
- * guard for convenience.
118
- */
119
- declare function sanitizeUntrustedText(value: string): string;
120
- /**
121
- * Upper bound on individual cue text length before we consider the cue
122
- * adversarial and truncate it.
123
- *
124
- * Legitimate captions are short — a long monologue cue rarely exceeds
125
- * 500 characters, and most captioning standards recommend well under
126
- * that for readability. We set the cap at 2000 to give comfortable
127
- * headroom for edge cases (stage directions, speaker identification,
128
- * multi-line blocks) while making "hide a multi-kilobyte injection
129
- * payload inside a single cue" mechanically infeasible.
130
- */
131
- declare const MAX_CUE_TEXT_CHARS = 2000;
132
- /**
133
- * Strip VTT metadata blocks that are never rendered by players but can
134
- * still carry text through to an LLM when the raw VTT is used in a prompt:
135
- *
136
- * - NOTE blocks (VTT comments)
137
- * - STYLE blocks (CSS for cue styling)
138
- * - REGION blocks (positioning definitions)
139
- *
140
- * Viewers never see the contents of these blocks. That makes them an
141
- * ideal hiding spot for prompt-injection payloads — an attacker-controlled
142
- * caption file can carry hundreds of bytes of "NOTE ignore previous
143
- * instructions…" that will be stripped from any player but will reach the
144
- * model if the raw VTT is passed through. Removing them before sending
145
- * the VTT to the model closes that channel without changing what the
146
- * model sees for legitimate cue content.
147
- *
148
- * Cue identifiers, timing lines, and cue payload text are preserved.
149
- * In particular: a cue whose first payload line happens to start with
150
- * `NOTE `/`STYLE `/`REGION ` (plausible in legitimate captions — e.g.
151
- * `"NOTE THAT..."`, `"STYLE GUIDE"`, `"NOTE how the villain plots..."`)
152
- * is NOT treated as a metadata block. The scanner tracks cue-payload
153
- * state: metadata headers are only recognised between cues (i.e. when
154
- * the previous non-blank line was not a timing line).
155
- *
156
- * Example input:
157
- *
158
- * WEBVTT
159
- *
160
- * NOTE This is a comment with hidden instructions
161
- * that span multiple lines until a blank line appears.
162
- *
163
- * STYLE
164
- * ::cue(b) { font-weight: bold; }
165
- *
166
- * 00:00:01.000 --> 00:00:04.000
167
- * Legitimate caption text
168
- *
169
- * 00:00:05.000 --> 00:00:08.000
170
- * NOTE THAT the hero wins
171
- *
172
- * Returns:
173
- *
174
- * WEBVTT
175
- *
176
- * 00:00:01.000 --> 00:00:04.000
177
- * Legitimate caption text
178
- *
179
- * 00:00:05.000 --> 00:00:08.000
180
- * NOTE THAT the hero wins
181
- */
182
- declare function stripVttMetadataBlocks(vttContent: string): string;
183
- declare function extractTextFromVTT(vttContent: string): string;
184
- declare function vttTimestampToSeconds(timestamp: string): number;
185
- /**
186
- * Converts seconds to a human-readable timestamp.
187
- * Returns M:SS for durations under an hour, H:MM:SS for an hour or more.
188
- *
189
- * @param seconds - The number of seconds to convert
190
- * @returns A formatted timestamp string (e.g., "2:05" or "01:02:05")
191
- */
192
- declare function secondsToTimestamp(seconds: number): string;
193
- declare function extractTimestampedTranscript(vttContent: string): string;
194
- /**
195
- * Parses VTT content into structured cues with timing.
196
- *
197
- * @param vttContent - Raw VTT file content
198
- * @returns Array of VTT cues with start/end times and text
199
- */
200
- declare function parseVTTCues(vttContent: string): VTTCue[];
201
- /**
202
- * Keeps only VTT cues that overlap an asset-relative time range.
203
- *
204
- * Cue timestamps remain relative to the original asset; they are not rebased
205
- * to the start of the scope.
206
- */
207
- declare function filterVttByScope(vttContent: string, scope: WorkflowScope | undefined): string;
208
- declare function splitVttPreambleAndCueBlocks(vttContent: string): {
209
- preamble: string;
210
- cueBlocks: string[];
211
- };
212
- declare function buildVttFromCueBlocks(cueBlocks: string[], preamble?: string): string;
213
- declare function replaceCueText(cueBlock: string, translatedText: string): string;
214
- declare function buildVttFromTranslatedCueBlocks(cueBlocks: string[], translatedTexts: string[], preamble?: string): string;
215
- declare function concatenateVttSegments(segments: string[], preamble?: string): string;
216
- /**
217
- * Builds a transcript URL for the given playback ID and track ID.
218
- * If a signing context is provided, the URL will be signed with a token.
219
- *
220
- * @param playbackId - The Mux playback ID
221
- * @param trackId - The text track ID
222
- * @param shouldSign - Flag for whether or not to use signed playback IDs
223
- * @returns Transcript URL (signed if context provided)
224
- */
225
- declare function buildTranscriptUrl(playbackId: string, trackId: string, shouldSign?: boolean, credentials?: WorkflowCredentialsInput): Promise<string>;
226
- declare function fetchTranscriptForAsset(asset: MuxAsset, playbackId: string, options?: TranscriptFetchOptions): Promise<TranscriptResult>;
227
-
228
- /**
229
- * Generic text-first chunking utilities.
230
- *
231
- * Reach for this module when the downstream consumer only needs chunk text plus
232
- * lightweight metadata such as token count or approximate start/end times.
233
- * These helpers are ideal for embeddings, retrieval, summarization inputs, or
234
- * other workflows where preserving the original document format is not required.
235
- *
236
- * This module also includes cue-preserving chunk planners for VTT workflows.
237
- * Those helpers still operate at the chunk-planning layer; if you need to split
238
- * or rebuild full VTT documents, use the VTT structure helpers from
239
- * `@mux/ai/primitives/transcripts`.
240
- */
241
- interface VTTDurationChunkingOptions {
242
- targetChunkDurationSeconds: number;
243
- maxChunkDurationSeconds: number;
244
- minChunkDurationSeconds?: number;
245
- boundaryLookaheadCues?: number;
246
- boundaryPauseSeconds?: number;
247
- }
248
- interface VTTCueBudgetChunkingOptions {
249
- maxCuesPerChunk: number;
250
- maxTextTokensPerChunk?: number;
251
- }
252
- interface VTTDurationChunk {
253
- id: string;
254
- cueStartIndex: number;
255
- cueEndIndex: number;
256
- cueCount: number;
257
- startTime: number;
258
- endTime: number;
259
- }
260
- /**
261
- * Simple token counter that approximates tokens by word count.
262
- * For production use with OpenAI, consider using a proper tokenizer like tiktoken.
263
- * This approximation is generally close enough for chunking purposes (1 token ≈ 0.75 words).
264
- */
265
- declare function estimateTokenCount(text: string): number;
266
- /**
267
- * Chunks text into overlapping segments based on token count.
268
- *
269
- * @param text - The text to chunk
270
- * @param maxTokens - Maximum tokens per chunk
271
- * @param overlapTokens - Number of tokens to overlap between chunks
272
- * @returns Array of text chunks with metadata
273
- */
274
- declare function chunkByTokens(text: string, maxTokens: number, overlapTokens?: number): TextChunk[];
275
- /**
276
- * Chunks VTT cues into groups that respect natural cue boundaries.
277
- * Splits at cue boundaries rather than mid-sentence, preserving accurate timestamps.
278
- *
279
- * @param cues - Array of VTT cues to chunk
280
- * @param maxTokens - Maximum tokens per chunk
281
- * @param overlapCues - Number of cues to overlap between chunks (default: 2)
282
- * @returns Array of text chunks with accurate start/end times
283
- */
284
- declare function chunkVTTCues(cues: VTTCue[], maxTokens: number, overlapCues?: number): TextChunk[];
285
- declare function chunkVTTCuesByBudget(cues: VTTCue[], options: VTTCueBudgetChunkingOptions): VTTDurationChunk[];
286
- declare function chunkVTTCuesByDuration(cues: VTTCue[], options: VTTDurationChunkingOptions): VTTDurationChunk[];
287
- /**
288
- * Chunks text according to the specified strategy.
289
- *
290
- * @param text - The text to chunk
291
- * @param strategy - The chunking strategy to use
292
- * @returns Array of text chunks
293
- */
294
- declare function chunkText(text: string, strategy: ChunkingStrategy): TextChunk[];
295
-
296
- interface ThumbnailOptions {
297
- /** Interval between thumbnails in seconds (default: 10) */
298
- interval?: number;
299
- /** Width of the thumbnail in pixels (default: 640) */
300
- width?: number;
301
- /** Flag for whether or not to use signed playback IDs (default: false) */
302
- shouldSign?: boolean;
303
- /** Maximum number of thumbnails to generate. When set, samples are evenly distributed with first and last frames pinned. */
304
- maxSamples?: number;
305
- /** Workflow credentials for signing (optional). */
306
- credentials?: WorkflowCredentialsInput;
307
- /** Optional asset-relative range from which thumbnails should be sampled. */
308
- scope?: WorkflowScope;
309
- }
310
- /**
311
- * Generates thumbnail URLs at regular intervals based on video duration.
312
- * If shouldSign is true, the URLs will be signed with tokens using credentials from environment variables.
313
- *
314
- * @param playbackId - The Mux playback ID
315
- * @param duration - Video duration in seconds
316
- * @param options - Thumbnail generation options
317
- * @returns Array of objects containing the thumbnail URL and its time in seconds
318
- */
319
- declare function getThumbnailUrls(playbackId: string, duration: number, options?: ThumbnailOptions): Promise<Array<{
320
- url: string;
321
- time: number;
322
- }>>;
323
-
324
- declare const index_CompletedShotsResult: typeof CompletedShotsResult;
325
- declare const index_DEFAULT_STORYBOARD_WIDTH: typeof DEFAULT_STORYBOARD_WIDTH;
326
- declare const index_DeletedShotsResult: typeof DeletedShotsResult;
327
- declare const index_ErroredShotsResult: typeof ErroredShotsResult;
328
- type index_HeatmapOptions = HeatmapOptions;
329
- type index_HeatmapResponse = HeatmapResponse;
330
- declare const index_Hotspot: typeof Hotspot;
331
- declare const index_HotspotOptions: typeof HotspotOptions;
332
- declare const index_HotspotResponse: typeof HotspotResponse;
333
- declare const index_LOW_CONFIDENCE_THRESHOLD: typeof LOW_CONFIDENCE_THRESHOLD;
334
- declare const index_MAX_CUE_TEXT_CHARS: typeof MAX_CUE_TEXT_CHARS;
335
- declare const index_PendingShotsResult: typeof PendingShotsResult;
336
- declare const index_Shot: typeof Shot;
337
- declare const index_ShotRequestOptions: typeof ShotRequestOptions;
338
- declare const index_ShotsResult: typeof ShotsResult;
339
- declare const index_SkippedShotsResult: typeof SkippedShotsResult;
340
- type index_ThumbnailOptions = ThumbnailOptions;
341
- type index_TranscriptFetchOptions = TranscriptFetchOptions;
342
- type index_TranscriptResult = TranscriptResult;
343
- type index_VTTCue = VTTCue;
344
- type index_VTTCueBudgetChunkingOptions = VTTCueBudgetChunkingOptions;
345
- type index_VTTDurationChunk = VTTDurationChunk;
346
- type index_VTTDurationChunkingOptions = VTTDurationChunkingOptions;
347
- declare const index_WaitForShotsOptions: typeof WaitForShotsOptions;
348
- declare const index_buildTranscriptUrl: typeof buildTranscriptUrl;
349
- declare const index_buildVttFromCueBlocks: typeof buildVttFromCueBlocks;
350
- declare const index_buildVttFromTranslatedCueBlocks: typeof buildVttFromTranslatedCueBlocks;
351
- declare const index_chunkByTokens: typeof chunkByTokens;
352
- declare const index_chunkText: typeof chunkText;
353
- declare const index_chunkVTTCues: typeof chunkVTTCues;
354
- declare const index_chunkVTTCuesByBudget: typeof chunkVTTCuesByBudget;
355
- declare const index_chunkVTTCuesByDuration: typeof chunkVTTCuesByDuration;
356
- declare const index_concatenateVttSegments: typeof concatenateVttSegments;
357
- declare const index_estimateTokenCount: typeof estimateTokenCount;
358
- declare const index_extractTextFromVTT: typeof extractTextFromVTT;
359
- declare const index_extractTimestampedTranscript: typeof extractTimestampedTranscript;
360
- declare const index_fetchTranscriptForAsset: typeof fetchTranscriptForAsset;
361
- declare const index_filterVttByScope: typeof filterVttByScope;
362
- declare const index_findCaptionTrack: typeof findCaptionTrack;
363
- declare const index_getHeatmapForAsset: typeof getHeatmapForAsset;
364
- declare const index_getHeatmapForPlaybackId: typeof getHeatmapForPlaybackId;
365
- declare const index_getHeatmapForVideo: typeof getHeatmapForVideo;
366
- declare const index_getHotspotsForAsset: typeof getHotspotsForAsset;
367
- declare const index_getHotspotsForPlaybackId: typeof getHotspotsForPlaybackId;
368
- declare const index_getHotspotsForVideo: typeof getHotspotsForVideo;
369
- declare const index_getReadyTextTracks: typeof getReadyTextTracks;
370
- declare const index_getReliableLanguageCode: typeof getReliableLanguageCode;
371
- declare const index_getShotsForAsset: typeof getShotsForAsset;
372
- declare const index_getStoryboardUrl: typeof getStoryboardUrl;
373
- declare const index_getThumbnailUrls: typeof getThumbnailUrls;
374
- declare const index_parseVTTCues: typeof parseVTTCues;
375
- declare const index_replaceCueText: typeof replaceCueText;
376
- declare const index_requestShotsForAsset: typeof requestShotsForAsset;
377
- declare const index_sanitizeUntrustedText: typeof sanitizeUntrustedText;
378
- declare const index_secondsToTimestamp: typeof secondsToTimestamp;
379
- declare const index_splitVttPreambleAndCueBlocks: typeof splitVttPreambleAndCueBlocks;
380
- declare const index_stripVttMetadataBlocks: typeof stripVttMetadataBlocks;
381
- declare const index_vttTimestampToSeconds: typeof vttTimestampToSeconds;
382
- declare const index_waitForShotsForAsset: typeof waitForShotsForAsset;
383
- declare namespace index {
384
- export { index_CompletedShotsResult as CompletedShotsResult, index_DEFAULT_STORYBOARD_WIDTH as DEFAULT_STORYBOARD_WIDTH, index_DeletedShotsResult as DeletedShotsResult, index_ErroredShotsResult as ErroredShotsResult, type index_HeatmapOptions as HeatmapOptions, type index_HeatmapResponse as HeatmapResponse, index_Hotspot as Hotspot, index_HotspotOptions as HotspotOptions, index_HotspotResponse as HotspotResponse, index_LOW_CONFIDENCE_THRESHOLD as LOW_CONFIDENCE_THRESHOLD, index_MAX_CUE_TEXT_CHARS as MAX_CUE_TEXT_CHARS, index_PendingShotsResult as PendingShotsResult, index_Shot as Shot, index_ShotRequestOptions as ShotRequestOptions, index_ShotsResult as ShotsResult, index_SkippedShotsResult as SkippedShotsResult, type index_ThumbnailOptions as ThumbnailOptions, type index_TranscriptFetchOptions as TranscriptFetchOptions, type index_TranscriptResult as TranscriptResult, type index_VTTCue as VTTCue, type index_VTTCueBudgetChunkingOptions as VTTCueBudgetChunkingOptions, type index_VTTDurationChunk as VTTDurationChunk, type index_VTTDurationChunkingOptions as VTTDurationChunkingOptions, index_WaitForShotsOptions as WaitForShotsOptions, index_buildTranscriptUrl as buildTranscriptUrl, index_buildVttFromCueBlocks as buildVttFromCueBlocks, index_buildVttFromTranslatedCueBlocks as buildVttFromTranslatedCueBlocks, index_chunkByTokens as chunkByTokens, index_chunkText as chunkText, index_chunkVTTCues as chunkVTTCues, index_chunkVTTCuesByBudget as chunkVTTCuesByBudget, index_chunkVTTCuesByDuration as chunkVTTCuesByDuration, index_concatenateVttSegments as concatenateVttSegments, index_estimateTokenCount as estimateTokenCount, index_extractTextFromVTT as extractTextFromVTT, index_extractTimestampedTranscript as extractTimestampedTranscript, index_fetchTranscriptForAsset as fetchTranscriptForAsset, index_filterVttByScope as filterVttByScope, index_findCaptionTrack as findCaptionTrack, index_getHeatmapForAsset as getHeatmapForAsset, index_getHeatmapForPlaybackId as getHeatmapForPlaybackId, index_getHeatmapForVideo as getHeatmapForVideo, index_getHotspotsForAsset as getHotspotsForAsset, index_getHotspotsForPlaybackId as getHotspotsForPlaybackId, index_getHotspotsForVideo as getHotspotsForVideo, index_getReadyTextTracks as getReadyTextTracks, index_getReliableLanguageCode as getReliableLanguageCode, index_getShotsForAsset as getShotsForAsset, index_getStoryboardUrl as getStoryboardUrl, index_getThumbnailUrls as getThumbnailUrls, index_parseVTTCues as parseVTTCues, index_replaceCueText as replaceCueText, index_requestShotsForAsset as requestShotsForAsset, index_sanitizeUntrustedText as sanitizeUntrustedText, index_secondsToTimestamp as secondsToTimestamp, index_splitVttPreambleAndCueBlocks as splitVttPreambleAndCueBlocks, index_stripVttMetadataBlocks as stripVttMetadataBlocks, index_vttTimestampToSeconds as vttTimestampToSeconds, index_waitForShotsForAsset as waitForShotsForAsset };
385
- }
386
-
387
- export { getReliableLanguageCode as A, getStoryboardUrl as B, getThumbnailUrls as C, DEFAULT_STORYBOARD_WIDTH as D, parseVTTCues as E, replaceCueText as F, sanitizeUntrustedText as G, type HeatmapOptions as H, secondsToTimestamp as I, splitVttPreambleAndCueBlocks as J, stripVttMetadataBlocks as K, LOW_CONFIDENCE_THRESHOLD as L, MAX_CUE_TEXT_CHARS as M, vttTimestampToSeconds as N, type ThumbnailOptions as T, type VTTCue as V, type HeatmapResponse as a, type TranscriptFetchOptions as b, type TranscriptResult as c, type VTTCueBudgetChunkingOptions as d, type VTTDurationChunk as e, type VTTDurationChunkingOptions as f, buildTranscriptUrl as g, buildVttFromCueBlocks as h, index as i, buildVttFromTranslatedCueBlocks as j, chunkByTokens as k, chunkText as l, chunkVTTCues as m, chunkVTTCuesByBudget as n, chunkVTTCuesByDuration as o, concatenateVttSegments as p, estimateTokenCount as q, extractTextFromVTT as r, extractTimestampedTranscript as s, fetchTranscriptForAsset as t, filterVttByScope as u, findCaptionTrack as v, getHeatmapForAsset as w, getHeatmapForPlaybackId as x, getHeatmapForVideo as y, getReadyTextTracks as z };