UNPKG

@100mslive/hms-video-store

Version:

@100mslive Core SDK which abstracts the complexities of webRTC while providing a reactive store for data management with a unidirectional data flow

39 lines (37 loc) 1.15 kB
import { HMSPlaylistItem, HMSPlaylistSelection } from './playlist'; import { HMSStore } from './schema'; /** * Helpful selectors for audio and video playlist */ export interface HMSPlaylistSelector { /** * returns the playlist items list as set initially */ list: <T>(store: HMSStore) => HMSPlaylistItem<T>[]; /** * This returns playlist selection with `{ id, hasNext, hasPrev }` * @returns {HMSPlaylistSelection} */ selection: (store: HMSStore) => HMSPlaylistSelection; /** * This returns playlist item for corresponding Id in selection * @returns {HMSPlaylistItem} */ selectedItem: <T>(store: HMSStore) => HMSPlaylistItem<T>; /** * returns the current progress percentage, a number between 0-100 */ progress: (store: HMSStore) => number; /** * returns the current volume the playlist is playing at, a number between 0-100 */ volume: (store: HMSStore) => number; /** * returns the current time of the playlist in seconds */ currentTime: (store: HMSStore) => number; /** * returns the playback rate, a number between 0.25-2.0. */ playbackRate: (store: HMSStore) => number; }