import { type CSSProperties, type HTMLAttributes, type ImgHTMLAttributes, type Ref } from 'react'; import { type CssLength, type CssTime } from '../../../utils/css'; export type CubeGallerySide = 'left' | 'right'; export type CubeGalleryItem = string | { name: string; src: string; alt?: string; id?: string | number; objectPosition?: CSSProperties['objectPosition']; loading?: ImgHTMLAttributes['loading']; fetchPriority?: ImgHTMLAttributes['fetchPriority']; }; export type NormalizedCubeGalleryItem = { id: string; name: string; src: string; alt: string; objectPosition?: CSSProperties['objectPosition']; loading?: ImgHTMLAttributes['loading']; fetchPriority?: ImgHTMLAttributes['fetchPriority']; }; export type CubeGalleryProps = Omit, 'children' | 'onSelect'> & { leftItems?: readonly CubeGalleryItem[]; rightItems?: readonly CubeGalleryItem[]; ariaLabel?: string; leftMenuAriaLabel?: string; rightMenuAriaLabel?: string; width?: CssLength; mobileWidth?: CssLength; depth?: CssLength; mobileDepth?: CssLength; aspectRatio?: CSSProperties['aspectRatio']; compactAspectRatio?: CSSProperties['aspectRatio']; menuGap?: CssLength; transitionDuration?: CssTime; background?: CSSProperties['background']; color?: CSSProperties['color']; disabled?: boolean; respectReducedMotion?: boolean; onSelect?: (item: NormalizedCubeGalleryItem, side: CubeGallerySide) => void; ref?: Ref; }; export declare const CubeGallery: ({ ariaLabel, aspectRatio, background, className, color, compactAspectRatio, depth, disabled, leftItems, leftMenuAriaLabel, menuGap, mobileDepth, mobileWidth, onSelect, ref, respectReducedMotion, rightItems, rightMenuAriaLabel, style, transitionDuration, width, ...props }: CubeGalleryProps) => import("react/jsx-runtime").JSX.Element;