Files
DefinitelyTyped/types/video.js/index.d.ts
Netanel Draiman e7e644ccbc [video.js] Added missing methods to Player interface
Added the following missing methods to video.js's Player interface:

```
controls(bool?: boolean): boolean;
        muted(muted?: boolean): boolean;
        preload(value?: boolean): string;
        autoplay(value?: boolean): string;
        loop(value?: boolean): string;
```
2018-02-26 10:06:07 +02:00

81 lines
2.5 KiB
TypeScript

// Type definitions for Video.js 6.2
// Project: https://github.com/videojs/video.js
// Definitions by: Vincent Bortone <https://github.com/vbortone>
// Simon Clériot <https://github.com/scleriot>
// Sean Bennett <https://github.com/SWBennett06>
// Christoph Wagner <https://github.com/IgelCampus>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// The Video.js API allows you to interact with the video through
// Javascript, whether the browser is playing the video through HTML5
// video, Flash, or any other supported playback technologies.
declare function videojs(id: any, options?: videojs.PlayerOptions, ready?: () => void): videojs.Player;
export = videojs;
export as namespace videojs;
declare namespace videojs {
interface PlayerOptions {
techOrder?: string[];
sourceOrder?: boolean;
html5?: any;
width?: number;
height?: number;
defaultVolume?: number;
children?: string[];
loop?: boolean;
muted?: boolean;
controls?: boolean;
src?: string;
autoplay?: boolean;
preload?: string;
sources?: Source[];
aspectRatio?: string;
fluid?: boolean;
language?: string;
notSupportedMessage?: string;
plugins?: any;
}
interface Source {
type: string;
src: string;
}
interface Player {
play(): Player;
pause(): Player;
paused(): boolean;
src(newSource: string | Source | Source[]): Player;
currentTime(seconds: number): Player;
currentTime(): number;
duration(): number;
buffered(): TimeRanges;
bufferedPercent(): number;
volume(percentAsDecimal: number): TimeRanges;
volume(): number;
width(): number;
width(pixels: number): Player;
height(): number;
height(pixels: number): Player;
size(width: number, height: number): Player;
requestFullScreen(): Player;
cancelFullScreen(): Player;
requestFullscreen(): Player;
exitFullscreen(): Player;
ready(callback: (this: Player) => void): Player;
on(eventName: string, callback: (eventObject: Event) => void): void;
off(eventName?: string, callback?: (eventObject: Event) => void): void;
dispose(): void;
addRemoteTextTrack(options: {}): HTMLTrackElement;
removeRemoteTextTrack(track: HTMLTrackElement): void;
poster(val?: string): string | Player;
playbackRate(rate?: number): number;
controls(bool?: boolean): boolean;
muted(muted?: boolean): boolean;
preload(value?: boolean): string;
autoplay(value?: boolean): string;
loop(value?: boolean): string;
}
}