index.d.ts 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import { VideoJsPlayer } from 'video.js';
  2. declare module 'video.js' {
  3. interface VideoJsPlayer {
  4. hotkeys(options?: VideoJsHotkeysOptions): void;
  5. }
  6. }
  7. export interface VideoJsHotkeysOptions {
  8. volumeStep?: number;
  9. seekStep?: number;
  10. enableMute?: boolean;
  11. enableVolumeScroll?: boolean;
  12. enableHoverScroll?: boolean;
  13. enableFullscreen?: boolean;
  14. enableNumbers?: boolean;
  15. enableModifiersForNumbers?: boolean;
  16. alwaysCaptureHotkeys?: boolean;
  17. enableInactiveFocus?: boolean;
  18. skipInitialFocus?: boolean;
  19. captureDocumentHotkeys?: boolean;
  20. documentHotkeysFocusElementFilter?: (element: HTMLElement) => boolean;
  21. enableJogStyle?: boolean;
  22. playPauseKey?: (event: KeyboardEvent, player: VideoJsPlayer) => boolean;
  23. rewindKey?: (event: KeyboardEvent, player: VideoJsPlayer) => boolean;
  24. forwardKey?: (event: KeyboardEvent, player: VideoJsPlayer) => boolean;
  25. volumeUpKey?: (event: KeyboardEvent, player: VideoJsPlayer) => boolean;
  26. volumeDownKey?: (event: KeyboardEvent, player: VideoJsPlayer) => boolean;
  27. muteKey?: (event: KeyboardEvent, player: VideoJsPlayer) => boolean;
  28. fullscreenKey?: (event: KeyboardEvent, player: VideoJsPlayer) => boolean;
  29. customKeys?: VideoJsCustomHotkeyOptions;
  30. }
  31. export interface VideoJsCustomHotkeyOptions {
  32. [key: string]: VideoJsCustomHotkey;
  33. }
  34. export interface VideoJsCustomHotkey {
  35. key: (event: KeyboardEvent, player: VideoJsPlayer) => boolean;
  36. handler: (player: VideoJsPlayer, options: VideoJsHotkeysOptions, event: KeyboardEvent) => void;
  37. }