UNPKG

vidstack

Version:

Build awesome media experiences on the web.

46 lines (45 loc) 1.56 kB
import { Component, type HTMLCustomElement } from 'maverick.js/element'; import { CaptionsRenderer } from 'media-captions'; import { type MediaContext } from '../../core/api/context'; import { CaptionsTextRenderer } from './captions-renderer'; declare global { interface MaverickElements { 'media-captions': MediaCaptionsElement; } } /** * Renders and displays captions/subtitles. This will be an overlay for video and a simple * captions box for audio. * * @docs {@link https://www.vidstack.io/docs/player/components/display/captions} * @example * ```html * <media-captions></media-captions> * ``` */ export declare class Captions extends Component<CaptionsAPI> { static el: import("maverick.js/element").CustomElementDefinition<CaptionsAPI>; _media: MediaContext; _renderer: CaptionsRenderer; _textRenderer: CaptionsTextRenderer; protected onAttach(): void; protected onConnect(el: HTMLElement): void; protected onDisconnect(): void; protected _isHidden(): boolean; protected _watchViewType(): () => void; protected _setupAudioView(): () => void; protected _onTrackChange(): void; protected _onCueChange(): void; protected _onUpdateTimedNodes(): void; protected _setupVideoView(): () => void; protected _watchTextDirection(): void; protected _watchMediaTime(): void; } export interface CaptionsAPI { props: CaptionsProps; } export interface CaptionsProps { textDir: 'ltr' | 'rtl'; } export interface MediaCaptionsElement extends HTMLCustomElement<Captions> { }