import * as react_jsx_runtime from 'react/jsx-runtime'; import * as class_variance_authority_types from 'class-variance-authority/types'; import { VariantProps } from 'class-variance-authority'; import * as React from 'react'; declare const galleryVariants: (props?: ({ columns?: 2 | "auto" | 5 | 3 | 4 | null | undefined; } & class_variance_authority_types.ClassProp) | undefined) => string; declare const imageVariants: (props?: ({ aspect?: "auto" | "square" | "video" | null | undefined; } & class_variance_authority_types.ClassProp) | undefined) => string; interface GalleryImage { id: string; src: string; alt?: string; width?: number; height?: number; size?: number; filename?: string; } interface ImageGalleryProps extends Omit, "onSelect">, VariantProps, VariantProps { /** * Array of images to display */ images: GalleryImage[]; /** * Whether to enable lightbox preview * @default true */ lightbox?: boolean; /** * Whether to allow selecting images * @default false */ selectable?: boolean; /** * Currently selected image IDs */ selected?: string[]; /** * Called when selection changes */ onSelect?: (selected: string[]) => void; /** * Called when an image is deleted */ onDelete?: (image: GalleryImage) => void; /** * Called when download is clicked */ onDownload?: (image: GalleryImage) => void; /** * Whether images can be deleted * @default false */ deletable?: boolean; /** * Whether images can be downloaded * @default false */ downloadable?: boolean; /** * Empty state content */ emptyState?: React.ReactNode; } declare function ImageGallery({ images, lightbox, selectable, selected, onSelect, onDelete, onDownload, deletable, downloadable, columns, aspect, emptyState, className, ...props }: ImageGalleryProps): react_jsx_runtime.JSX.Element; declare namespace ImageGallery { var displayName: string; } export { type GalleryImage, ImageGallery, type ImageGalleryProps };