import { type CSSProperties, type ImgHTMLAttributes, type ReactNode } from 'react'; import { type CssLength } from '../../../utils/css'; export type UrbanTvLayer = 'primary' | 'glow' | 'reflect'; export type UrbanTvVideoKind = 'iframe' | 'video'; export type UrbanTvImage = string | { src: string; alt?: string; srcSet?: string; sizes?: string; objectPosition?: string; loading?: ImgHTMLAttributes['loading']; fetchPriority?: ImgHTMLAttributes['fetchPriority']; }; export type UrbanTvPageProps = { videoSrc?: string; videoKind?: UrbanTvVideoKind; videoTitle?: string; videoPoster?: string; videoAutoPlay?: boolean; videoMuted?: boolean; videoLoop?: boolean; videoControls?: boolean; videoPlaysInline?: boolean; iframeAllow?: string; iframeAllowFullScreen?: boolean; renderMedia?: (layer: UrbanTvLayer) => ReactNode; words?: readonly string[]; backgroundImage?: UrbanTvImage | null; className?: string; contentClassName?: string; style?: CSSProperties; minHeight?: CssLength; borderRadius?: CssLength; ariaLabel?: string; wordIntervalMs?: number; wordFadeMs?: number; backgroundFadeDelayMs?: number; backgroundFadeDuration?: string; reflectsFadeDelayMs?: number; reflectsFadeDuration?: string; flattenDelayMs?: number; flattenDuration?: string; }; export declare const UrbanTvPage: ({ videoSrc, videoKind, videoTitle, videoPoster, videoAutoPlay, videoMuted, videoLoop, videoControls, videoPlaysInline, iframeAllow, iframeAllowFullScreen, renderMedia, words, backgroundImage, className, contentClassName, style, minHeight, borderRadius, ariaLabel, wordIntervalMs, wordFadeMs, backgroundFadeDelayMs, backgroundFadeDuration, reflectsFadeDelayMs, reflectsFadeDuration, flattenDelayMs, flattenDuration, }: UrbanTvPageProps) => import("react/jsx-runtime").JSX.Element;