]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/assets/player/peertube-videojs-typings.ts
Add user history and resume videos
[github/Chocobozzz/PeerTube.git] / client / src / assets / player / peertube-videojs-typings.ts
CommitLineData
c6352f2c
C
1import * as videojs from 'video.js'
2import { VideoFile } from '../../../../shared/models/videos/video.model'
3import { PeerTubePlugin } from './peertube-videojs-plugin'
4
6cca7360 5declare namespace videojs {
c6352f2c
C
6 interface Player {
7 peertube (): PeerTubePlugin
8 }
9}
10
11interface VideoJSComponentInterface {
12 _player: videojs.Player
13
14 new (player: videojs.Player, options?: any)
15
16 registerComponent (name: string, obj: any)
17}
18
16f7022b
C
19type VideoJSCaption = {
20 label: string
21 language: string
22 src: string
23}
24
6e46de09
C
25type UserWatching = {
26 url: string,
27 authorizationHeader: string
28}
29
c6352f2c
C
30type PeertubePluginOptions = {
31 videoFiles: VideoFile[]
32 playerElement: HTMLVideoElement
33 videoViewUrl: string
34 videoDuration: number
1f6824c9 35 startTime: number | string
16f7022b
C
36 autoplay: boolean,
37 videoCaptions: VideoJSCaption[]
6e46de09
C
38
39 userWatching?: UserWatching
c6352f2c
C
40}
41
42// videojs typings don't have some method we need
43const videojsUntyped = videojs as any
44
45export {
46 VideoJSComponentInterface,
47 PeertubePluginOptions,
16f7022b 48 videojsUntyped,
6e46de09
C
49 VideoJSCaption,
50 UserWatching
c6352f2c 51}