import { type ButtonHTMLAttributes, type CSSProperties, type ImgHTMLAttributes } from 'react'; import { type CssLength } from '../../../utils/css'; export type MoviePosterPhoto = { src: string; alt?: string; srcSet?: ImgHTMLAttributes['srcSet']; sizes?: ImgHTMLAttributes['sizes']; objectPosition?: CSSProperties['objectPosition']; loading?: ImgHTMLAttributes['loading']; decoding?: ImgHTMLAttributes['decoding']; fetchPriority?: ImgHTMLAttributes['fetchPriority']; }; export type MoviePosterFont = { name: string; family: string; }; export type MoviePosterSnapshot = { photo: MoviePosterPhoto; title: string; tagline: string; font: MoviePosterFont; accentColor: string; titleRow: number; subtitleRow: number; starringRow: number; starring: string; }; export type MoviePosterProps = Omit, 'children' | 'className' | 'color' | 'style' | 'type'> & { className?: string; photoClassName?: string; textClassName?: string; billingClassName?: string; style?: CSSProperties; photos?: readonly MoviePosterPhoto[]; titles?: readonly string[]; taglineStarts?: readonly string[]; taglineEnds?: readonly string[]; starringNames?: readonly string[]; fonts?: readonly MoviePosterFont[]; accentColors?: readonly string[]; width?: CssLength; maxWidth?: CssLength; frameColor?: string; backgroundColor?: string; textColor?: string; imageFilter?: CSSProperties['filter']; rows?: number; cols?: number; random?: () => number; showBilling?: boolean; generateLabel?: string; onPosterChange?: (poster: MoviePosterSnapshot) => void; }; export declare const MoviePoster: ({ className, photoClassName, textClassName, billingClassName, style, photos, titles, taglineStarts, taglineEnds, starringNames, fonts, accentColors, width, maxWidth, frameColor, backgroundColor, textColor, imageFilter, rows, cols, random, showBilling, generateLabel, onPosterChange, onClick, "aria-label": ariaLabel, ...props }: MoviePosterProps) => import("react/jsx-runtime").JSX.Element;