videojs-hotkeys
Version:
Adds more hotkey support to video.js
42 lines (37 loc) • 1.81 kB
TypeScript
import VideoJsPlayer from "video.js/dist/types/player";
declare module "video.js/dist/types/player" {
export default interface VideoJsPlayer {
hotkeys(options?: VideoJsHotkeysOptions): void;
}
}
export interface VideoJsHotkeysOptions {
volumeStep?: number | undefined;
seekStep?: number | undefined;
enableMute?: boolean | undefined;
enableVolumeScroll?: boolean | undefined;
enableHoverScroll?: boolean | undefined;
enableFullscreen?: boolean | undefined;
enableNumbers?: boolean | undefined;
enableModifiersForNumbers?: boolean | undefined;
alwaysCaptureHotkeys?: boolean | undefined;
enableInactiveFocus?: boolean | undefined;
skipInitialFocus?: boolean | undefined;
captureDocumentHotkeys?: boolean | undefined;
documentHotkeysFocusElementFilter?: ((element: HTMLElement) => boolean) | undefined;
enableJogStyle?: boolean | undefined;
playPauseKey?: ((event: KeyboardEvent, player: VideoJsPlayer) => boolean) | undefined;
rewindKey?: ((event: KeyboardEvent, player: VideoJsPlayer) => boolean) | undefined;
forwardKey?: ((event: KeyboardEvent, player: VideoJsPlayer) => boolean) | undefined;
volumeUpKey?: ((event: KeyboardEvent, player: VideoJsPlayer) => boolean) | undefined;
volumeDownKey?: ((event: KeyboardEvent, player: VideoJsPlayer) => boolean) | undefined;
muteKey?: ((event: KeyboardEvent, player: VideoJsPlayer) => boolean) | undefined;
fullscreenKey?: ((event: KeyboardEvent, player: VideoJsPlayer) => boolean) | undefined;
customKeys?: VideoJsCustomHotkeyOptions | undefined;
}
export interface VideoJsCustomHotkeyOptions {
[key: string]: VideoJsCustomHotkey;
}
export interface VideoJsCustomHotkey {
key: (event: KeyboardEvent, player: VideoJsPlayer) => boolean;
handler: (player: VideoJsPlayer, options: VideoJsHotkeysOptions, event: KeyboardEvent) => void;
}