@munsonlabs/video-player 0.1.5 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/README.md +184 -21
  2. package/dist/chunks/ads-msms49DK.mjs +1 -0
  3. package/dist/chunks/brightcove-CIqE1989.mjs +1 -0
  4. package/dist/chunks/constants-DRD0PsRw.mjs +1 -0
  5. package/dist/chunks/dailymotion-wD02TK0C.mjs +1 -0
  6. package/dist/chunks/embedShared-B1B7ZH_3.mjs +1 -0
  7. package/dist/chunks/jwplayer-Dv826deA.mjs +1 -0
  8. package/dist/chunks/loadScript-Du6JsTc2.mjs +1 -0
  9. package/dist/chunks/prebid-RHDT0DOX.mjs +1 -0
  10. package/dist/chunks/sourceHelpers-DlkCZiTJ.mjs +1 -0
  11. package/dist/chunks/vimeo-SrHhodcx.mjs +1 -0
  12. package/dist/chunks/youtube-Boz9Goek.mjs +1 -0
  13. package/dist/elements/chunks/ads-msms49DK.mjs +1 -0
  14. package/dist/elements/chunks/brightcove-CIqE1989.mjs +1 -0
  15. package/dist/elements/chunks/constants-DRD0PsRw.mjs +1 -0
  16. package/dist/elements/chunks/dailymotion-wD02TK0C.mjs +1 -0
  17. package/dist/elements/chunks/embedShared-B1B7ZH_3.mjs +1 -0
  18. package/dist/elements/chunks/jwplayer-Dv826deA.mjs +1 -0
  19. package/dist/elements/chunks/loadScript-Du6JsTc2.mjs +1 -0
  20. package/dist/elements/chunks/prebid-RHDT0DOX.mjs +1 -0
  21. package/dist/elements/chunks/sourceHelpers-DlkCZiTJ.mjs +1 -0
  22. package/dist/elements/chunks/vimeo-SrHhodcx.mjs +1 -0
  23. package/dist/elements/chunks/youtube-Boz9Goek.mjs +1 -0
  24. package/dist/elements/controls.css +1 -1
  25. package/dist/elements/controls.d.mts +28 -49
  26. package/dist/elements/controls.mjs +1 -1
  27. package/dist/elements/core.css +1 -1
  28. package/dist/elements/core.d.mts +106 -5
  29. package/dist/elements/core.mjs +1 -5
  30. package/dist/elements/index.d.mts +119 -52
  31. package/dist/elements/index.mjs +1 -5
  32. package/dist/elements/style.css +1 -1
  33. package/dist/index.d.mts +299 -283
  34. package/dist/index.mjs +1 -5
  35. package/dist/style.css +1 -1
  36. package/package.json +3 -2
package/dist/index.d.mts CHANGED
@@ -1,5 +1,23 @@
1
- import { ComputedRef, InjectionKey, Plugin, Ref, UnwrapNestedRefs } from "vue";
1
+ import { ComputedRef, Plugin, Ref, UnwrapNestedRefs } from "vue";
2
+ //#region src/composables/player/emitter.d.ts
3
+ type PlaybackListener = (...args: unknown[]) => void;
4
+ //#endregion
5
+ //#region src/adapters/embeds/embedShared.d.ts
6
+ interface EmbedAdapterOptions {
7
+ src: string;
8
+ poster?: string;
9
+ autoplay?: boolean;
10
+ muted?: boolean;
11
+ volume?: number;
12
+ nativeUi?: boolean;
13
+ customVars?: Record<string, unknown>;
14
+ }
15
+ //#endregion
2
16
  //#region src/types/playback.d.ts
