import { Playback } from '../../../../types/Playback'; import { InterfaceOptions } from '../../../InterfaceOptions'; import { EnrichedPlyr } from '../../../../types/plyr'; import { PlaybackSegment } from '../../../MediaPlayer'; import { AddonInterface } from '../Addons'; import './HoverPreview.scss'; export interface HoverPreviewOptions { /** * Number of frames to retrieve for distribution over the length * of the video. * * Minimum: 4 * Maximum: 15 */ frameCount: number; /** * Number of ms each thumbnail is displayed for * * Minimum: 200 * Maximum: 1000 */ delayMilliseconds: number; } export declare const defaultHoverPreviewOptions: HoverPreviewOptions; export declare class HoverPreview implements AddonInterface { private plyr; private playback; constructor(plyr: EnrichedPlyr, playback: Playback, options: InterfaceOptions); static isEnabled: (_: any, playback: Playback | null, options: InterfaceOptions) => boolean; private options; private animationInterval; private animationIndex; private container; private image; private destroyed; private imageRatio; destroy: () => void; getOptions: () => HoverPreviewOptions; private applyOptions; private createContainer; private addListeners; private handleMouseover; private handleMouseout; private animationTick; private setImageIndex; private calculateWidthOfPlayer; private getPlyrContainer; private hasBeenDestroyed; updateSegment: (_: PlaybackSegment) => void; }