import BaseElement from './BaseElement'; import type { PostSizes } from '../types'; /** * @description * Required props: 'mediaUrl', 'sizes' */ export default class Video extends BaseElement { label: string; mediaUrl?: string; sizes?: PostSizes; autoplay: boolean; aspectRatio: number; lazy: boolean; renderPlaceholder?: boolean; _isPlaying: boolean; _isAttemptingToPlay: boolean; _isMuted: boolean; _isLoaded: boolean; _shouldPreload: boolean; _videoEl?: HTMLVideoElement; _imageEl?: HTMLImageElement; constructor(); /** * Add isPlaying property */ get isPlaying(): boolean; get _isVideoElPlaying(): boolean; /** * Reflect props from videoEl */ get paused(): boolean; get muted(): boolean; get isLoaded(): boolean; render(): void; /** * Handle loop */ _handleLoop(): Promise; _loadMedia(): void; _handleIntersection(entry: IntersectionObserverEntry): void; _handleVideoLoad(): void; _handleVideoError(): void; /** * Handle play */ _handlePlay(): void; /** * Handle pause */ _handlePause(): void; play(): void; pause(): void; /** * Mute */ mute(): void; /** * Unmute */ unmute(): void; _handlePageVisibility(): void; /** * Preload */ preload(): void; static register(name?: string): string; } declare global { interface HTMLElementTagNameMap { 'behold-video': Video; } } //# sourceMappingURL=Video.d.ts.map