import { type ComponentPropsWithoutRef, type CSSProperties, type ImgHTMLAttributes, type ReactNode, type Ref } from 'react'; import { type CssLength } from '../../../utils/css'; export type PhotoFolderItem = string | { src: string; alt?: string; id?: string | number; label?: string; name?: string; objectPosition?: CSSProperties['objectPosition']; loading?: ImgHTMLAttributes['loading']; decoding?: ImgHTMLAttributes['decoding']; fetchPriority?: ImgHTMLAttributes['fetchPriority']; }; export type NormalizedPhotoFolderItem = { src: string; alt: string; id: string; label: string; objectPosition?: CSSProperties['objectPosition']; loading?: ImgHTMLAttributes['loading']; decoding?: ImgHTMLAttributes['decoding']; fetchPriority?: ImgHTMLAttributes['fetchPriority']; }; type PhotoFolderStyle = CSSProperties & Record<`--photo-folder-${string}`, string | number | undefined>; export type PhotoFolderProps = Omit, 'children' | 'style'> & { items?: readonly PhotoFolderItem[]; folderLabel?: ReactNode; ariaLabel?: string; collectLabel?: string; expandLabel?: string; collected?: boolean; defaultCollected?: boolean; onCollectedChange?: (collected: boolean) => void; disabled?: boolean; respectReducedMotion?: boolean; gridPhotoWidth?: CssLength; stackPhotoWidth?: CssLength; folderWidth?: CssLength; gap?: CssLength; background?: CSSProperties['background']; paperColor?: CSSProperties['backgroundColor']; folderColor?: CSSProperties['backgroundColor']; folderFrontColor?: CSSProperties['backgroundColor']; style?: PhotoFolderStyle; ref?: Ref; }; declare const PhotoFolder: ({ items, folderLabel, ariaLabel, collectLabel, expandLabel, collected: controlledCollected, defaultCollected, onCollectedChange, disabled, respectReducedMotion, gridPhotoWidth, stackPhotoWidth, folderWidth, gap, background, paperColor, folderColor, folderFrontColor, className, style, ref, ...sectionProps }: PhotoFolderProps) => import("react/jsx-runtime").JSX.Element; export { PhotoFolder };