import type { LivestreamState } from '@dytesdk/web-core'; import { EventEmitter } from '../../stencil-public-runtime'; import { Size, DyteI18n, IconPack } from '../../exports'; import { Meeting } from '../../types/dyte-client'; import { PlayerEventType, PlayerState } from '../../utils/livestream'; export declare class DyteLivestreamPlayer { private videoRef; private videoContainerRef; el: HTMLDyteLivestreamPlayerElement; private hls; private statsIntervalTimer; /** Meeting object */ meeting: Meeting; /** Size */ size: Size; /** Language */ t: DyteI18n; /** Icon pack */ iconPack: IconPack; playbackUrl: string; isSupported: boolean; playerState: PlayerState | PlayerEventType; livestreamState: LivestreamState; playerError: any; livestreamId: string; audioPlaybackError: boolean; qualityLevels: Array<{ level: number; resolution: string; }>; selectedQuality: number; currentTime: number; duration: number; hideControls: boolean; private hideControlsTimeout; /** * Emit API error events */ dyteAPIError: EventEmitter<{ trace: string; message: string; }>; private livestreamUpdateListener; private updateProgress; private updateHlsStatsPeriodically; private fastForwardToLatest; private updateLivestreamId; private conditionallyStartLivestreamViewer; private togglePlay; private changeQuality; private cleanupPlayer; private onMouseMovePlayer; private getLoadingState; private getErrorState; private initialiseAndPlayStream; connectedCallback(): Promise; disconnectedCallback(): void; meetingChanged(meeting: any): void; render(): any; }