17
+ interface MediaErrorLike {
18
+ code: number;
19
+ message: string;
20
+ }
3
21
  interface CaptionTrackInfo {
4
22
  index: number;
5
23
  label: string;
@@ -11,8 +29,64 @@ interface QualityLevelInfo {
11
29
  bitrate: number;
12
30
  label: string;
13
31
  }
32
+ interface PlaybackAdapter {
33
+ readonly el: HTMLElement;
34
+ play(): void | Promise<void>;
35
+ pause(): void;
36
+ paused(): boolean;
37
+ currentTime(): number;
38
+ setCurrentTime(seconds: number): void;
39
+ duration(): number;
40
+ volume(): number;
41
+ setVolume(vol: number): void;
42
+ muted(): boolean;
43
+ setMuted(muted: boolean): void;
44
+ playbackRate(): number;
45
+ setPlaybackRate(rate: number): void;
46
+ bufferedEnd(): number;
47
+ error(): MediaErrorLike | null;
48
+ setSrc(src: string, type?: string): void;
49
+ supportsPlaybackRate(): boolean;
50
+ supportsCaptions(): boolean;
51
+ getCaptionTracks(): CaptionTrackInfo[];
52
+ setCaptionTrack(index: number | null): void;
53
+ getActiveCaptionTrack(): number | null;
54
+ supportsQuality(): boolean;
55
+ getQualityLevels(): QualityLevelInfo[];
56
+ getCurrentQuality(): number | null;
57
+ isAutoQuality(): boolean;
58
+ setQuality(index: number | null): void;
59
+ supportsPip(): boolean;
60
+ isPipActive(): boolean;
61
+ togglePip(): void;
62
+ enterFullscreen(): void;
63
+ exitFullscreen(): void;
64
+ on(event: string | string[], listener: PlaybackListener): void;
65
+ off(event: string, listener: PlaybackListener): void;
66
+ dispose(): void;
67
+ }
68
+ interface ResolvedSource {
69
+ src: string;
70
+ type?: string;
71
+ poster?: string | null;
72
+ adTagUrl?: string | null;
73
+ }
74
+ interface Matcher {
75
+ test: (src: string) => boolean;
76
+ key: string;
77
+ embed: boolean;
78
+ }
79
+ type EmbedAdapterFactory = (videoEl: HTMLVideoElement, options: EmbedAdapterOptions) => PlaybackAdapter;
80
+ type SourceResolver = (url: string) => ResolvedSource | Promise<ResolvedSource>;
81
+ type PlatformConfig = Pick<Matcher, 'key' | 'test'> & ({
82
+ embed: true;
83
+ createAdapter: EmbedAdapterFactory;
84
+ } | {
85
+ embed: false;
86
+ resolveSource?: SourceResolver;
87
+ });
14
88
  //#endregion
15
- //#region src/types.d.ts
89
+ //#region src/types/player.d.ts
16
90
  type BuiltinAction = 'mute' | 'loop' | 'autoplay';
17
91
  interface CustomAction {
18
92
  icon: string;
@@ -20,7 +94,7 @@ interface CustomAction {
20
94
  onClick: () => void;
21
95
  }
22
96
  type PlayerAction = BuiltinAction | CustomAction;
23
- type StateChangeType = 'play' | 'pause' | 'ended' | 'seeked' | 'error' | 'adstart' | 'adend' | 'volumechange' | 'ratechange' | 'captionchange' | 'qualitychange' | 'pipchange' | 'loopchange' | 'firstQuartile' | 'midpoint' | 'thirdQuartile' | 'controlsopen' | 'controlsclose' | 'bufferstart' | 'bufferend' | 'timeupdate' | 'tap';
97
+ type StateChangeType = 'play' | 'pause' | 'ended' | 'seeked' | 'error' | 'adstart' | 'adend' | 'volumechange' | 'ratechange' | 'captionchange' | 'qualitychange' | 'pipchange' | 'loopchange' | 'firstQuartile' | 'midpoint' | 'thirdQuartile' | 'controlsopen' | 'controlsclose' | 'stageopen' | 'stageclose' | 'bufferstart' | 'bufferend' | 'timeupdate' | 'tap';
24
98
  interface StateChangeEvent {
25
99
  type: StateChangeType;
26
100
  currentTime: number;
@@ -72,17 +146,19 @@ interface PlayerProps {
72
146
  tracks?: CaptionTrackDef[];
73
147
  autoplay?: boolean;
74
148
  muted?: boolean;
149
+ volume?: number;
75
150
  playbackRate?: number;
76
151
  nativeUi?: boolean;
77
152
  autoStage?: boolean;
78
153
  lazy?: boolean;
79
- payload?: Record<string, unknown>;
154
+ payload?: Record<string, unknown> | string;
80
155
  action?: PlayerAction | null;
81
156
  disableTapCapture?: boolean;
82
157
  controls?: boolean;
83
158
  playWhenInView?: boolean;
159
+ pinPosition?: PinCorner;
84
160
  }
85
- type VideoSelectDetail = PlayerProps;
161
+ type PinCorner = 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
86
162
  interface VideoStateDetail {
87
163
  currentVideoUrl: string | null;
88
164
  isPlaying: boolean;
@@ -91,6 +167,14 @@ interface VideoToggleDetail {
91
167
  videoUrl: string;
92
168
  }
93
169
  type VideoEntry = PlayerProps;
170
+ interface VideoSelectDetail extends VideoEntry {
171
+ fromGesture?: boolean;
172
+ }
173
+ interface TranscriptCue {
174
+ time: number;
175
+ end?: number;
176
+ text: string;
177
+ }
94
178
  interface PlayerHandle {
95
179
  isPlaying: boolean;
96
180
  togglePlay(): void;
@@ -125,73 +209,116 @@ interface PlayerHandle {
125
209
  isAutoQuality: boolean;
126
210
  setQuality(index: number | null): void;
127
211
  supportsPlaybackRate: boolean;
128
- playbackRate: number;
212
+ currentPlaybackRate: number;
129
213
  setPlaybackRate(rate: number): void;
130
214
  }
131
215
  //#endregion
132
- //#region src/components/VideoPlayer.vue.d.ts
133
- type __VLS_Props$13 = PlayerProps & {
134
- hasPlaylist?: boolean;
135
- hasNext?: boolean;
136
- hasPrevious?: boolean;
137
- autoAdvance?: boolean;
138
- };
139
- declare const __VLS_export$15: import("vue").DefineComponent<__VLS_Props$13, {
140
- isPlaying: boolean;
141
- hasEnded: boolean;
142
- isReady: boolean;
143
- isAdPlaying: boolean;
144
- isAdPaused: boolean;
145
- isAdMuted: boolean;
146
- adRemainingTime: number;
147
- isLive: boolean;
148
- isBuffering: boolean;
149
- current: number;
150
- total: number;
151
- vol: number;
152
- isMuted: boolean;
153
- isAudible: boolean;
154
- isLooping: boolean;
155
- playbackRate: number;
156
- hasStarted: boolean;
157
- isError: boolean;
158
- errorMessage: string;
159
- progress: number;
160
- bufferedDisplay: number;
161
- isFullscreen: boolean;
162
- isFullscreenPending: boolean;
216
+ //#region src/composables/player/usePlayer.d.ts
217
+ interface UsePlayerReturn {
218
+ isPlaying: Ref<boolean>;
219
+ hasEnded: Ref<boolean>;
220
+ isReady: Ref<boolean>;
221
+ isLive: Ref<boolean>;
222
+ isBuffering: Ref<boolean>;
223
+ current: Ref<number>;
224
+ total: Ref<number>;
225
+ progress: ComputedRef<number>;
226
+ bufferedDisplay: ComputedRef<number>;
227
+ hasStarted: Ref<boolean>;
228
+ isError: Ref<boolean>;
229
+ errorMessage: Ref<string>;
163
230
  fmt: (s: number) => string;
164
231
  fire: (type: StateChangeType, extras?: Partial<StateChangeEvent>) => void;
165
232
  retry: () => void;
166
233
  togglePlay: () => void;
167
234
  seek: (val: number) => void;
235
+ isAdPlaying: Ref<boolean>;
236
+ isAdPaused: Ref<boolean>;
237
+ isAdMuted: Ref<boolean>;
238
+ adRemainingTime: Ref<number>;
239
+ toggleAdMute: () => void;
240
+ vol: Ref<number>;
241
+ isMuted: Ref<boolean>;
242
+ isAudible: ComputedRef<boolean>;
168
243
  toggleMute: () => void;
169
244
  setVolume: (val: number) => void;
170
- toggleFullscreen: () => void;
171
- markFullscreenPending: () => void;
245
+ isLooping: Ref<boolean>;
172
246
  toggleLoop: () => void;
173
- toggleAdMute: () => void;
247
+ currentPlaybackRate: Ref<number>;
174
248
  setPlaybackRate: (rate: number) => void;
175
- supportsPlaybackRate: boolean;
176
- supportsCaptions: boolean;
177
- captionTracks: CaptionTrackInfo[];
178
- activeCaptionIndex: number | null;
249
+ supportsPlaybackRate: Ref<boolean>;
250
+ isFullscreen: Ref<boolean>;
251
+ isFullscreenPending: Ref<boolean>;
252
+ toggleFullscreen: () => void;
253
+ markFullscreenPending: () => void;
254
+ supportsCaptions: Ref<boolean>;
255
+ captionTracks: Ref<CaptionTrackInfo[]>;
256
+ activeCaptionIndex: Ref<number | null>;
179
257
  setCaptionTrack: (index: number | null) => void;
180
- supportsQuality: boolean;
181
- qualityLevels: QualityLevelInfo[];
182
- currentQualityIndex: number | null;
183
- isAutoQuality: boolean;
258
+ supportsQuality: Ref<boolean>;
259
+ qualityLevels: Ref<QualityLevelInfo[]>;
260
+ currentQualityIndex: Ref<number | null>;
261
+ isAutoQuality: Ref<boolean>;
184
262
  setQuality: (index: number | null) => void;
185
- supportsPip: boolean;
186
- isPipActive: boolean;
263
+ supportsPip: Ref<boolean>;
264
+ isPipActive: Ref<boolean>;
187
265
  togglePip: () => void;
188
- nativeUi: boolean;
189
- }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
266
+ isNativeUi: Ref<boolean>;
267
+ }
268
+ //#endregion
269
+ //#region src/composables/overlay/useHud.d.ts
270
+ interface UseHudReturn {
271
+ showHUD: Ref<boolean>;
272
+ isOpen: Ref<boolean>;
273
+ scheduleHide: (delay?: number) => void;
274
+ pauseHide: () => void;
275
+ onVideoTap: () => void;
276
+ onMouseMove: () => void;
277
+ onMouseLeave: () => void;
278
+ openControls: () => void;
279
+ closeControls: () => void;
280
+ keepOpen: () => void;
281
+ suppressMouseLeave: (ms?: number) => void;
282
+ }
283
+ //#endregion
284
+ //#region src/composables/player/playerContext.d.ts
285
+ type PlayerContext = UnwrapNestedRefs<UsePlayerReturn>;
286
+ type HudContext = UnwrapNestedRefs<UseHudReturn>;
287
+ interface PlaylistContext {
288
+ hasPlaylist: boolean;
289
+ hasNext: boolean;
290
+ hasPrevious: boolean;
291
+ autoAdvance: boolean;
292
+ playNext: () => void;
293
+ playPrevious: () => void;
294
+ toggleAutoAdvance: () => void;
295
+ }
296
+ //#endregion
297
+ //#region src/composables/useForwardedPlayer.d.ts
298
+ declare const METHOD_KEYS: readonly ["retry", "togglePlay", "seek", "toggleMute", "setVolume", "toggleFullscreen", "markFullscreenPending", "toggleLoop", "toggleAdMute", "setPlaybackRate", "setCaptionTrack", "setQuality", "togglePip"];
299
+ declare const STATE_KEYS: readonly ["isPlaying", "hasEnded", "isReady", "isAdPlaying", "isAdPaused", "isAdMuted", "adRemainingTime", "isLive", "isBuffering", "current", "total", "vol", "isMuted", "isAudible", "isLooping", "currentPlaybackRate", "hasStarted", "isError", "errorMessage", "progress", "bufferedDisplay", "isFullscreen", "isFullscreenPending", "supportsPlaybackRate", "supportsCaptions", "captionTracks", "activeCaptionIndex", "supportsQuality", "qualityLevels", "currentQualityIndex", "isAutoQuality", "supportsPip", "isPipActive", "isNativeUi"];
300
+ type MethodKey = (typeof METHOD_KEYS)[number];
301
+ type StateKey = (typeof STATE_KEYS)[number];
302
+ type ForwardedPlayer = { [K in MethodKey]: (...args: Parameters<PlayerContext[K]>) => Promise<void>; } & { [K in StateKey]: ComputedRef<PlayerContext[K]>; };
303
+ interface UseForwardedPlayerReturn {
304
+ playerRef: Ref<PlayerContext | null>;
305
+ forwarded: ForwardedPlayer;
306
+ }
307
+ declare function useForwardedPlayer(guard?: (key: MethodKey) => boolean | Promise<boolean>): UseForwardedPlayerReturn;
308
+ //#endregion
309
+ //#region src/components/VideoPlayer.vue.d.ts
310
+ type __VLS_Props$2 = PlayerProps & {
311
+ hasPlaylist?: boolean;
312
+ hasNext?: boolean;
313
+ hasPrevious?: boolean;
314
+ autoAdvance?: boolean;
315
+ };
316
+ declare const __VLS_export$17: import("vue").DefineComponent<__VLS_Props$2, ForwardedPlayer, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
190
317
  "state-change": (event: StateChangeEvent) => any;
191
318
  "play-next": () => any;
192
319
  "play-previous": () => any;
193
320
  "toggle-auto-advance": () => any;
194
- }, string, import("vue").PublicProps, Readonly<__VLS_Props$13> & Readonly<{
321
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props$2> & Readonly<{
195
322
  "onState-change"?: ((event: StateChangeEvent) => any) | undefined;
196
323
  "onPlay-next"?: (() => any) | undefined;
197
324
  "onPlay-previous"?: (() => any) | undefined;
@@ -207,7 +334,7 @@ declare const __VLS_export$15: import("vue").DefineComponent<__VLS_Props$13, {
207
334
  nativeUi: boolean;
208
335
  autoStage: boolean;
209
336
  lazy: boolean;
210
- payload: Record<string, unknown>;
337
+ payload: Record<string, unknown> | string;
211
338
  action: PlayerAction | null;
212
339
  disableTapCapture: boolean;
213
340
  controls: boolean;
@@ -217,16 +344,19 @@ declare const __VLS_export$15: import("vue").DefineComponent<__VLS_Props$13, {
217
344
  hasPrevious: boolean;
218
345
  autoAdvance: boolean;
219
346
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
220
- declare const _default$13: typeof __VLS_export$15;
347
+ declare const _default$15: typeof __VLS_export$17;
221
348
  //#endregion
222
349
  //#region src/components/VideoStage.vue.d.ts
223
- type __VLS_Props$12 = {
350
+ type __VLS_Props$1 = {
224
351
  pinPosition?: 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left' | 'full-width';
225
352
  playlist?: VideoEntry[];
226
353
  };
227
- declare function playNext(): void;
228
- declare function playPrevious(): void;
229
- declare const __VLS_export$14: import("vue").DefineComponent<__VLS_Props$12, {
354
+ declare function playNext(fromGesture?: boolean): void;
355
+ declare function playPrevious(fromGesture?: boolean): void;
356
+ declare const __VLS_export$16: import("vue").DefineComponent<__VLS_Props$1, {
357
+ setCaptionTrack: (index: number | null) => Promise<void>;
358
+ setQuality: (index: number | null) => Promise<void>;
359
+ togglePip: () => Promise<void>;
230
360
  retry: () => Promise<void>;
231
361
  togglePlay: () => Promise<void>;
232
362
  seek: (val: number) => Promise<void>;
@@ -237,11 +367,11 @@ declare const __VLS_export$14: import("vue").DefineComponent<__VLS_Props$12, {
237
367
  toggleLoop: () => Promise<void>;
238
368
  toggleAdMute: () => Promise<void>;
239
369
  setPlaybackRate: (rate: number) => Promise<void>;
240
- setCaptionTrack: (index: number | null) => Promise<void>;
241
- setQuality: (index: number | null) => Promise<void>;
242
- togglePip: () => Promise<void>;
243
- playbackRate: import("vue").ComputedRef<number>;
244
- nativeUi: import("vue").ComputedRef<boolean>;
370
+ supportsCaptions: import("vue").ComputedRef<boolean>;
371
+ supportsQuality: import("vue").ComputedRef<boolean>;
372
+ isAutoQuality: import("vue").ComputedRef<boolean>;
373
+ supportsPip: import("vue").ComputedRef<boolean>;
374
+ isPipActive: import("vue").ComputedRef<boolean>;
245
375
  isPlaying: import("vue").ComputedRef<boolean>;
246
376
  hasEnded: import("vue").ComputedRef<boolean>;
247
377
  isReady: import("vue").ComputedRef<boolean>;
@@ -257,6 +387,7 @@ declare const __VLS_export$14: import("vue").DefineComponent<__VLS_Props$12, {
257
387
  isMuted: import("vue").ComputedRef<boolean>;
258
388
  isAudible: import("vue").ComputedRef<boolean>;
259
389
  isLooping: import("vue").ComputedRef<boolean>;
390
+ currentPlaybackRate: import("vue").ComputedRef<number>;
260
391
  hasStarted: import("vue").ComputedRef<boolean>;
261
392
  isError: import("vue").ComputedRef<boolean>;
262
393
  errorMessage: import("vue").ComputedRef<string>;
@@ -265,32 +396,28 @@ declare const __VLS_export$14: import("vue").DefineComponent<__VLS_Props$12, {
265
396
  isFullscreen: import("vue").ComputedRef<boolean>;
266
397
  isFullscreenPending: import("vue").ComputedRef<boolean>;
267
398
  supportsPlaybackRate: import("vue").ComputedRef<boolean>;
268
- supportsCaptions: import("vue").ComputedRef<boolean>;
269
399
  captionTracks: import("vue").ComputedRef<CaptionTrackInfo[]>;
270
400
  activeCaptionIndex: import("vue").ComputedRef<number | null>;
271
- supportsQuality: import("vue").ComputedRef<boolean>;
272
401
  qualityLevels: import("vue").ComputedRef<QualityLevelInfo[]>;
273
402
  currentQualityIndex: import("vue").ComputedRef<number | null>;
274
- isAutoQuality: import("vue").ComputedRef<boolean>;
275
- supportsPip: import("vue").ComputedRef<boolean>;
276
- isPipActive: import("vue").ComputedRef<boolean>;
403
+ isNativeUi: import("vue").ComputedRef<boolean>;
277
404
  playNext: typeof playNext;
278
405
  playPrevious: typeof playPrevious;
279
406
  hasNext: import("vue").ComputedRef<boolean>;
280
407
  hasPrevious: import("vue").ComputedRef<boolean>;
281
408
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
282
409
  "state-change": (event: StateChangeEvent) => any;
283
- }, string, import("vue").PublicProps, Readonly<__VLS_Props$12> & Readonly<{
410
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props$1> & Readonly<{
284
411
  "onState-change"?: ((event: StateChangeEvent) => any) | undefined;
285
412
  }>, {
286
413
  pinPosition: "bottom-right" | "bottom-left" | "top-right" | "top-left" | "full-width";
287
414
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
288
- declare const _default$14: typeof __VLS_export$14;
415
+ declare const _default$16: typeof __VLS_export$16;
289
416
  //#endregion
290
417
  //#region src/components/VideoPlaceholder.vue.d.ts
291
- declare const __VLS_export$13: import("vue").DefineComponent<PlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
418
+ declare const __VLS_export$15: import("vue").DefineComponent<VideoSelectDetail, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
292
419
  "enter-view": () => any;
293
- }, string, import("vue").PublicProps, Readonly<PlayerProps> & Readonly<{
420
+ }, string, import("vue").PublicProps, Readonly<VideoSelectDetail> & Readonly<{
294
421
  "onEnter-view"?: (() => any) | undefined;
295
422
  }>, {
296
423
  title: string;
@@ -301,114 +428,15 @@ declare const __VLS_export$13: import("vue").DefineComponent<PlayerProps, {}, {}
301
428
  muted: boolean;
302
429
  nativeUi: boolean;
303
430
  autoStage: boolean;
304
- payload: Record<string, unknown>;
431
+ payload: Record<string, unknown> | string;
305
432
  action: PlayerAction | null;
306
433
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
307
- declare const _default$12: typeof __VLS_export$13;
308
- //#endregion
309
- //#region src/composables/player/usePlayer.d.ts
310
- interface UsePlayerReturn {
311
- isPlaying: Ref<boolean>;
312
- hasEnded: Ref<boolean>;
313
- isReady: Ref<boolean>;
314
- isAdPlaying: Ref<boolean>;
315
- isAdPaused: Ref<boolean>;
316
- isAdMuted: Ref<boolean>;
317
- adRemainingTime: Ref<number>;
318
- isLive: Ref<boolean>;
319
- isBuffering: Ref<boolean>;
320
- current: Ref<number>;
321
- total: Ref<number>;
322
- vol: Ref<number>;
323
- isMuted: Ref<boolean>;
324
- isAudible: ComputedRef<boolean>;
325
- isLooping: Ref<boolean>;
326
- playbackRate: Ref<number>;
327
- hasStarted: Ref<boolean>;
328
- isError: Ref<boolean>;
329
- errorMessage: Ref<string>;
330
- progress: ComputedRef<number>;
331
- bufferedDisplay: ComputedRef<number>;
332
- isFullscreen: Ref<boolean>;
333
- isFullscreenPending: Ref<boolean>;
334
- fmt: (s: number) => string;
335
- fire: (type: StateChangeType, extras?: Partial<StateChangeEvent>) => void;
336
- retry: () => void;
337
- togglePlay: () => void;
338
- seek: (val: number) => void;
339
- toggleMute: () => void;
340
- setVolume: (val: number) => void;
341
- toggleFullscreen: () => void;
342
- markFullscreenPending: () => void;
343
- toggleLoop: () => void;
344
- toggleAdMute: () => void;
345
- setPlaybackRate: (rate: number) => void;
346
- supportsPlaybackRate: Ref<boolean>;
347
- supportsCaptions: Ref<boolean>;
348
- captionTracks: Ref<CaptionTrackInfo[]>;
349
- activeCaptionIndex: Ref<number | null>;
350
- setCaptionTrack: (index: number | null) => void;
351
- supportsQuality: Ref<boolean>;
352
- qualityLevels: Ref<QualityLevelInfo[]>;
353
- currentQualityIndex: Ref<number | null>;
354
- isAutoQuality: Ref<boolean>;
355
- setQuality: (index: number | null) => void;
356
- supportsPip: Ref<boolean>;
357
- isPipActive: Ref<boolean>;
358
- togglePip: () => void;
359
- nativeUi: Ref<boolean>;
360
- }
361
- //#endregion
362
- //#region src/composables/overlay/useHud.d.ts
363
- interface UseHudReturn {
364
- showHUD: Ref<boolean>;
365
- isOpen: Ref<boolean>;
366
- scheduleHide: (delay?: number) => void;
367
- pauseHide: () => void;
368
- onVideoTap: () => void;
369
- onMouseMove: () => void;
370
- onMouseLeave: () => void;
371
- openControls: () => void;
372
- closeControls: () => void;
373
- keepOpen: () => void;
374
- suppressMouseLeave: (ms?: number) => void;
375
- }
376
- //#endregion
377
- //#region src/composables/playerContext.d.ts
378
- type PlayerContext = UnwrapNestedRefs<UsePlayerReturn>;
379
- type HudContext = UnwrapNestedRefs<UseHudReturn>;
380
- declare const PlayerKey: InjectionKey<PlayerContext>;
381
- declare const HudKey: InjectionKey<HudContext>;
382
- declare const ActionKey: InjectionKey<Ref<PlayerAction | null | undefined>>;
383
- declare const CompactKey: InjectionKey<Ref<boolean>>;
384
- interface PlaylistContext {
385
- hasPlaylist: boolean;
386
- hasNext: boolean;
387
- hasPrevious: boolean;
388
- autoAdvance: boolean;
389
- playNext: () => void;
390
- playPrevious: () => void;
391
- toggleAutoAdvance: () => void;
392
- }
393
- declare const PlaylistKey: InjectionKey<PlaylistContext>;
394
- declare function injectStrict<T>(key: InjectionKey<T>): T;
395
- //#endregion
396
- //#region src/composables/useForwardedPlayer.d.ts
397
- declare const METHOD_KEYS: readonly ["retry", "togglePlay", "seek", "toggleMute", "setVolume", "toggleFullscreen", "markFullscreenPending", "toggleLoop", "toggleAdMute", "setPlaybackRate", "setCaptionTrack", "setQuality", "togglePip"];
398
- declare const STATE_KEYS: readonly ["isPlaying", "hasEnded", "isReady", "isAdPlaying", "isAdPaused", "isAdMuted", "adRemainingTime", "isLive", "isBuffering", "current", "total", "vol", "isMuted", "isAudible", "isLooping", "playbackRate", "hasStarted", "isError", "errorMessage", "progress", "bufferedDisplay", "isFullscreen", "isFullscreenPending", "supportsPlaybackRate", "supportsCaptions", "captionTracks", "activeCaptionIndex", "supportsQuality", "qualityLevels", "currentQualityIndex", "isAutoQuality", "supportsPip", "isPipActive", "nativeUi"];
399
- type MethodKey = (typeof METHOD_KEYS)[number];
400
- type StateKey = (typeof STATE_KEYS)[number];
401
- type ForwardedPlayer = { [K in MethodKey]: (...args: Parameters<PlayerContext[K]>) => Promise<void>; } & { [K in StateKey]: ComputedRef<PlayerContext[K]>; };
402
- interface UseForwardedPlayerReturn {
403
- playerRef: Ref<PlayerContext | null>;
404
- forwarded: ForwardedPlayer;
405
- }
406
- declare function useForwardedPlayer(guard?: (key: MethodKey) => boolean | Promise<boolean>): UseForwardedPlayerReturn;
434
+ declare const _default$14: typeof __VLS_export$15;
407
435
  //#endregion
408
436
  //#region src/components/VideoItem.vue.d.ts
409
- declare const __VLS_export$12: import("vue").DefineComponent<PlayerProps, ForwardedPlayer, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
437
+ declare const __VLS_export$14: import("vue").DefineComponent<VideoSelectDetail, ForwardedPlayer, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
410
438
  "state-change": (event: StateChangeEvent) => any;
411
- }, string, import("vue").PublicProps, Readonly<PlayerProps> & Readonly<{
439
+ }, string, import("vue").PublicProps, Readonly<VideoSelectDetail> & Readonly<{
412
440
  "onState-change"?: ((event: StateChangeEvent) => any) | undefined;
413
441
  }>, {
414
442
  muted: boolean;
@@ -416,188 +444,180 @@ declare const __VLS_export$12: import("vue").DefineComponent<PlayerProps, Forwar
416
444
  action: PlayerAction | null;
417
445
  controls: boolean;
418
446
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
419
- declare const _default$11: typeof __VLS_export$12;
447
+ declare const _default$13: typeof __VLS_export$14;
420
448
  //#endregion
421
- //#region src/components/controls/Scrubber.vue.d.ts
422
- type __VLS_Props$11 = {
449
+ //#region src/components/HideMarker.vue.d.ts
450
+ declare const __VLS_export$13: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
451
+ declare const _default$3: typeof __VLS_export$13;
452
+ //#endregion
453
+ //#region src/composables/controls/useResolvedPlayer.d.ts
454
+ interface ResolvedPlayerProps {
423
455
  player?: PlayerHandle | null;
424
456
  for?: string;
425
- };
426
- declare var __VLS_1$11: {
457
+ }
458
+ //#endregion
459
+ //#region src/components/controls/Scrubber.vue.d.ts
460
+ declare var __VLS_1$12: {
427
461
  scrubbing: boolean;
428
462
  percent: number;
429
463
  previewSeconds: number;
430
464
  formatTime: (seconds: number) => string;
431
465
  };
432
- type __VLS_Slots$11 = {} & {
433
- preview?: (props: typeof __VLS_1$11) => any;
466
+ type __VLS_Slots$12 = {} & {
467
+ preview?: (props: typeof __VLS_1$12) => any;
434
468
  };
435
- declare const __VLS_base$11: import("vue").DefineComponent<__VLS_Props$11, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$11> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
436
- declare const __VLS_export$11: __VLS_WithSlots$11<typeof __VLS_base$11, __VLS_Slots$11>;
437
- declare const _default$9: typeof __VLS_export$11;
438
- type __VLS_WithSlots$11<T, S> = T & {
469
+ declare const __VLS_base$12: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
470
+ declare const __VLS_export$12: __VLS_WithSlots$12<typeof __VLS_base$12, __VLS_Slots$12>;
471
+ declare const _default$10: typeof __VLS_export$12;
472
+ type __VLS_WithSlots$12<T, S> = T & {
439
473
  new (): {
440
474
  $slots: S;
441
475
  };
442
476
  };
443
477
  //#endregion
444
478
  //#region src/components/controls/PlayButton.vue.d.ts
445
- type __VLS_Props$10 = {
446
- player?: PlayerHandle | null;
447
- for?: string;
448
- };
449
- declare var __VLS_1$10: {
479
+ declare var __VLS_1$11: {
450
480
  isPlaying: boolean;
451
481
  hasEnded: boolean;
452
482
  isError: boolean;
453
483
  };
484
+ type __VLS_Slots$11 = {} & {
485
+ default?: (props: typeof __VLS_1$11) => any;
486
+ };
487
+ declare const __VLS_base$11: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
488
+ declare const __VLS_export$11: __VLS_WithSlots$11<typeof __VLS_base$11, __VLS_Slots$11>;
489
+ declare const _default$7: typeof __VLS_export$11;
490
+ type __VLS_WithSlots$11<T, S> = T & {
491
+ new (): {
492
+ $slots: S;
493
+ };
494
+ };
495
+ //#endregion
496
+ //#region src/components/controls/MuteButton.vue.d.ts
497
+ declare var __VLS_1$10: {
498
+ isMuted: boolean;
499
+ };
454
500
  type __VLS_Slots$10 = {} & {
455
501
  default?: (props: typeof __VLS_1$10) => any;
456
502
  };
457
- declare const __VLS_base$10: import("vue").DefineComponent<__VLS_Props$10, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$10> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
503
+ declare const __VLS_base$10: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
458
504
  declare const __VLS_export$10: __VLS_WithSlots$10<typeof __VLS_base$10, __VLS_Slots$10>;
459
- declare const _default$6: typeof __VLS_export$10;
505
+ declare const _default$5: typeof __VLS_export$10;
460
506
  type __VLS_WithSlots$10<T, S> = T & {
461
507
  new (): {
462
508
  $slots: S;
463
509
  };
464
510
  };
465
511
  //#endregion
466
- //#region src/components/controls/MuteButton.vue.d.ts
467
- type __VLS_Props$9 = {
468
- player?: PlayerHandle | null;
469
- for?: string;
470
- };
512
+ //#region src/components/controls/FullscreenButton.vue.d.ts
471
513
  declare var __VLS_1$9: {
472
- isMuted: boolean;
514
+ isFullscreen: boolean;
473
515
  };
474
516
  type __VLS_Slots$9 = {} & {
475
517
  default?: (props: typeof __VLS_1$9) => any;
476
518
  };
477
- declare const __VLS_base$9: import("vue").DefineComponent<__VLS_Props$9, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$9> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
519
+ declare const __VLS_base$9: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
478
520
  declare const __VLS_export$9: __VLS_WithSlots$9<typeof __VLS_base$9, __VLS_Slots$9>;
479
- declare const _default$4: typeof __VLS_export$9;
521
+ declare const _default$2: typeof __VLS_export$9;
480
522
  type __VLS_WithSlots$9<T, S> = T & {
481
523
  new (): {
482
524
  $slots: S;
483
525
  };
484
526
  };
485
527
  //#endregion
486
- //#region src/components/controls/FullscreenButton.vue.d.ts
487
- type __VLS_Props$8 = {
488
- player?: PlayerHandle | null;
489
- for?: string;
490
- };
491
- declare var __VLS_1$8: {
492
- isFullscreen: boolean;
493
- };
528
+ //#region src/components/controls/Buffering.vue.d.ts
529
+ declare var __VLS_1$8: {};
494
530
  type __VLS_Slots$8 = {} & {
495
531
  default?: (props: typeof __VLS_1$8) => any;
496
532
  };
497
- declare const __VLS_base$8: import("vue").DefineComponent<__VLS_Props$8, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$8> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
533
+ declare const __VLS_base$8: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
498
534
  declare const __VLS_export$8: __VLS_WithSlots$8<typeof __VLS_base$8, __VLS_Slots$8>;
499
- declare const _default$2: typeof __VLS_export$8;
535
+ declare const _default: typeof __VLS_export$8;
500
536
  type __VLS_WithSlots$8<T, S> = T & {
501
537
  new (): {
502
538
  $slots: S;
503
539
  };
504
540
  };
505
541
  //#endregion
506
- //#region src/components/controls/Buffering.vue.d.ts
507
- type __VLS_Props$7 = {
508
- player?: PlayerHandle | null;
509
- for?: string;
542
+ //#region src/components/controls/LoopButton.vue.d.ts
543
+ declare var __VLS_1$7: {
544
+ isLooping: boolean;
510
545
  };
511
- declare var __VLS_1$7: {};
512
546
  type __VLS_Slots$7 = {} & {
513
547
  default?: (props: typeof __VLS_1$7) => any;
514
548
  };
515
- declare const __VLS_base$7: import("vue").DefineComponent<__VLS_Props$7, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$7> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
549
+ declare const __VLS_base$7: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
516
550
  declare const __VLS_export$7: __VLS_WithSlots$7<typeof __VLS_base$7, __VLS_Slots$7>;
517
- declare const _default: typeof __VLS_export$7;
551
+ declare const _default$4: typeof __VLS_export$7;
518
552
  type __VLS_WithSlots$7<T, S> = T & {
519
553
  new (): {
520
554
  $slots: S;
521
555
  };
522
556
  };
523
557
  //#endregion
524
- //#region src/components/controls/LoopButton.vue.d.ts
525
- type __VLS_Props$6 = {
526
- player?: PlayerHandle | null;
527
- for?: string;
528
- };
558
+ //#region src/components/controls/PipButton.vue.d.ts
529
559
  declare var __VLS_1$6: {
530
- isLooping: boolean;
560
+ isPipActive: boolean;
531
561
  };
532
562
  type __VLS_Slots$6 = {} & {
533
563
  default?: (props: typeof __VLS_1$6) => any;
534
564
  };
535
- declare const __VLS_base$6: import("vue").DefineComponent<__VLS_Props$6, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$6> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
565
+ declare const __VLS_base$6: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
536
566
  declare const __VLS_export$6: __VLS_WithSlots$6<typeof __VLS_base$6, __VLS_Slots$6>;
537
- declare const _default$3: typeof __VLS_export$6;
567
+ declare const _default$6: typeof __VLS_export$6;
538
568
  type __VLS_WithSlots$6<T, S> = T & {
539
569
  new (): {
540
570
  $slots: S;
541
571
  };
542
572
  };
543
573
  //#endregion
544
- //#region src/components/controls/PipButton.vue.d.ts
545
- type __VLS_Props$5 = {
546
- player?: PlayerHandle | null;
547
- for?: string;
548
- };
574
+ //#region src/components/controls/CaptionsButton.vue.d.ts
549
575
  declare var __VLS_1$5: {
550
- isPipActive: boolean;
576
+ currentLabel: string;
577
+ tracks: CaptionTrackInfo[];
578
+ activeIndex: number | null;
551
579
  };
552
580
  type __VLS_Slots$5 = {} & {
553
581
  default?: (props: typeof __VLS_1$5) => any;
554
582
  };
555
- declare const __VLS_base$5: import("vue").DefineComponent<__VLS_Props$5, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$5> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
583
+ declare const __VLS_base$5: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
556
584
  declare const __VLS_export$5: __VLS_WithSlots$5<typeof __VLS_base$5, __VLS_Slots$5>;
557
- declare const _default$5: typeof __VLS_export$5;
585
+ declare const _default$1: typeof __VLS_export$5;
558
586
  type __VLS_WithSlots$5<T, S> = T & {
559
587
  new (): {
560
588
  $slots: S;
561
589
  };
562
590
  };
563
591
  //#endregion
564
- //#region src/components/controls/CaptionsButton.vue.d.ts
565
- type __VLS_Props$4 = {
566
- player?: PlayerHandle | null;
567
- for?: string;
568
- };
592
+ //#region src/components/controls/QualityButton.vue.d.ts
569
593
  declare var __VLS_1$4: {
570
594
  currentLabel: string;
571
- tracks: CaptionTrackInfo[];
572
- activeIndex: number | null;
595
+ levels: QualityLevelInfo[];
596
+ currentIndex: number | null;
597
+ isAuto: boolean;
573
598
  };
574
599
  type __VLS_Slots$4 = {} & {
575
600
  default?: (props: typeof __VLS_1$4) => any;
576
601
  };
577
- declare const __VLS_base$4: import("vue").DefineComponent<__VLS_Props$4, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$4> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
602
+ declare const __VLS_base$4: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
578
603
  declare const __VLS_export$4: __VLS_WithSlots$4<typeof __VLS_base$4, __VLS_Slots$4>;
579
- declare const _default$1: typeof __VLS_export$4;
604
+ declare const _default$9: typeof __VLS_export$4;
580
605
  type __VLS_WithSlots$4<T, S> = T & {
581
606
  new (): {
582
607
  $slots: S;
583
608
  };
584
609
  };
585
610
  //#endregion
586
- //#region src/components/controls/QualityButton.vue.d.ts
587
- type __VLS_Props$3 = {
588
- player?: PlayerHandle | null;
589
- for?: string;
590
- };
611
+ //#region src/components/controls/PlaybackRateButton.vue.d.ts
591
612
  declare var __VLS_1$3: {
592
613
  currentLabel: string;
593
- levels: QualityLevelInfo[];
594
- currentIndex: number | null;
595
- isAuto: boolean;
614
+ rate: number;
615
+ rates: number[];
596
616
  };
597
617
  type __VLS_Slots$3 = {} & {
598
618
  default?: (props: typeof __VLS_1$3) => any;
599
619
  };
600
- declare const __VLS_base$3: import("vue").DefineComponent<__VLS_Props$3, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$3> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
620
+ declare const __VLS_base$3: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
601
621
  declare const __VLS_export$3: __VLS_WithSlots$3<typeof __VLS_base$3, __VLS_Slots$3>;
602
622
  declare const _default$8: typeof __VLS_export$3;
603
623
  type __VLS_WithSlots$3<T, S> = T & {
@@ -606,60 +626,52 @@ type __VLS_WithSlots$3<T, S> = T & {
606
626
  };
607
627
  };
608
628
  //#endregion
609
- //#region src/components/controls/PlaybackRateButton.vue.d.ts
610
- type __VLS_Props$2 = {
611
- player?: PlayerHandle | null;
612
- for?: string;
613
- };
629
+ //#region src/components/controls/VolumeSlider.vue.d.ts
614
630
  declare var __VLS_1$2: {
615
- currentLabel: string;
616
- rate: number;
617
- rates: number[];
631
+ percent: number;
618
632
  };
619
633
  type __VLS_Slots$2 = {} & {
620
634
  default?: (props: typeof __VLS_1$2) => any;
621
635
  };
622
- declare const __VLS_base$2: import("vue").DefineComponent<__VLS_Props$2, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$2> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
636
+ declare const __VLS_base$2: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
623
637
  declare const __VLS_export$2: __VLS_WithSlots$2<typeof __VLS_base$2, __VLS_Slots$2>;
624
- declare const _default$7: typeof __VLS_export$2;
638
+ declare const _default$17: typeof __VLS_export$2;
625
639
  type __VLS_WithSlots$2<T, S> = T & {
626
640
  new (): {
627
641
  $slots: S;
628
642
  };
629
643
  };
630
644
  //#endregion
631
- //#region src/components/controls/VolumeSlider.vue.d.ts
632
- type __VLS_Props$1 = {
633
- player?: PlayerHandle | null;
634
- for?: string;
635
- };
645
+ //#region src/utils/time.d.ts
646
+ declare function fmtTime(s: number, round?: boolean): string;
647
+ //#endregion
648
+ //#region src/components/controls/TimeDisplay.vue.d.ts
636
649
  declare var __VLS_1$1: {
637
- percent: number;
650
+ isLive: boolean;
651
+ current: number;
652
+ total: number;
653
+ formatTime: typeof fmtTime;
638
654
  };
639
655
  type __VLS_Slots$1 = {} & {
640
656
  default?: (props: typeof __VLS_1$1) => any;
641
657
  };
642
- declare const __VLS_base$1: import("vue").DefineComponent<__VLS_Props$1, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props$1> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
658
+ declare const __VLS_base$1: import("vue").DefineComponent<ResolvedPlayerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<ResolvedPlayerProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
643
659
  declare const __VLS_export$1: __VLS_WithSlots$1<typeof __VLS_base$1, __VLS_Slots$1>;
644
- declare const _default$15: typeof __VLS_export$1;
660
+ declare const _default$11: typeof __VLS_export$1;
645
661
  type __VLS_WithSlots$1<T, S> = T & {
646
662
  new (): {
647
663
  $slots: S;
648
664
  };
649
665
  };
650
666
  //#endregion
651
- //#region src/utils/tech.d.ts
652
- declare function fmtTime(s: number, round?: boolean): string;
653
- //#endregion
654
- //#region src/components/controls/TimeDisplay.vue.d.ts
655
- type __VLS_Props = {
656
- player?: PlayerHandle | null;
657
- for?: string;
667
+ //#region src/components/controls/Transcript.vue.d.ts
668
+ type __VLS_Props = ResolvedPlayerProps & {
669
+ cues?: TranscriptCue[] | string;
658
670
  };
659
671
  declare var __VLS_1: {
660
- isLive: boolean;
661
- current: number;
662
- total: number;
672
+ cue: TranscriptCue;
673
+ index: number;
674
+ isActive: boolean;
663
675
  formatTime: typeof fmtTime;
664
676
  };
665
677
  type __VLS_Slots = {} & {
@@ -667,7 +679,7 @@ type __VLS_Slots = {} & {
667
679
  };
668
680
  declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
669
681
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
670
- declare const _default$10: typeof __VLS_export;
682
+ declare const _default$12: typeof __VLS_export;
671
683
  type __VLS_WithSlots<T, S> = T & {
672
684
  new (): {
673
685
  $slots: S;
@@ -675,7 +687,11 @@ type __VLS_WithSlots<T, S> = T & {
675
687
  };
676
688
  //#endregion
677
689
  //#region src/adapters/index.d.ts
690
+ declare function registerMatcher(matcher: Matcher): void;
678
691
  declare function getPlatform(url: string): string;
692
+ declare function registerEmbedAdapter(key: string, factory: EmbedAdapterFactory): void;
693
+ declare function registerSourceResolver(key: string, resolver: SourceResolver): void;
694
+ declare function registerPlatform(config: PlatformConfig): void;
679
695
  //#endregion
680
696
  //#region src/composables/controls/useScrubber.d.ts
681
697
  interface UseScrubberReturn {
@@ -711,4 +727,4 @@ declare function usePlaybackRate(player: PlayerHandle): UsePlaybackRateReturn;
711
727
  //#region src/index.d.ts
712
728
  declare const VideoPlayerPlugin: Plugin;
713
729
  //#endregion
714
- export { ActionKey, _default as Buffering, BuiltinAction, CaptionTrackDef, type CaptionTrackInfo, _default$1 as CaptionsButton, CompactKey, CustomAction, type ForwardedPlayer, _default$2 as FullscreenButton, HeaderBiddingAdUnit, HeaderBiddingConfig, HudContext, HudKey, _default$3 as LoopButton, type MethodKey, _default$4 as MuteButton, _default$5 as PipButton, _default$6 as PlayButton, _default$7 as PlaybackRateButton, PlayerAction, PlayerContext, PlayerHandle, PlayerKey, PlayerProps, PlaylistContext, PlaylistKey, _default$8 as QualityButton, type QualityLevelInfo, _default$9 as Scrubber, StateChangeEvent, StateChangeType, _default$10 as TimeDisplay, type UseForwardedPlayerReturn, VideoEntry, _default$11 as VideoItem, _default$12 as VideoPlaceholder, _default$13 as VideoPlayer, VideoPlayerPlugin, VideoPlayerPlugin as default, VideoSelectDetail, _default$14 as VideoStage, VideoStateDetail, VideoToggleDetail, _default$15 as VolumeSlider, getPlatform, injectStrict, useCaptions, useForwardedPlayer, usePlaybackRate, useQuality, useScrubber };
730
+ export { _default as Buffering, BuiltinAction, CaptionTrackDef, type CaptionTrackInfo, _default$1 as CaptionsButton, CustomAction, type EmbedAdapterFactory, type EmbedAdapterOptions, type ForwardedPlayer, _default$2 as FullscreenButton, HeaderBiddingAdUnit, HeaderBiddingConfig, _default$3 as HideMarker, type HudContext, _default$4 as LoopButton, type Matcher, type MediaErrorLike, type MethodKey, _default$5 as MuteButton, PinCorner, _default$6 as PipButton, type PlatformConfig, _default$7 as PlayButton, type PlaybackAdapter, _default$8 as PlaybackRateButton, PlayerAction, type PlayerContext, PlayerHandle, PlayerProps, type PlaylistContext, _default$9 as QualityButton, type QualityLevelInfo, type ResolvedSource, _default$10 as Scrubber, type SourceResolver, StateChangeEvent, StateChangeType, _default$11 as TimeDisplay, _default$12 as Transcript, TranscriptCue, type UseForwardedPlayerReturn, VideoEntry, _default$13 as VideoItem, _default$14 as VideoPlaceholder, _default$15 as VideoPlayer, VideoPlayerPlugin, VideoPlayerPlugin as default, VideoSelectDetail, _default$16 as VideoStage, VideoStateDetail, VideoToggleDetail, _default$17 as VolumeSlider, getPlatform, registerEmbedAdapter, registerMatcher, registerPlatform, registerSourceResolver, useCaptions, useForwardedPlayer, usePlaybackRate, useQuality, useScrubber };