UNPKG

@aller/blink

Version:

A library for tracking user behaviour.

37 lines (36 loc) 1.28 kB
import { PlayerStateEvent, PlayerShownEvent, PlayerHiddenEvent, PlayerState } from '../reducers/player'; export interface GeneralVideoEvent { time: Date; videoId: string; playerId: string; muted: boolean; volume: number; position: number; sticky?: boolean; streamingMode?: string; channelId?: string; } export interface VideoPlayEvent extends GeneralVideoEvent { type: 'start'; reason: 'interaction' | 'autostart' | 'viewable'; } export interface VideoStopEvent extends GeneralVideoEvent { type: 'stop'; reason: 'pause' | 'complete' | 'exit' | 'viewable' | 'stickyClosed'; } export declare type VideoTimeEvent = VideoPlayEvent | VideoStopEvent; export declare type VideoEvent = PlayerStateEvent | VideoTimeEvent; export declare enum PLAYER_TIMER_STATES { RUNNING = "RUNNING", STOPPED = "STOPPED" } export declare enum PLAYER_VISIBILITY_STATES { VISIBLE = "VISIBLE", HIDDEN = "HIDDEN" } export interface VideoWatchEvent { watchTime: number; startEvent: VideoTimeEvent | PlayerShownEvent; stopEvent: VideoTimeEvent | PlayerHiddenEvent; } export declare function calculateVideoEventTime(times: VideoTimeEvent[], videoId: string, players: PlayerState, playerId: string, time?: Date): VideoWatchEvent[];