import { TimelineConfig } from './timeline'; import { Observable } from 'rxjs'; import { AudioApi, MarkerListApi, OmakasePlayerApi, RouterVisualizationApi, SubtitlesApi, TimelineApi, VideoApi } from './api'; import { Destroyable } from './types'; import { Video, VideoLoadOptions } from './video'; import { ConfigWithOptionalStyle } from './layout'; import { MarkerListConfig } from './marker-list/marker-list'; import { VideoControllerConfig } from './video/video-controller'; import { OmpHlsConfig } from './video/video-hls-loader'; import { RouterVisualizationConfig } from './router-visualization/router-visualization'; import { PlayerChroming } from './player-chroming/model'; import { AuthenticationData } from './common/authentication'; import { ConfigAdapter } from './common/config-adapter'; import { ChromingApi } from './api/chroming-api'; export interface OmakasePlayerConfig { playerHTMLElementId?: string; crossorigin?: 'anonymous' | 'use-credentials'; /** * HLS configuration */ hlsConfig?: Partial; vttDownsamplePeriod?: number; /** * Is this OmakasePlayer instance a detached player instance. Property is set on detached player. */ detachedPlayer?: boolean; /** * Is PIP (picture-in-picture) disabled */ disablePictureInPicture?: boolean; /** * Function that will return URL where detached player resides. Property is set on non-detached (local) player side. */ detachedPlayerUrlFn?: (video: Video, videoLoadOptions?: VideoLoadOptions) => string; /** * Authentication data for HLS.js, VTT and thumbnail image requests */ authentication?: AuthenticationData; /** * Custom video player click handler */ playerClickHandler?: () => void; audioPlayMode?: VideoControllerConfig['audioPlayMode']; /** * Player chroming configuration */ playerChroming?: PlayerChroming; } export declare class OmakasePlayer implements OmakasePlayerApi, Destroyable { static instance: OmakasePlayerApi; protected readonly _configAdapter: ConfigAdapter; private readonly _config; private readonly _videoDomController; private readonly _alertsController; private _videoController; private _audioController; private _subtitlesController; private _chromingController; private _timeline?; private _destroyed$; constructor(config?: Partial); setAuthentication(authentication: AuthenticationData): void; loadVideo(videoSourceUrl: string, options?: VideoLoadOptions): Observable