import { Types } from "../../state"; import { CommandParams } from "../../state/events"; import { LitElement } from "lit"; import type Hls from "hls.js"; import { StorageProvider } from "../../helpers/storage"; import { MuxParams, DRMOptions } from "../../types"; import "../buttons/Play"; /** * @slot - Video-container main content * */ export declare class VideoContainer extends LitElement { static styles: import("lit").CSSResult; command: (command: "play" | "pause" | "seek" | "mute" | "unmute" | "setPlaybackRate" | "toggleFullscreen" | "togglePlay" | "toggleMuted" | "setVolume" | "increaseVolume" | "decreaseVolume" | "forward" | "backward" | "enableTextTrack" | "enableAudioTrack" | "setQualityLevel" | "initCustomHLS" | "init" | "requestAirplay" | "castNotSupported" | "requestCast" | "togglePip" | "live" | "error" | Types.Command, params?: CommandParams, meta?: import("../../state/events").CommandMeta) => boolean; private subtitles; private sources; private audios; hls: Hls; initTime: number; videos: HTMLVideoElement[]; poster: string; title: string; played: boolean; canPlay: boolean; muxData: MuxParams; castActivated: string; isSourceSupported: false; live: boolean; drmOptions?: DRMOptions; /** * A unique identifier used for storing and retrieving user preferences related to video playback. * These preferences include volume level, selected quality level, active text track, playback rate, and mute status. * When provided, these preferences are stored in the browser's local storage to maintain user settings across sessions. */ storageKey: string; _storageProvider: StorageProvider; connectedCallback(): void; play(): Promise; pause(): void; togglePlay(): void | Promise; seek({ time }: { time: number; }): void; forward(): void; backward(): void; mute(): void; toggleMuted(): void; unmute(): void; setVolume({ volume }: { volume: number; }): void; increaseVolume(): void; decreaseVolume(): void; enableLiveMode(): void; enableTextTrack({ trackId }: { trackId: string; }): void; enableAudioTrack({ trackId }: { trackId: string; }): void; setPlaybackRate({ playbackRate }: { playbackRate: number; }): void; requestAirplay(): void; setHLSQualityLevel({ level }: { level: number; }): void; togglePip(): void; initNative(): void; initHls(): Promise; handleVideoEvent(e: Event & { target: HTMLVideoElement; }): void; handleClick(): void; _syncStateWithStorage(params: CommandParams, _: any, command: Types.Command): void; setup(): void; _boundingRect: DOMRect; get boundingRect(): DOMRect; _videoRect: DOMRect; handleDblClick(e: PointerEvent): void; render(): import("lit").TemplateResult<1>; }