import type { ReactElement, ReactNode } from 'react'; import { type MetaItem } from '../../client'; export type LightboxItem = { thumbnail: ReactNode; preview?: ReactNode; title?: string; downloadSrc?: string; mimeType?: string; width?: number; height?: number; metaAddition?: MetaItem[]; }; export type LightboxContextMenuItem = { label: ReactNode; onClick: () => void; active?: boolean; selected?: boolean; disabled?: boolean; variant?: 'default' | 'danger'; }; export interface LightboxProps { items: LightboxItem[]; title?: string; initialIndex?: number; thumbnailHeight?: number; showDownload?: boolean; getDownloadFilename?: (item: LightboxItem, index: number) => string; buttonAddition?: ReactNode; trigger?: (open: (index?: number) => void) => ReactNode; getContextMenuItems?: (args: { item: LightboxItem; index: number; open: () => void; }) => LightboxContextMenuItem[]; } export declare function Lightbox({ items, title, initialIndex, thumbnailHeight, showDownload, getDownloadFilename, buttonAddition, trigger, getContextMenuItems, }: LightboxProps): ReactElement | null;