import { PeerTubePlugin } from './peertube-plugin'
import { PlaylistPlugin } from './playlist/playlist-plugin'
import { EndCardOptions } from './upnext/end-card'
+import { StatsCardOptions } from './stats/stats-card'
import { WebTorrentPlugin } from './webtorrent/webtorrent-plugin'
+import { StatsForNerdsPlugin } from './stats/stats-plugin'
declare module 'video.js' {
bezels (): void
+ stats (options?: StatsCardOptions): StatsForNerdsPlugin
+
qualityLevels (): QualityLevels
textTracks (): TextTrackList & {
videoCaptions: VideoJSCaption[]
stopTime: number | string
+
+ isLive: boolean
+
+ videoUUID: string
}
type PlaylistPluginOptions = {
onItemClicked: (element: VideoPlaylistElement) => void
}
+type NextPreviousVideoButtonOptions = {
+ type: 'next' | 'previous'
+ handler: Function
+ isDisabled: () => boolean
+}
+
type WebtorrentPluginOptions = {
playerElement: HTMLVideoElement
}
type PlayerNetworkInfo = {
+ source: 'webtorrent' | 'p2p-media-loader'
+
http: {
downloadSpeed: number
uploadSpeed: number
uploaded: number
numPeers: number
}
+
+ // In bytes
+ bandwidthEstimate: number
}
type PlaylistItemOptions = {
export {
PlayerNetworkInfo,
PlaylistItemOptions,
+ NextPreviousVideoButtonOptions,
ResolutionUpdateData,
AutoResolutionUpdateData,
PlaylistPluginOptions,